ep-craft 0.1.35 → 0.1.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/dist/components/breadcrumb/EpBreadcrumb.vue.d.ts +15 -0
  2. package/dist/components/breadcrumb/EpBreadcrumb.vue.js +41 -0
  3. package/dist/components/breadcrumb/EpBreadcrumb2.vue.js +4 -0
  4. package/dist/components/breadcrumb/breadcrumb.d.ts +28 -0
  5. package/dist/components/breadcrumb/breadcrumb.js +21 -0
  6. package/dist/components/breadcrumb/constants.d.ts +3 -0
  7. package/dist/components/breadcrumb/constants.js +4 -0
  8. package/dist/components/breadcrumb/index.d.ts +20 -2
  9. package/dist/components/breadcrumb/index.js +10 -4
  10. package/dist/components/breadcrumb/instance.d.ts +2 -0
  11. package/dist/components/breadcrumb-item/EpBreadcrumbItem.vue.d.ts +15 -0
  12. package/dist/components/breadcrumb-item/EpBreadcrumbItem.vue.js +58 -0
  13. package/dist/components/breadcrumb-item/EpBreadcrumbItem2.vue.js +4 -0
  14. package/dist/components/breadcrumb-item/breadcrumb-item.d.ts +23 -0
  15. package/dist/components/breadcrumb-item/breadcrumb-item.js +19 -0
  16. package/dist/components/breadcrumb-item/index.d.ts +11 -2
  17. package/dist/components/breadcrumb-item/index.js +8 -4
  18. package/dist/components/breadcrumb-item/instance.d.ts +2 -0
  19. package/dist/components/col/EpCol.vue.d.ts +24 -0
  20. package/dist/components/col/EpCol.vue.js +61 -0
  21. package/dist/components/col/EpCol2.vue.js +4 -0
  22. package/dist/components/col/col.d.ts +71 -0
  23. package/dist/components/col/col.js +79 -0
  24. package/dist/components/col/index.d.ts +10 -2
  25. package/dist/components/col/index.js +5 -4
  26. package/dist/components/collapse/EpCollapse.vue.d.ts +27 -0
  27. package/dist/components/collapse/EpCollapse.vue.js +30 -0
  28. package/dist/components/collapse/EpCollapse2.vue.js +4 -0
  29. package/dist/components/collapse/collapse.d.ts +47 -0
  30. package/dist/components/collapse/collapse.js +46 -0
  31. package/dist/components/collapse/constants.d.ts +7 -0
  32. package/dist/components/collapse/constants.js +4 -0
  33. package/dist/components/collapse/index.d.ts +21 -2
  34. package/dist/components/collapse/index.js +11 -3
  35. package/dist/components/collapse/instance.d.ts +2 -0
  36. package/dist/components/collapse/use-collapse-item.d.ts +21 -0
  37. package/dist/components/collapse/use-collapse-item.js +66 -0
  38. package/dist/components/collapse/use-collapse.d.ts +9 -0
  39. package/dist/components/collapse/use-collapse.js +72 -0
  40. package/dist/components/collapse-item/EpCollapseItem.vue.d.ts +27 -0
  41. package/dist/components/collapse-item/EpCollapseItem.vue.js +102 -0
  42. package/dist/components/collapse-item/EpCollapseItem2.vue.js +4 -0
  43. package/dist/components/collapse-item/collapse-item.d.ts +34 -0
  44. package/dist/components/collapse-item/collapse-item.js +34 -0
  45. package/dist/components/collapse-item/index.d.ts +11 -2
  46. package/dist/components/collapse-item/index.js +8 -4
  47. package/dist/components/collapse-item/instance.d.ts +2 -0
  48. package/dist/components/dropdown/src/dropdown-item-impl2.vue.js +1 -1
  49. package/dist/components/dropdown/src/dropdown-item2.vue.js +1 -1
  50. package/dist/components/dropdown/src/dropdown-menu2.vue.js +1 -1
  51. package/dist/components/dropdown/src/dropdown2.vue.js +1 -1
  52. package/dist/components/image/EpImage.vue.d.ts +63 -0
  53. package/dist/components/image/EpImage.vue.js +207 -0
  54. package/dist/components/image/EpImage2.vue.js +4 -0
  55. package/dist/components/image/image.d.ts +132 -0
  56. package/dist/components/image/image.js +132 -0
  57. package/dist/components/image/index.d.ts +11 -2
  58. package/dist/components/image/index.js +9 -4
  59. package/dist/components/image/instance.d.ts +2 -0
  60. package/dist/components/image-viewer/EpImageViewer.vue.d.ts +61 -0
  61. package/dist/components/image-viewer/EpImageViewer.vue.js +421 -0
  62. package/dist/components/image-viewer/EpImageViewer2.vue.js +4 -0
  63. package/dist/components/image-viewer/image-viewer.d.ts +100 -0
  64. package/dist/components/image-viewer/image-viewer.js +99 -0
  65. package/dist/components/image-viewer/index.d.ts +11 -2
  66. package/dist/components/image-viewer/index.js +9 -4
  67. package/dist/components/image-viewer/instance.d.ts +2 -0
  68. package/dist/components/roving-focus-group/index.js +1 -1
  69. package/dist/components/roving-focus-group/src/roving-focus-group.vue.js +19 -11
  70. package/dist/components/roving-focus-group/src/roving-focus-group2.vue.js +11 -19
  71. package/dist/components/row/EpRow.vue.d.ts +17 -0
  72. package/dist/components/row/EpRow.vue.js +50 -0
  73. package/dist/components/row/EpRow2.vue.js +4 -0
  74. package/dist/components/row/constants.d.ts +5 -0
  75. package/dist/components/row/constants.js +4 -0
  76. package/dist/components/row/index.d.ts +12 -2
  77. package/dist/components/row/index.js +7 -4
  78. package/dist/components/row/row.d.ts +41 -0
  79. package/dist/components/row/row.js +49 -0
  80. package/dist/components/skeleton/EpSkeleton.vue.d.ts +24 -0
  81. package/dist/components/skeleton/EpSkeleton.vue.js +56 -0
  82. package/dist/components/skeleton/EpSkeleton2.vue.js +4 -0
  83. package/dist/components/skeleton/index.d.ts +16 -2
  84. package/dist/components/skeleton/index.js +9 -3
  85. package/dist/components/skeleton/skeleton.d.ts +53 -0
  86. package/dist/components/skeleton/skeleton.js +39 -0
  87. package/dist/components/skeleton-item/EpSkeletonItem.vue.d.ts +5 -0
  88. package/dist/components/skeleton-item/EpSkeletonItem.vue.js +31 -0
  89. package/dist/components/skeleton-item/EpSkeletonItem2.vue.js +4 -0
  90. package/dist/components/skeleton-item/index.d.ts +8 -2
  91. package/dist/components/skeleton-item/index.js +7 -3
  92. package/dist/components/skeleton-item/skeleton-item.d.ts +19 -0
  93. package/dist/components/skeleton-item/skeleton-item.js +26 -0
  94. package/dist/components/timeline/index.d.ts +21 -2
  95. package/dist/components/timeline/index.js +10 -3
  96. package/dist/components/timeline/instance.d.ts +2 -0
  97. package/dist/components/timeline/timeline.d.ts +20 -0
  98. package/dist/components/timeline/timeline.js +53 -0
  99. package/dist/components/timeline/tokens.d.ts +7 -0
  100. package/dist/components/timeline/tokens.js +4 -0
  101. package/dist/components/timeline-item/EpTimelineItem.vue.d.ts +21 -0
  102. package/dist/components/timeline-item/EpTimelineItem.vue.js +94 -0
  103. package/dist/components/timeline-item/EpTimelineItem2.vue.js +4 -0
  104. package/dist/components/timeline-item/index.d.ts +12 -2
  105. package/dist/components/timeline-item/index.js +7 -3
  106. package/dist/components/timeline-item/instance.d.ts +2 -0
  107. package/dist/components/timeline-item/timeline-item.d.ts +63 -0
  108. package/dist/components/timeline-item/timeline-item.js +64 -0
  109. package/dist/hooks/index.d.ts +1 -0
  110. package/dist/hooks/use-throttle-render/index.d.ts +7 -0
  111. package/dist/hooks/use-throttle-render/index.js +31 -0
  112. package/dist/vendored-components.d.ts +1 -1
  113. package/dist/vendored-components.js +18 -1
  114. package/package.json +1 -1
@@ -1,6 +1,13 @@
1
- import { ElTimeline as e } from "element-plus";
2
1
  import { withInstall as i } from "../../utils/with-install.js";
3
- const m = Object.assign({}, e, { name: "EpTimeline" }), l = i(m, "ep-timeline");
2
+ import e from "./timeline.js";
3
+ import { timelineProps as f } from "./timeline.js";
4
+ import m from "../timeline-item/EpTimelineItem.vue.js";
5
+ import "../timeline-item/index.js";
6
+ const p = Object.assign(
7
+ i(e, "ep-timeline"),
8
+ { TimelineItem: m }
9
+ );
4
10
  export {
5
- l as EpTimeline
11
+ p as EpTimeline,
12
+ f as timelineProps
6
13
  };
@@ -0,0 +1,2 @@
1
+ import type Timeline from './timeline';
2
+ export type TimelineInstance = InstanceType<typeof Timeline> & unknown;
@@ -0,0 +1,20 @@
1
+ import type { ExtractPropTypes, ExtractPublicPropTypes } from 'vue';
2
+ export declare const timelineProps: {
3
+ readonly mode: import("@element-plus/utils").EpPropFinalized<StringConstructor, "alternate" | "alternate-reverse" | "end" | "start", unknown, "start", boolean>;
4
+ readonly reverse: BooleanConstructor;
5
+ };
6
+ export type TimelineProps = ExtractPropTypes<typeof timelineProps>;
7
+ export type TimelinePropsPublic = ExtractPublicPropTypes<typeof timelineProps>;
8
+ declare const Timeline: import("vue").DefineComponent<ExtractPropTypes<{
9
+ readonly mode: import("@element-plus/utils").EpPropFinalized<StringConstructor, "alternate" | "alternate-reverse" | "end" | "start", unknown, "start", boolean>;
10
+ readonly reverse: BooleanConstructor;
11
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
12
+ [key: string]: any;
13
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ExtractPropTypes<{
14
+ readonly mode: import("@element-plus/utils").EpPropFinalized<StringConstructor, "alternate" | "alternate-reverse" | "end" | "start", unknown, "start", boolean>;
15
+ readonly reverse: BooleanConstructor;
16
+ }>> & Readonly<{}>, {
17
+ readonly reverse: boolean;
18
+ readonly mode: import("@element-plus/utils").EpPropMergeType<StringConstructor, "alternate" | "alternate-reverse" | "end" | "start", unknown>;
19
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
20
+ export default Timeline;
@@ -0,0 +1,53 @@
1
+ import { defineComponent as n, provide as p, computed as a, h as l } from "vue";
2
+ import { useNamespace as d } from "../../hooks/use-namespace/index.js";
3
+ import "@vue/shared";
4
+ import "lodash-unified";
5
+ import "@vueuse/core";
6
+ import "@element-plus/icons-vue";
7
+ import { buildProps as s } from "../../utils/vue/props/runtime.js";
8
+ import { flattedChildren as u } from "../../utils/vue/vnode.js";
9
+ import "../../hooks/use-size/index.js";
10
+ import "@popperjs/core";
11
+ import "../../hooks/use-z-index/index.js";
12
+ import "../../hooks/use-delayed-toggle/index.js";
13
+ import "../../hooks/use-aria/index.js";
14
+ import "../../hooks/use-model-toggle/index.js";
15
+ import "../../hooks/use-empty-values/index.js";
16
+ import { TIMELINE_INJECTION_KEY as f } from "./tokens.js";
17
+ const c = s({
18
+ /**
19
+ * @description relative position of timeline and content
20
+ */
21
+ mode: {
22
+ type: String,
23
+ values: ["start", "alternate", "alternate-reverse", "end"],
24
+ default: "start"
25
+ },
26
+ /**
27
+ * @description whether reverse order
28
+ */
29
+ reverse: Boolean
30
+ }), L = n({
31
+ name: "EpTimeline",
32
+ props: c,
33
+ setup(r, { slots: e }) {
34
+ const t = d("timeline");
35
+ p(f, { props: r, slots: e });
36
+ const o = a(() => [t.b(), t.is(r.mode)]);
37
+ return () => {
38
+ var m;
39
+ const i = u(
40
+ ((m = e.default) == null ? void 0 : m.call(e)) ?? []
41
+ );
42
+ return l(
43
+ "ul",
44
+ { class: o.value },
45
+ r.reverse ? i.reverse() : i
46
+ );
47
+ };
48
+ }
49
+ });
50
+ export {
51
+ L as default,
52
+ c as timelineProps
53
+ };
@@ -0,0 +1,7 @@
1
+ import type { Slots } from 'vue';
2
+ import type { TimelineProps } from './timeline';
3
+ export interface TimelineProvider {
4
+ props: TimelineProps;
5
+ slots: Slots;
6
+ }
7
+ export declare const TIMELINE_INJECTION_KEY = "timeline";
@@ -0,0 +1,4 @@
1
+ const E = "timeline";
2
+ export {
3
+ E as TIMELINE_INJECTION_KEY
4
+ };
@@ -0,0 +1,21 @@
1
+ import type { TimelineItemProps } from './timeline-item';
2
+ declare var __VLS_9: {}, __VLS_11: {};
3
+ type __VLS_Slots = {} & {
4
+ dot?: (props: typeof __VLS_9) => any;
5
+ } & {
6
+ default?: (props: typeof __VLS_11) => any;
7
+ };
8
+ declare const __VLS_component: import("vue").DefineComponent<TimelineItemProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<TimelineItemProps> & Readonly<{}>, {
9
+ size: "normal" | "large";
10
+ color: string;
11
+ type: "primary" | "success" | "warning" | "danger" | "info" | "";
12
+ placement: "top" | "bottom";
13
+ timestamp: string;
14
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
15
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
16
+ export default _default;
17
+ type __VLS_WithSlots<T, S> = T & {
18
+ new (): {
19
+ $slots: S;
20
+ };
21
+ };
@@ -0,0 +1,94 @@
1
+ import { defineComponent as k, inject as E, computed as c, openBlock as l, createElementBlock as i, normalizeClass as m, createElementVNode as r, unref as o, normalizeStyle as h, createBlock as d, withCtx as I, resolveDynamicComponent as C, createCommentVNode as s, renderSlot as p, toDisplayString as u } from "vue";
2
+ import { ElIcon as N } from "../icon/index.js";
3
+ import { useNamespace as T } from "../../hooks/use-namespace/index.js";
4
+ import "@vue/shared";
5
+ import "lodash-unified";
6
+ import "@vueuse/core";
7
+ import "@element-plus/icons-vue";
8
+ import "../../hooks/use-size/index.js";
9
+ import "@popperjs/core";
10
+ import "../../hooks/use-z-index/index.js";
11
+ import "../../hooks/use-delayed-toggle/index.js";
12
+ import "../../hooks/use-aria/index.js";
13
+ import "../../hooks/use-model-toggle/index.js";
14
+ import "../../hooks/use-empty-values/index.js";
15
+ import { TIMELINE_INJECTION_KEY as B } from "../timeline/tokens.js";
16
+ const q = /* @__PURE__ */ k({
17
+ name: "EpTimelineItem",
18
+ __name: "EpTimelineItem",
19
+ props: {
20
+ timestamp: { default: "" },
21
+ hideTimestamp: { type: Boolean },
22
+ center: { type: Boolean },
23
+ placement: { default: "bottom" },
24
+ type: { default: "" },
25
+ color: { default: "" },
26
+ size: { default: "normal" },
27
+ icon: {},
28
+ hollow: { type: Boolean }
29
+ },
30
+ setup(t) {
31
+ const a = t, { props: f } = E(
32
+ B
33
+ ), e = T("timeline-item"), y = c(() => [
34
+ e.e("node"),
35
+ e.em("node", a.size || ""),
36
+ e.em("node", a.type || ""),
37
+ e.is("hollow", a.hollow)
38
+ ]), v = c(() => [
39
+ e.b(),
40
+ { [e.e("center")]: a.center },
41
+ e.is(f.mode)
42
+ ]);
43
+ return (n, b) => (l(), i("li", {
44
+ class: m(v.value)
45
+ }, [
46
+ r("div", {
47
+ class: m(o(e).e("tail"))
48
+ }, null, 2),
49
+ n.$slots.dot ? s("", !0) : (l(), i("div", {
50
+ key: 0,
51
+ class: m(y.value),
52
+ style: h({
53
+ backgroundColor: t.color
54
+ })
55
+ }, [
56
+ t.icon ? (l(), d(o(N), {
57
+ key: 0,
58
+ class: m(o(e).e("icon"))
59
+ }, {
60
+ default: I(() => [
61
+ (l(), d(C(t.icon)))
62
+ ]),
63
+ _: 1
64
+ }, 8, ["class"])) : s("", !0)
65
+ ], 6)),
66
+ n.$slots.dot ? (l(), i("div", {
67
+ key: 1,
68
+ class: m(o(e).e("dot"))
69
+ }, [
70
+ p(n.$slots, "dot")
71
+ ], 2)) : s("", !0),
72
+ r("div", {
73
+ class: m(o(e).e("wrapper"))
74
+ }, [
75
+ !t.hideTimestamp && t.placement === "top" ? (l(), i("div", {
76
+ key: 0,
77
+ class: m([o(e).e("timestamp"), o(e).is("top")])
78
+ }, u(t.timestamp), 3)) : s("", !0),
79
+ r("div", {
80
+ class: m(o(e).e("content"))
81
+ }, [
82
+ p(n.$slots, "default")
83
+ ], 2),
84
+ !t.hideTimestamp && t.placement === "bottom" ? (l(), i("div", {
85
+ key: 1,
86
+ class: m([o(e).e("timestamp"), o(e).is("bottom")])
87
+ }, u(t.timestamp), 3)) : s("", !0)
88
+ ], 2)
89
+ ], 2));
90
+ }
91
+ });
92
+ export {
93
+ q as default
94
+ };
@@ -0,0 +1,4 @@
1
+ import f from "./EpTimelineItem.vue.js";
2
+ export {
3
+ f as default
4
+ };
@@ -1,4 +1,14 @@
1
1
  import type { Plugin } from 'vue';
2
- import { ElTimelineItem } from 'element-plus';
3
- export declare const EpTimelineItem: typeof ElTimelineItem & Plugin;
2
+ import _EpTimelineItem from './EpTimelineItem.vue';
3
+ /**
4
+ * timeline-item 自持 barrel(vendor-batch-4 产出)。
5
+ *
6
+ * 子项通过 `../timeline/tokens` 的字符串键 `TIMELINE_INJECTION_KEY`
7
+ * 注入父上下文(保留上游字符串键,不改语义)。
8
+ * 不导出 `ElTimelineItem` 别名。
9
+ */
10
+ export declare const EpTimelineItem: typeof _EpTimelineItem & Plugin;
4
11
  export default EpTimelineItem;
12
+ export { timelineItemProps } from './timeline-item';
13
+ export type { TimelineItemProps, TimelineItemPropsPublic, } from './timeline-item';
14
+ export type { TimelineItemInstance } from './instance';
@@ -1,6 +1,10 @@
1
- import { ElTimelineItem as e } from "element-plus";
2
1
  import { withInstall as i } from "../../utils/with-install.js";
3
- const m = Object.assign({}, e, { name: "EpTimelineItem" }), l = i(m, "ep-timeline-item");
2
+ import m from "./EpTimelineItem.vue.js";
3
+ import "./timeline-item.js";
4
+ const p = i(
5
+ m,
6
+ "ep-timeline-item"
7
+ );
4
8
  export {
5
- l as EpTimelineItem
9
+ p as EpTimelineItem
6
10
  };
@@ -0,0 +1,2 @@
1
+ import type EpTimelineItem from './EpTimelineItem.vue';
2
+ export type TimelineItemInstance = InstanceType<typeof EpTimelineItem> & unknown;
@@ -0,0 +1,63 @@
1
+ import type { ExtractPublicPropTypes } from 'vue';
2
+ import type { IconPropType } from '@element-plus/utils';
3
+ export interface TimelineItemProps {
4
+ /**
5
+ * @description timestamp content
6
+ */
7
+ timestamp?: string;
8
+ /**
9
+ * @description whether to show timestamp
10
+ */
11
+ hideTimestamp?: boolean;
12
+ /**
13
+ * @description whether vertically centered
14
+ */
15
+ center?: boolean;
16
+ /**
17
+ * @description position of timestamp
18
+ */
19
+ placement?: 'top' | 'bottom';
20
+ /**
21
+ * @description node type
22
+ */
23
+ type?: 'primary' | 'success' | 'warning' | 'danger' | 'info' | '';
24
+ /**
25
+ * @description background color of node
26
+ */
27
+ color?: string;
28
+ /**
29
+ * @description node size
30
+ */
31
+ size?: 'normal' | 'large';
32
+ /**
33
+ * @description icon component
34
+ */
35
+ icon?: IconPropType;
36
+ /**
37
+ * @description icon is hollow
38
+ */
39
+ hollow?: boolean;
40
+ }
41
+ /**
42
+ * @deprecated Removed after 3.0.0, Use `TimelineItemProps` instead.
43
+ */
44
+ export declare const timelineItemProps: {
45
+ readonly timestamp: import("@element-plus/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
46
+ readonly hideTimestamp: BooleanConstructor;
47
+ readonly center: BooleanConstructor;
48
+ readonly placement: import("@element-plus/utils").EpPropFinalized<StringConstructor, "bottom" | "top", unknown, "bottom", boolean>;
49
+ readonly type: import("@element-plus/utils").EpPropFinalized<StringConstructor, "primary" | "success" | "warning" | "info" | "danger", unknown, "", boolean>;
50
+ readonly color: import("@element-plus/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
51
+ readonly size: import("@element-plus/utils").EpPropFinalized<StringConstructor, "normal" | "large", unknown, "normal", boolean>;
52
+ readonly icon: {
53
+ readonly type: import("vue").PropType<import("@element-plus/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | (((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component)) | null)[], unknown, unknown>>;
54
+ readonly required: false;
55
+ readonly validator: ((val: unknown) => boolean) | undefined;
56
+ __epPropKey: true;
57
+ };
58
+ readonly hollow: BooleanConstructor;
59
+ };
60
+ /**
61
+ * @deprecated Removed after 3.0.0, Use `TimelineItemProps` instead.
62
+ */
63
+ export type TimelineItemPropsPublic = ExtractPublicPropTypes<typeof timelineItemProps>;
@@ -0,0 +1,64 @@
1
+ import "@vue/shared";
2
+ import "lodash-unified";
3
+ import "@vueuse/core";
4
+ import { iconPropType as t } from "../../utils/vue/icon.js";
5
+ import "vue";
6
+ import { buildProps as e } from "../../utils/vue/props/runtime.js";
7
+ e({
8
+ /**
9
+ * @description timestamp content
10
+ */
11
+ timestamp: {
12
+ type: String,
13
+ default: ""
14
+ },
15
+ /**
16
+ * @description whether to show timestamp
17
+ */
18
+ hideTimestamp: Boolean,
19
+ /**
20
+ * @description whether vertically centered
21
+ */
22
+ center: Boolean,
23
+ /**
24
+ * @description position of timestamp
25
+ */
26
+ placement: {
27
+ type: String,
28
+ values: ["top", "bottom"],
29
+ default: "bottom"
30
+ },
31
+ /**
32
+ * @description node type
33
+ */
34
+ type: {
35
+ type: String,
36
+ values: ["primary", "success", "warning", "danger", "info"],
37
+ default: ""
38
+ },
39
+ /**
40
+ * @description background color of node
41
+ */
42
+ color: {
43
+ type: String,
44
+ default: ""
45
+ },
46
+ /**
47
+ * @description node size
48
+ */
49
+ size: {
50
+ type: String,
51
+ values: ["normal", "large"],
52
+ default: "normal"
53
+ },
54
+ /**
55
+ * @description icon component
56
+ */
57
+ icon: {
58
+ type: t
59
+ },
60
+ /**
61
+ * @description icon is hollow
62
+ */
63
+ hollow: Boolean
64
+ });
@@ -23,3 +23,4 @@ export * from './use-cursor';
23
23
  export * from './use-calc-input-width';
24
24
  export * from './use-float-label';
25
25
  export * from './use-lockscreen';
26
+ export * from './use-throttle-render';
@@ -0,0 +1,7 @@
1
+ import type { Ref } from 'vue';
2
+ export type ThrottleType = {
3
+ leading?: number;
4
+ trailing?: number;
5
+ initVal?: boolean;
6
+ } | number;
7
+ export declare const useThrottleRender: (loading: Ref<boolean>, throttle?: ThrottleType) => Ref<boolean, boolean>;
@@ -0,0 +1,31 @@
1
+ import { ref as t, onMounted as f, watch as m } from "vue";
2
+ import { isNumber as c, isUndefined as d } from "../../utils/types.js";
3
+ import "lodash-unified";
4
+ import "@vueuse/core";
5
+ import { isObject as u } from "@vue/shared";
6
+ import "@element-plus/icons-vue";
7
+ const j = (n, e = 0) => {
8
+ if (e === 0) return n;
9
+ const o = u(e) && !!e.initVal, a = t(o);
10
+ let r = null;
11
+ const l = (i) => {
12
+ if (d(i)) {
13
+ a.value = n.value;
14
+ return;
15
+ }
16
+ r && clearTimeout(r), r = setTimeout(() => {
17
+ a.value = n.value;
18
+ }, i);
19
+ }, s = (i) => {
20
+ i === "leading" ? c(e) ? l(e) : l(e.leading) : u(e) ? l(e.trailing) : a.value = !1;
21
+ };
22
+ return f(() => s("leading")), m(
23
+ () => n.value,
24
+ (i) => {
25
+ s(i ? "leading" : "trailing");
26
+ }
27
+ ), a;
28
+ };
29
+ export {
30
+ j as useThrottleRender
31
+ };
@@ -14,6 +14,6 @@
14
14
  * 不等于本体已自持**——此限定只描述登记时的过渡态:对应 vendor 切片尚未把本体
15
15
  * 落到本地时,登记只是止血;本体落地后(见下方「本体已自持」组)才名副其实。
16
16
  */
17
- export declare const vendoredComponents: readonly ["Affix", "Alert", "Anchor", "AnchorLink", "Button", "CheckTag", "Tag", "Menu", "MenuItem", "MenuItemGroup", "SubMenu", "Tabs", "TabPane", "Radio", "RadioButton", "RadioGroup", "Input", "InputNumber", "Option", "OptionGroup", "Pagination", "Select", "SelectV2", "DatePicker", "DatePickerPanel", "TimePicker", "Aside", "Container", "Footer", "Header", "Main", "CollapseTransition", "ConfigProvider", "Form", "FormItem", "Icon", "Popper", "Tooltip", "Autocomplete", "Scrollbar", "Backtop", "Checkbox", "CheckboxButton", "CheckboxGroup", "Table", "TableColumn", "Upload", "Progress", "Divider", "Popover", "Dropdown", "DropdownItem", "DropdownMenu", "ButtonGroup", "Tree", "TreeSelect", "Text", "Switch", "Segmented", "Steps", "Step", "Rate", "TimeSelect", "Descriptions", "DescriptionsItem", "Carousel", "CarouselItem", "Transfer", "Mention", "Tour", "TourStep", "Slider", "ColorPicker", "Cascader", "CascaderPanel"];
17
+ export declare const vendoredComponents: readonly ["Affix", "Alert", "Anchor", "AnchorLink", "Button", "CheckTag", "Tag", "Menu", "MenuItem", "MenuItemGroup", "SubMenu", "Tabs", "TabPane", "Radio", "RadioButton", "RadioGroup", "Input", "InputNumber", "Option", "OptionGroup", "Pagination", "Select", "SelectV2", "DatePicker", "DatePickerPanel", "TimePicker", "Aside", "Container", "Footer", "Header", "Main", "CollapseTransition", "ConfigProvider", "Form", "FormItem", "Icon", "Popper", "Tooltip", "Autocomplete", "Scrollbar", "Backtop", "Checkbox", "CheckboxButton", "CheckboxGroup", "Table", "TableColumn", "Upload", "Progress", "Divider", "Popover", "Dropdown", "DropdownItem", "DropdownMenu", "ButtonGroup", "Tree", "TreeSelect", "Text", "Switch", "Segmented", "Steps", "Step", "Rate", "TimeSelect", "Descriptions", "DescriptionsItem", "Carousel", "CarouselItem", "Transfer", "Mention", "Tour", "TourStep", "Slider", "ColorPicker", "Cascader", "CascaderPanel", "Collapse", "CollapseItem", "Breadcrumb", "BreadcrumbItem", "Row", "Col", "Timeline", "TimelineItem", "Skeleton", "SkeletonItem", "Image", "ImageViewer"];
18
18
  export type VendoredComponentName = (typeof vendoredComponents)[number];
19
19
  export declare const isVendored: (name: string) => boolean;
@@ -156,7 +156,24 @@ const o = [
156
156
  "Slider",
157
157
  "ColorPicker",
158
158
  "Cascader",
159
- "CascaderPanel"
159
+ "CascaderPanel",
160
+ // 本体已自持(vendor-batch-4 产出,跳过 gen 包装)
161
+ // 登记须先于 barrel 重写,否则 gen 会把入口模块覆盖回包装态。
162
+ // 本切片 4 组父子通过 provide/inject 耦合(collapse / breadcrumb / row / timeline),
163
+ // 上下文键须与子项同批落到本地,避免父本地、子上游的 Symbol 失配。
164
+ // Skeleton 依赖 useThrottleRender 闭包;Image 依赖本地 ImageViewer。
165
+ "Collapse",
166
+ "CollapseItem",
167
+ "Breadcrumb",
168
+ "BreadcrumbItem",
169
+ "Row",
170
+ "Col",
171
+ "Timeline",
172
+ "TimelineItem",
173
+ "Skeleton",
174
+ "SkeletonItem",
175
+ "Image",
176
+ "ImageViewer"
160
177
  ], r = (e) => o.includes(e);
161
178
  export {
162
179
  r as isVendored,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ep-craft",
3
- "version": "0.1.35",
3
+ "version": "0.1.36",
4
4
  "description": "A Vue 3 component library based on element-plus with ep- prefix",
5
5
  "type": "module",
6
6
  "main": "./dist/ep-craft.js",