feat: initial commit - Phase 1 & 2 core features

This commit is contained in:
hiderfong
2026-04-22 17:07:33 +08:00
commit 1773bda06b
25005 changed files with 6252106 additions and 0 deletions
+14
View File
@@ -0,0 +1,14 @@
import { SFCWithInstall } from "../../utils/vue/typescript.js";
import "../../utils/index.js";
import { SkeletonInstance, SkeletonProps, SkeletonPropsPublic, skeletonProps } from "./src/skeleton.js";
import { _default } from "./src/skeleton.vue.js";
import { SkeletonItemInstance, SkeletonItemProps, SkeletonItemPropsPublic, skeletonItemProps } from "./src/skeleton-item.js";
import { _default as _default$1 } from "./src/skeleton-item.vue.js";
//#region ../../packages/components/skeleton/index.d.ts
declare const ElSkeleton: SFCWithInstall<typeof _default> & {
SkeletonItem: typeof _default$1;
};
declare const ElSkeletonItem: SFCWithInstall<typeof _default$1>;
//#endregion
export { ElSkeleton, ElSkeleton as default, ElSkeletonItem, SkeletonInstance, SkeletonItemInstance, SkeletonItemProps, SkeletonItemPropsPublic, SkeletonProps, SkeletonPropsPublic, skeletonItemProps, skeletonProps };
+18
View File
@@ -0,0 +1,18 @@
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
const require_install = require('../../utils/vue/install.js');
const require_skeleton = require('./src/skeleton.js');
const require_skeleton_item = require('./src/skeleton-item.js');
const require_skeleton_item$1 = require('./src/skeleton-item2.js');
const require_skeleton$1 = require('./src/skeleton2.js');
//#region ../../packages/components/skeleton/index.ts
const ElSkeleton = require_install.withInstall(require_skeleton$1.default, { SkeletonItem: require_skeleton_item$1.default });
const ElSkeletonItem = require_install.withNoopInstall(require_skeleton_item$1.default);
//#endregion
exports.ElSkeleton = ElSkeleton;
exports.default = ElSkeleton;
exports.ElSkeletonItem = ElSkeletonItem;
exports.skeletonItemProps = require_skeleton_item.skeletonItemProps;
exports.skeletonProps = require_skeleton.skeletonProps;
//# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
{"version":3,"file":"index.js","names":["withInstall","Skeleton","withNoopInstall","SkeletonItem"],"sources":["../../../../../packages/components/skeleton/index.ts"],"sourcesContent":["import { withInstall, withNoopInstall } from '@element-plus/utils'\nimport Skeleton from './src/skeleton.vue'\nimport SkeletonItem from './src/skeleton-item.vue'\n\nimport type { SFCWithInstall } from '@element-plus/utils'\n\nexport const ElSkeleton: SFCWithInstall<typeof Skeleton> & {\n SkeletonItem: typeof SkeletonItem\n} = withInstall(Skeleton, {\n SkeletonItem,\n})\nexport const ElSkeletonItem: SFCWithInstall<typeof SkeletonItem> =\n withNoopInstall(SkeletonItem)\nexport default ElSkeleton\n\nexport * from './src/skeleton'\nexport * from './src/skeleton-item'\n"],"mappings":";;;;;;;;AAMA,MAAa,aAETA,4BAAYC,4BAAU,EACxB,+CACD,CAAC;AACF,MAAa,iBACXC,gCAAgBC,gCAAa"}
@@ -0,0 +1,25 @@
import { EpPropFinalized } from "../../../utils/vue/props/types.js";
import "../../../utils/index.js";
import { _default } from "./skeleton-item.vue.js";
import { ExtractPublicPropTypes } from "vue";
//#region ../../packages/components/skeleton/src/skeleton-item.d.ts
interface SkeletonItemProps {
/**
* @description the current rendering skeleton type
*/
variant?: 'circle' | 'rect' | 'h1' | 'h3' | 'text' | 'caption' | 'p' | 'image' | 'button';
}
/**
* @deprecated Removed after 3.0.0, Use `SkeletonItemProps` instead.
*/
declare const skeletonItemProps: {
readonly variant: EpPropFinalized<StringConstructor, "text" | "button" | "circle" | "caption" | "image" | "h1" | "h3" | "p" | "rect", unknown, "text", boolean>;
};
/**
* @deprecated Removed after 3.0.0, Use `SkeletonItemProps` instead.
*/
type SkeletonItemPropsPublic = ExtractPublicPropTypes<typeof skeletonItemProps>;
type SkeletonItemInstance = InstanceType<typeof _default> & unknown;
//#endregion
export { SkeletonItemInstance, SkeletonItemProps, SkeletonItemPropsPublic, skeletonItemProps };
@@ -0,0 +1,26 @@
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
const require_runtime = require('../../../utils/vue/props/runtime.js');
//#region ../../packages/components/skeleton/src/skeleton-item.ts
/**
* @deprecated Removed after 3.0.0, Use `SkeletonItemProps` instead.
*/
const skeletonItemProps = require_runtime.buildProps({ variant: {
type: String,
values: [
"circle",
"rect",
"h1",
"h3",
"text",
"caption",
"p",
"image",
"button"
],
default: "text"
} });
//#endregion
exports.skeletonItemProps = skeletonItemProps;
//# sourceMappingURL=skeleton-item.js.map
@@ -0,0 +1 @@
{"version":3,"file":"skeleton-item.js","names":["buildProps"],"sources":["../../../../../../packages/components/skeleton/src/skeleton-item.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\n\nimport type SkeletonItem from './skeleton-item.vue'\nimport type { ExtractPublicPropTypes } from 'vue'\n\nexport interface SkeletonItemProps {\n /**\n * @description the current rendering skeleton type\n */\n variant?:\n | 'circle'\n | 'rect'\n | 'h1'\n | 'h3'\n | 'text'\n | 'caption'\n | 'p'\n | 'image'\n | 'button'\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `SkeletonItemProps` instead.\n */\nexport const skeletonItemProps = buildProps({\n /**\n * @description the current rendering skeleton type\n */\n variant: {\n type: String,\n values: [\n 'circle',\n 'rect',\n 'h1',\n 'h3',\n 'text',\n 'caption',\n 'p',\n 'image',\n 'button',\n ],\n default: 'text',\n },\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `SkeletonItemProps` instead.\n */\nexport type SkeletonItemPropsPublic = ExtractPublicPropTypes<\n typeof skeletonItemProps\n>\n\nexport type SkeletonItemInstance = InstanceType<typeof SkeletonItem> & unknown\n"],"mappings":";;;;;;;AAwBA,MAAa,oBAAoBA,2BAAW,EAI1C,SAAS;CACP,MAAM;CACN,QAAQ;EACN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD;CACD,SAAS;CACV,EACF,CAAU"}
@@ -0,0 +1,10 @@
import { SkeletonItemProps } from "./skeleton-item.js";
import * as vue from "vue";
//#region ../../packages/components/skeleton/src/skeleton-item.vue.d.ts
declare const __VLS_export: vue.DefineComponent<SkeletonItemProps, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<SkeletonItemProps> & Readonly<{}>, {
variant: "circle" | "rect" | "h1" | "h3" | "text" | "caption" | "p" | "image" | "button";
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
declare const _default: typeof __VLS_export;
//#endregion
export { _default };
@@ -0,0 +1,22 @@
const require_runtime = require('../../../_virtual/_rolldown/runtime.js');
const require_index = require('../../../hooks/use-namespace/index.js');
const require_skeleton_item = require('./skeleton-item.js');
let _element_plus_icons_vue = require("@element-plus/icons-vue");
let vue = require("vue");
//#region ../../packages/components/skeleton/src/skeleton-item.vue?vue&type=script&setup=true&lang.ts
var skeleton_item_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ (0, vue.defineComponent)({
name: "ElSkeletonItem",
__name: "skeleton-item",
props: require_skeleton_item.skeletonItemProps,
setup(__props) {
const ns = require_index.useNamespace("skeleton");
return (_ctx, _cache) => {
return (0, vue.openBlock)(), (0, vue.createElementBlock)("div", { class: (0, vue.normalizeClass)([(0, vue.unref)(ns).e("item"), (0, vue.unref)(ns).e(__props.variant)]) }, [__props.variant === "image" ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_element_plus_icons_vue.PictureFilled), { key: 0 })) : (0, vue.createCommentVNode)("v-if", true)], 2);
};
}
});
//#endregion
exports.default = skeleton_item_vue_vue_type_script_setup_true_lang_default;
//# sourceMappingURL=skeleton-item.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
{"version":3,"file":"skeleton-item.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../../../../packages/components/skeleton/src/skeleton-item.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.e('item'), ns.e(variant)]\">\n <picture-filled v-if=\"variant === 'image'\" />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { useNamespace } from '@element-plus/hooks'\nimport { PictureFilled } from '@element-plus/icons-vue'\n\nimport type { SkeletonItemProps } from './skeleton-item.ts'\n\ndefineOptions({\n name: 'ElSkeletonItem',\n})\nwithDefaults(defineProps<SkeletonItemProps>(), {\n variant: 'text',\n})\nconst ns = useNamespace('skeleton')\n</script>\n"],"mappings":";;;;;;;;;;;;EAkBA,MAAM,KAAK,2BAAa,WAAU;;4DAf1B,OAAA,EAFA,+BAAK,gBAAG,GAAE,CAAC,EAAC,OAAA,iBAAU,GAAE,CAAC,EAAE,QAAA,QAAO,CAAA,CAAA,KAChB,QAAA,YAAO,qEAAgB,sCAAA,EAAA,EAAA,KAAA,GAAA,CAAA"}
@@ -0,0 +1,9 @@
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
const require_skeleton_item_vue_vue_type_script_setup_true_lang = require('./skeleton-item.vue_vue_type_script_setup_true_lang.js');
//#region ../../packages/components/skeleton/src/skeleton-item.vue
var skeleton_item_default = require_skeleton_item_vue_vue_type_script_setup_true_lang.default;
//#endregion
exports.default = skeleton_item_default;
//# sourceMappingURL=skeleton-item2.js.map
@@ -0,0 +1 @@
{"version":3,"file":"skeleton-item2.js","names":[],"sources":["../../../../../../packages/components/skeleton/src/skeleton-item.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.e('item'), ns.e(variant)]\">\n <picture-filled v-if=\"variant === 'image'\" />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { useNamespace } from '@element-plus/hooks'\nimport { PictureFilled } from '@element-plus/icons-vue'\n\nimport type { SkeletonItemProps } from './skeleton-item.ts'\n\ndefineOptions({\n name: 'ElSkeletonItem',\n})\nwithDefaults(defineProps<SkeletonItemProps>(), {\n variant: 'text',\n})\nconst ns = useNamespace('skeleton')\n</script>\n"],"mappings":""}
@@ -0,0 +1,61 @@
import { EpPropFinalized, EpPropMergeType } from "../../../utils/vue/props/types.js";
import "../../../utils/index.js";
import { ThrottleType } from "../../../hooks/use-throttle-render/index.js";
import "../../../hooks/index.js";
import { _default } from "./skeleton.vue.js";
import * as vue from "vue";
import { ExtractPublicPropTypes } from "vue";
//#region ../../packages/components/skeleton/src/skeleton.d.ts
interface SkeletonProps {
/**
* @description whether showing the animation
*/
animated?: boolean;
/**
* @description how many fake items to render to the DOM
*/
count?: number;
/**
* @description numbers of the row, only useful when no template slot were given
*/
rows?: number;
/**
* @description whether showing the real DOM
*/
loading?: boolean;
/**
* @description rendering delay in milliseconds
*/
throttle?: ThrottleType;
}
/**
* @deprecated Removed after 3.0.0, Use `SkeletonProps` instead.
*/
declare const skeletonProps: {
readonly animated: BooleanConstructor;
readonly count: EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
readonly rows: EpPropFinalized<NumberConstructor, unknown, unknown, 3, boolean>;
readonly loading: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
readonly throttle: {
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => number | {
leading?: number;
trailing?: number;
initVal?: boolean;
}) | (() => ThrottleType) | (((new (...args: any[]) => number | {
leading?: number;
trailing?: number;
initVal?: boolean;
}) | (() => ThrottleType)) | null)[], unknown, unknown>>;
readonly required: false;
readonly validator: ((val: unknown) => boolean) | undefined;
__epPropKey: true;
};
};
/**
* @deprecated Removed after 3.0.0, Use `SkeletonProps` instead.
*/
type SkeletonPropsPublic = ExtractPublicPropTypes<typeof skeletonProps>;
type SkeletonInstance = InstanceType<typeof _default> & unknown;
//#endregion
export { SkeletonInstance, SkeletonProps, SkeletonPropsPublic, skeletonProps };
@@ -0,0 +1,27 @@
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
const require_runtime = require('../../../utils/vue/props/runtime.js');
//#region ../../packages/components/skeleton/src/skeleton.ts
/**
* @deprecated Removed after 3.0.0, Use `SkeletonProps` instead.
*/
const skeletonProps = require_runtime.buildProps({
animated: Boolean,
count: {
type: Number,
default: 1
},
rows: {
type: Number,
default: 3
},
loading: {
type: Boolean,
default: true
},
throttle: { type: require_runtime.definePropType([Number, Object]) }
});
//#endregion
exports.skeletonProps = skeletonProps;
//# sourceMappingURL=skeleton.js.map
@@ -0,0 +1 @@
{"version":3,"file":"skeleton.js","names":["buildProps","definePropType"],"sources":["../../../../../../packages/components/skeleton/src/skeleton.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type Skeleton from './skeleton.vue'\nimport type { ExtractPublicPropTypes } from 'vue'\nimport type { ThrottleType } from '@element-plus/hooks'\n\nexport interface SkeletonProps {\n /**\n * @description whether showing the animation\n */\n animated?: boolean\n /**\n * @description how many fake items to render to the DOM\n */\n count?: number\n /**\n * @description numbers of the row, only useful when no template slot were given\n */\n rows?: number\n /**\n * @description whether showing the real DOM\n */\n loading?: boolean\n /**\n * @description rendering delay in milliseconds\n */\n throttle?: ThrottleType\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `SkeletonProps` instead.\n */\nexport const skeletonProps = buildProps({\n /**\n * @description whether showing the animation\n */\n animated: Boolean,\n /**\n * @description how many fake items to render to the DOM\n */\n count: {\n type: Number,\n default: 1,\n },\n /**\n * @description numbers of the row, only useful when no template slot were given\n */\n rows: {\n type: Number,\n default: 3,\n },\n /**\n * @description whether showing the real DOM\n */\n loading: {\n type: Boolean,\n default: true,\n },\n /**\n * @description rendering delay in milliseconds\n */\n throttle: {\n type: definePropType<ThrottleType>([Number, Object]),\n },\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `SkeletonProps` instead.\n */\nexport type SkeletonPropsPublic = ExtractPublicPropTypes<typeof skeletonProps>\n\nexport type SkeletonInstance = InstanceType<typeof Skeleton> & unknown\n"],"mappings":";;;;;;;AAgCA,MAAa,gBAAgBA,2BAAW;CAItC,UAAU;CAIV,OAAO;EACL,MAAM;EACN,SAAS;EACV;CAID,MAAM;EACJ,MAAM;EACN,SAAS;EACV;CAID,SAAS;EACP,MAAM;EACN,SAAS;EACV;CAID,UAAU,EACR,MAAMC,+BAA6B,CAAC,QAAQ,OAAO,CAAC,EACrD;CACF,CAAU"}
@@ -0,0 +1,28 @@
import { SkeletonProps } from "./skeleton.js";
import * as vue from "vue";
//#region ../../packages/components/skeleton/src/skeleton.vue.d.ts
declare var __VLS_1: {
key: number;
}, __VLS_13: {};
type __VLS_Slots = {} & {
template?: (props: typeof __VLS_1) => any;
} & {
default?: (props: typeof __VLS_13) => any;
};
declare const __VLS_base: vue.DefineComponent<SkeletonProps, {
/** @description loading state */uiLoading: vue.Ref<boolean, boolean>;
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<SkeletonProps> & Readonly<{}>, {
rows: number;
loading: boolean;
count: number;
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
declare const _default: typeof __VLS_export;
type __VLS_WithSlots<T, S> = T & {
new (): {
$slots: S;
};
};
//#endregion
export { _default };
@@ -0,0 +1,40 @@
const require_runtime = require('../../../_virtual/_rolldown/runtime.js');
const require_index = require('../../../hooks/use-namespace/index.js');
const require_index$1 = require('../../../hooks/use-throttle-render/index.js');
const require_skeleton = require('./skeleton.js');
const require_skeleton_item = require('./skeleton-item2.js');
let vue = require("vue");
//#region ../../packages/components/skeleton/src/skeleton.vue?vue&type=script&setup=true&lang.ts
var skeleton_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ (0, vue.defineComponent)({
name: "ElSkeleton",
__name: "skeleton",
props: require_skeleton.skeletonProps,
setup(__props, { expose: __expose }) {
const props = __props;
const ns = require_index.useNamespace("skeleton");
const uiLoading = require_index$1.useThrottleRender((0, vue.toRef)(props, "loading"), props.throttle);
__expose({ uiLoading });
return (_ctx, _cache) => {
return (0, vue.unref)(uiLoading) ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", (0, vue.mergeProps)({
key: 0,
class: [(0, vue.unref)(ns).b(), (0, vue.unref)(ns).is("animated", __props.animated)]
}, _ctx.$attrs), [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(__props.count, (i) => {
return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: i }, [(0, vue.unref)(uiLoading) ? (0, vue.renderSlot)(_ctx.$slots, "template", { key: i }, () => [(0, vue.createVNode)(require_skeleton_item.default, {
class: (0, vue.normalizeClass)((0, vue.unref)(ns).is("first")),
variant: "p"
}, null, 8, ["class"]), ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(__props.rows, (item) => {
return (0, vue.openBlock)(), (0, vue.createBlock)(require_skeleton_item.default, {
key: item,
class: (0, vue.normalizeClass)([(0, vue.unref)(ns).e("paragraph"), (0, vue.unref)(ns).is("last", item === __props.rows && __props.rows > 1)]),
variant: "p"
}, null, 8, ["class"]);
}), 128))]) : (0, vue.createCommentVNode)("v-if", true)], 64);
}), 128))], 16)) : (0, vue.renderSlot)(_ctx.$slots, "default", (0, vue.normalizeProps)((0, vue.mergeProps)({ key: 1 }, _ctx.$attrs)));
};
}
});
//#endregion
exports.default = skeleton_vue_vue_type_script_setup_true_lang_default;
//# sourceMappingURL=skeleton.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
{"version":3,"file":"skeleton.vue_vue_type_script_setup_true_lang.js","names":["$attrs"],"sources":["../../../../../../packages/components/skeleton/src/skeleton.vue"],"sourcesContent":["<template>\n <template v-if=\"uiLoading\">\n <div :class=\"[ns.b(), ns.is('animated', animated)]\" v-bind=\"$attrs\">\n <template v-for=\"i in count\" :key=\"i\">\n <slot v-if=\"uiLoading\" :key=\"i\" name=\"template\">\n <el-skeleton-item :class=\"ns.is('first')\" variant=\"p\" />\n <el-skeleton-item\n v-for=\"item in rows\"\n :key=\"item\"\n :class=\"[\n ns.e('paragraph'),\n ns.is('last', item === rows && rows > 1),\n ]\"\n variant=\"p\"\n />\n </slot>\n </template>\n </div>\n </template>\n <template v-else>\n <slot v-bind=\"$attrs\" />\n </template>\n</template>\n\n<script lang=\"ts\" setup>\nimport { toRef } from 'vue'\nimport { useNamespace, useThrottleRender } from '@element-plus/hooks'\nimport ElSkeletonItem from './skeleton-item.vue'\n\nimport type { SkeletonProps } from './skeleton.ts'\n\ndefineOptions({\n name: 'ElSkeleton',\n})\nconst props = withDefaults(defineProps<SkeletonProps>(), {\n loading: true,\n count: 1,\n rows: 3,\n})\n\nconst ns = useNamespace('skeleton')\nconst uiLoading = useThrottleRender(toRef(props, 'loading'), props.throttle)\n\ndefineExpose({\n /** @description loading state */\n uiLoading,\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;EAkCA,MAAM,QAAQ;EAMd,MAAM,KAAK,2BAAa,WAAU;EAClC,MAAM,YAAY,iDAAwB,OAAO,UAAU,EAAE,MAAM,SAAQ;AAE3E,WAAa,EAEX,WACD,CAAA;;yBA7CiB,UAAS,sDAgBjB,2BAAA;;IAfA,OAAK,gBAAG,GAAE,CAAC,GAAC,iBAAI,GAAE,CAAC,GAAE,YAAa,QAAA,SAAQ,CAAA;MAAYA,KAAAA,OAAM,EAAA,wDAcrD,cAAA,0BAbW,QAAA,QAAL,MAAC;kFAAiB,GAAC,EAAA,gBACtB,UAAS,uBAWd,KAAA,QAAA,YAAA,EAXiB,KAAK,GAAC,QAWvB,sBAVmD,+BAAA;KAArC,8CAAO,GAAE,CAAC,GAAE,QAAA,CAAA;KAAW,SAAQ;mFAShD,cAAA,0BAPe,QAAA,OAAR,SAAI;uDAOX,+BAAA;MANC,KAAK;MACL,+BAAK,gBAAkB,GAAE,CAAC,EAAC,YAAA,iBAA6B,GAAE,CAAC,GAAE,QAAS,SAAS,QAAA,QAAQ,QAAA,OAAI,EAAA;MAI5F,SAAQ;;;0CAOQ,KAAA,QAAA,uDAAA,EAAA,KAAA,GAAA,EAAVA,KAAAA,OAAM,CAAA,CAAA"}
@@ -0,0 +1,9 @@
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
const require_skeleton_vue_vue_type_script_setup_true_lang = require('./skeleton.vue_vue_type_script_setup_true_lang.js');
//#region ../../packages/components/skeleton/src/skeleton.vue
var skeleton_default = require_skeleton_vue_vue_type_script_setup_true_lang.default;
//#endregion
exports.default = skeleton_default;
//# sourceMappingURL=skeleton2.js.map
@@ -0,0 +1 @@
{"version":3,"file":"skeleton2.js","names":[],"sources":["../../../../../../packages/components/skeleton/src/skeleton.vue"],"sourcesContent":["<template>\n <template v-if=\"uiLoading\">\n <div :class=\"[ns.b(), ns.is('animated', animated)]\" v-bind=\"$attrs\">\n <template v-for=\"i in count\" :key=\"i\">\n <slot v-if=\"uiLoading\" :key=\"i\" name=\"template\">\n <el-skeleton-item :class=\"ns.is('first')\" variant=\"p\" />\n <el-skeleton-item\n v-for=\"item in rows\"\n :key=\"item\"\n :class=\"[\n ns.e('paragraph'),\n ns.is('last', item === rows && rows > 1),\n ]\"\n variant=\"p\"\n />\n </slot>\n </template>\n </div>\n </template>\n <template v-else>\n <slot v-bind=\"$attrs\" />\n </template>\n</template>\n\n<script lang=\"ts\" setup>\nimport { toRef } from 'vue'\nimport { useNamespace, useThrottleRender } from '@element-plus/hooks'\nimport ElSkeletonItem from './skeleton-item.vue'\n\nimport type { SkeletonProps } from './skeleton.ts'\n\ndefineOptions({\n name: 'ElSkeleton',\n})\nconst props = withDefaults(defineProps<SkeletonProps>(), {\n loading: true,\n count: 1,\n rows: 3,\n})\n\nconst ns = useNamespace('skeleton')\nconst uiLoading = useThrottleRender(toRef(props, 'loading'), props.throttle)\n\ndefineExpose({\n /** @description loading state */\n uiLoading,\n})\n</script>\n"],"mappings":""}
@@ -0,0 +1,4 @@
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
require('../../base/style/css.js');
require('../../skeleton-item/style/css.js');
require("element-plus/theme-chalk/el-skeleton.css");
@@ -0,0 +1,4 @@
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
require('../../base/style/index.js');
require('../../skeleton-item/style/index.js');
require("element-plus/theme-chalk/src/skeleton.scss");