1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
| import { defineComponent, toRef, unref, openBlock, createElementBlock, mergeProps, Fragment, renderList, renderSlot, createVNode, normalizeClass, createBlock, createCommentVNode, normalizeProps } from 'vue';
| import '../../../hooks/index.mjs';
| import { skeletonProps } from './skeleton.mjs';
| import SkeletonItem from './skeleton-item2.mjs';
| import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
| import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
| import { useThrottleRender } from '../../../hooks/use-throttle-render/index.mjs';
|
| const __default__ = defineComponent({
| name: "ElSkeleton"
| });
| const _sfc_main = /* @__PURE__ */ defineComponent({
| ...__default__,
| props: skeletonProps,
| setup(__props, { expose }) {
| const props = __props;
| const ns = useNamespace("skeleton");
| const uiLoading = useThrottleRender(toRef(props, "loading"), props.throttle);
| expose({
| uiLoading
| });
| return (_ctx, _cache) => {
| return unref(uiLoading) ? (openBlock(), createElementBlock("div", mergeProps({
| key: 0,
| class: [unref(ns).b(), unref(ns).is("animated", _ctx.animated)]
| }, _ctx.$attrs), [
| (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.count, (i) => {
| return openBlock(), createElementBlock(Fragment, { key: i }, [
| _ctx.loading ? renderSlot(_ctx.$slots, "template", { key: i }, () => [
| createVNode(SkeletonItem, {
| class: normalizeClass(unref(ns).is("first")),
| variant: "p"
| }, null, 8, ["class"]),
| (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.rows, (item) => {
| return openBlock(), createBlock(SkeletonItem, {
| key: item,
| class: normalizeClass([
| unref(ns).e("paragraph"),
| unref(ns).is("last", item === _ctx.rows && _ctx.rows > 1)
| ]),
| variant: "p"
| }, null, 8, ["class"]);
| }), 128))
| ]) : createCommentVNode("v-if", true)
| ], 64);
| }), 128))
| ], 16)) : renderSlot(_ctx.$slots, "default", normalizeProps(mergeProps({ key: 1 }, _ctx.$attrs)));
| };
| }
| });
| var Skeleton = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/skeleton/src/skeleton.vue"]]);
|
| export { Skeleton as default };
| //# sourceMappingURL=skeleton2.mjs.map
|
|