@zl-ui-kit/components 0.5.0 → 0.6.0

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 (74) hide show
  1. package/README.md +3009 -148
  2. package/dist/components/ZlAction/types.d.ts +7 -0
  3. package/dist/components/ZlAddSub/index.css +1 -1
  4. package/dist/components/ZlAddSub/index.vue.mjs +1 -1
  5. package/dist/components/ZlAutoTooltip/index.css +1 -1
  6. package/dist/components/ZlAutoTooltip/index.vue.mjs +1 -1
  7. package/dist/components/ZlAutoTooltip/index2.vue.mjs +7 -3
  8. package/dist/components/ZlAvatar/Group.css +1 -1
  9. package/dist/components/ZlAvatar/Group.vue.mjs +2 -2
  10. package/dist/components/ZlAvatar/index.css +1 -1
  11. package/dist/components/ZlAvatar/index.vue.mjs +2 -2
  12. package/dist/components/ZlCardPage/index.vue.d.ts +6 -12
  13. package/dist/components/ZlCardPage/index.vue.mjs +24 -10
  14. package/dist/components/ZlChart/index.vue.mjs +11 -5
  15. package/dist/components/ZlCheckAll/index.css +1 -1
  16. package/dist/components/ZlCheckAll/index.vue.mjs +2 -2
  17. package/dist/components/ZlCheckboxTag/index.vue.mjs +1 -2
  18. package/dist/components/ZlCopy/index.css +1 -1
  19. package/dist/components/ZlCopy/index.vue.mjs +2 -2
  20. package/dist/components/ZlDictTag/index.vue.mjs +10 -6
  21. package/dist/components/ZlDynamicComponent/index.vue.mjs +1 -2
  22. package/dist/components/ZlEditor/ZlSqlEditor.vue.mjs +13 -8
  23. package/dist/components/ZlEditor/index.vue.mjs +28 -19
  24. package/dist/components/ZlEmpty/index.css +1 -1
  25. package/dist/components/ZlEmpty/index.vue.mjs +2 -2
  26. package/dist/components/ZlFileViewer/index.css +1 -1
  27. package/dist/components/ZlFileViewer/index.vue.mjs +2 -2
  28. package/dist/components/ZlForm/index.vue.mjs +15 -12
  29. package/dist/components/ZlGrid/index.vue.mjs +1 -2
  30. package/dist/components/ZlGrid/types.d.ts +5 -0
  31. package/dist/components/ZlHorizontalTable/index.css +1 -1
  32. package/dist/components/ZlHorizontalTable/index.vue.mjs +1 -1
  33. package/dist/components/ZlLayoutSwitch/index.css +1 -1
  34. package/dist/components/ZlLayoutSwitch/index.vue.mjs +2 -2
  35. package/dist/components/ZlLogin/components/LoginForm.css +1 -1
  36. package/dist/components/ZlLogin/components/LoginForm.vue.mjs +2 -2
  37. package/dist/components/ZlLogin/components/LoginForm2.vue.mjs +4 -3
  38. package/dist/components/ZlLogin/components/SlideChecker.css +1 -1
  39. package/dist/components/ZlLogin/components/SlideChecker.vue.mjs +2 -2
  40. package/dist/components/ZlLogin/components/SlideChecker2.vue.mjs +2 -8
  41. package/dist/components/ZlLogin/index.vue.mjs +2 -3
  42. package/dist/components/ZlPagination/index.css +1 -1
  43. package/dist/components/ZlPagination/index.vue.mjs +1 -1
  44. package/dist/components/ZlPagination/index2.vue.mjs +17 -8
  45. package/dist/components/ZlPermission/usePermission.mjs +9 -5
  46. package/dist/components/ZlSearch/index.css +1 -1
  47. package/dist/components/ZlSearch/index.vue.d.ts +9 -3
  48. package/dist/components/ZlSearch/index.vue.mjs +129 -114
  49. package/dist/components/ZlSearch/useSearchFormOverflow.d.ts +17 -0
  50. package/dist/components/ZlSearch/useSearchFormOverflow.mjs +50 -0
  51. package/dist/components/ZlSearchTable/index.vue.d.ts +6 -12
  52. package/dist/components/ZlSearchTable/index.vue.mjs +28 -17
  53. package/dist/components/ZlSorter/ZlSorterList.css +1 -1
  54. package/dist/components/ZlSorter/ZlSorterList.vue.mjs +2 -2
  55. package/dist/components/ZlSorter/index.css +1 -1
  56. package/dist/components/ZlSorter/index.vue.mjs +2 -2
  57. package/dist/components/ZlTable/index.vue.mjs +14 -8
  58. package/dist/components/ZlTable/useTablePagination.mjs +16 -10
  59. package/dist/components/ZlTabs/index.vue.mjs +21 -10
  60. package/dist/components/ZlText/index.css +1 -1
  61. package/dist/components/ZlText/index.vue.mjs +1 -1
  62. package/dist/components/ZlTitle/index.css +1 -1
  63. package/dist/components/ZlTitle/index.vue.mjs +2 -2
  64. package/dist/components/ZlTree/index.vue.mjs +13 -8
  65. package/dist/components/ZlTreeSelect/index.css +1 -1
  66. package/dist/components/ZlTreeSelect/index.vue.mjs +1 -1
  67. package/dist/components/ZlUpload/index.css +1 -1
  68. package/dist/components/ZlUpload/index.vue.mjs +2 -2
  69. package/dist/index.d.ts +1 -1
  70. package/dist/locales/en.mjs +2 -0
  71. package/dist/locales/messages.mjs +2 -2
  72. package/dist/locales/zh-cn.mjs +2 -0
  73. package/dist/types.d.ts +8 -0
  74. package/package.json +7 -7
@@ -37,7 +37,6 @@ declare function __VLS_template(): {
37
37
  readonly immediate?: boolean | undefined;
38
38
  readonly disabled?: boolean | undefined;
39
39
  readonly showLabels?: boolean | undefined;
40
- readonly overflowCount?: number | undefined;
41
40
  readonly onSearch?: ((params: Record<string, any>) => any) | undefined;
42
41
  readonly onReset?: (() => any) | undefined;
43
42
  } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps;
@@ -234,7 +233,6 @@ declare function __VLS_template(): {
234
233
  immediate?: boolean;
235
234
  disabled?: boolean;
236
235
  showLabels?: boolean;
237
- overflowCount?: number;
238
236
  }> & Readonly<{
239
237
  onSearch?: ((params: Record<string, any>) => any) | undefined;
240
238
  onReset?: (() => any) | undefined;
@@ -249,7 +247,7 @@ declare function __VLS_template(): {
249
247
  immediate: boolean;
250
248
  disabled: boolean;
251
249
  items: SearchItem[];
252
- overflowCount: number;
250
+ showLabels: boolean;
253
251
  }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
254
252
  beforeCreate?: (() => void) | (() => void)[];
255
253
  created?: (() => void) | (() => void)[];
@@ -274,18 +272,17 @@ declare function __VLS_template(): {
274
272
  immediate: boolean;
275
273
  disabled: boolean;
276
274
  items: SearchItem[];
277
- overflowCount: number;
275
+ showLabels: boolean;
278
276
  }> & Omit<Readonly<{
279
277
  items?: SearchItem[];
280
278
  model?: Record<string, any>;
281
279
  immediate?: boolean;
282
280
  disabled?: boolean;
283
281
  showLabels?: boolean;
284
- overflowCount?: number;
285
282
  }> & Readonly<{
286
283
  onSearch?: ((params: Record<string, any>) => any) | undefined;
287
284
  onReset?: (() => any) | undefined;
288
- }>, "search" | "reset" | "params" | ("immediate" | "disabled" | "items" | "overflowCount")> & {
285
+ }>, "search" | "reset" | "params" | ("immediate" | "disabled" | "items" | "showLabels")> & {
289
286
  params: Record<string, any>;
290
287
  search: () => Promise<void>;
291
288
  reset: () => Promise<void>;
@@ -447,7 +444,6 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
447
444
  readonly immediate?: boolean | undefined;
448
445
  readonly disabled?: boolean | undefined;
449
446
  readonly showLabels?: boolean | undefined;
450
- readonly overflowCount?: number | undefined;
451
447
  readonly onSearch?: ((params: Record<string, any>) => any) | undefined;
452
448
  readonly onReset?: (() => any) | undefined;
453
449
  } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps;
@@ -644,7 +640,6 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
644
640
  immediate?: boolean;
645
641
  disabled?: boolean;
646
642
  showLabels?: boolean;
647
- overflowCount?: number;
648
643
  }> & Readonly<{
649
644
  onSearch?: ((params: Record<string, any>) => any) | undefined;
650
645
  onReset?: (() => any) | undefined;
@@ -659,7 +654,7 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
659
654
  immediate: boolean;
660
655
  disabled: boolean;
661
656
  items: SearchItem[];
662
- overflowCount: number;
657
+ showLabels: boolean;
663
658
  }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
664
659
  beforeCreate?: (() => void) | (() => void)[];
665
660
  created?: (() => void) | (() => void)[];
@@ -684,18 +679,17 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
684
679
  immediate: boolean;
685
680
  disabled: boolean;
686
681
  items: SearchItem[];
687
- overflowCount: number;
682
+ showLabels: boolean;
688
683
  }> & Omit<Readonly<{
689
684
  items?: SearchItem[];
690
685
  model?: Record<string, any>;
691
686
  immediate?: boolean;
692
687
  disabled?: boolean;
693
688
  showLabels?: boolean;
694
- overflowCount?: number;
695
689
  }> & Readonly<{
696
690
  onSearch?: ((params: Record<string, any>) => any) | undefined;
697
691
  onReset?: (() => any) | undefined;
698
- }>, "search" | "reset" | "params" | ("immediate" | "disabled" | "items" | "overflowCount")> & {
692
+ }>, "search" | "reset" | "params" | ("immediate" | "disabled" | "items" | "showLabels")> & {
699
693
  params: Record<string, any>;
700
694
  search: () => Promise<void>;
701
695
  reset: () => Promise<void>;
@@ -22,8 +22,7 @@ const U = { class: "zl-search-table" }, R = "search-", ne = /* @__PURE__ */ E({
22
22
  const e = [], t = [];
23
23
  return Object.keys(k).forEach((a) => {
24
24
  if (a.startsWith(R)) {
25
- if (a === "search-actions")
26
- return;
25
+ if (a === "search-actions") return;
27
26
  t.push({ slot: a, subSlot: a.slice(R.length) });
28
27
  } else
29
28
  e.push(a);
@@ -34,7 +33,13 @@ const U = { class: "zl-search-table" }, R = "search-", ne = /* @__PURE__ */ E({
34
33
  ...s.request,
35
34
  options: Object.assign({ initialData: [] }, s.request.options, { manual: !0 })
36
35
  };
37
- }), { loading: A, data: C, run: I, params: _, refresh: j } = H(v.value.service, v.value.options), N = m(() => _.value?.[0]), O = p.dataKey ?? p["data-key"] ?? "rows", { data: D, pagination: l } = Q({
36
+ }), {
37
+ loading: A,
38
+ data: C,
39
+ run: I,
40
+ params: _,
41
+ refresh: j
42
+ } = H(v.value.service, v.value.options), N = m(() => _.value?.[0]), O = p.dataKey ?? p["data-key"] ?? "rows", { data: D, pagination: l } = Q({
38
43
  data: C,
39
44
  pagination: V(s, "pagination"),
40
45
  dataKey: O,
@@ -58,22 +63,28 @@ const U = { class: "zl-search-table" }, R = "search-", ne = /* @__PURE__ */ E({
58
63
  ), w({
59
64
  refresh: j,
60
65
  params: N,
61
- search: new Proxy({}, {
62
- get(e, t) {
63
- return !n.value && t === "search" ? o : n.value?.[t];
64
- },
65
- has(e, t) {
66
- return t in (n.value ?? {});
66
+ search: new Proxy(
67
+ {},
68
+ {
69
+ get(e, t) {
70
+ return !n.value && t === "search" ? o : n.value?.[t];
71
+ },
72
+ has(e, t) {
73
+ return t in (n.value ?? {});
74
+ }
67
75
  }
68
- }),
69
- table: new Proxy({}, {
70
- get(e, t) {
71
- return i.value?.[t];
72
- },
73
- has(e, t) {
74
- return t in (i.value ?? {});
76
+ ),
77
+ table: new Proxy(
78
+ {},
79
+ {
80
+ get(e, t) {
81
+ return i.value?.[t];
82
+ },
83
+ has(e, t) {
84
+ return t in (i.value ?? {});
85
+ }
75
86
  }
76
- })
87
+ )
77
88
  }), (e, t) => (y(), W("div", U, [
78
89
  r.queryItems.length || e.$slots.searchActions || e.$slots["search-actions"] ? (y(), Z(J, {
79
90
  key: 0,
@@ -1 +1 @@
1
- .zl-sorter-list[data-v-01b68d91]{display:flex}.zl-sorter-list__separator[data-v-01b68d91]{margin:4px 2px;width:1px;background-color:var(--zl-border-2, #e3e9ef)}.zl-sorter-list__separator[data-v-01b68d91]:last-child{display:none}
1
+ .zl-sorter-list[data-v-f56434ea]{display:flex}.zl-sorter-list__separator[data-v-f56434ea]{margin:4px 2px;width:1px;background-color:var(--zl-border-2, #e3e9ef)}.zl-sorter-list__separator[data-v-f56434ea]:last-child{display:none}
@@ -1,8 +1,8 @@
1
1
  import o from "./ZlSorterList2.vue.mjs";
2
2
  import './ZlSorterList.css';/* empty css */
3
3
  import t from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const s = /* @__PURE__ */ t(o, [["__scopeId", "data-v-01b68d91"]]);
4
+ const f = /* @__PURE__ */ t(o, [["__scopeId", "data-v-f56434ea"]]);
5
5
  export {
6
- s as default
6
+ f as default
7
7
  };
8
8
  //# sourceMappingURL=ZlSorterList.vue.mjs.map
@@ -1 +1 @@
1
- .zl-sorter[data-v-e1d99cfd]{display:inline-flex;align-items:center;cursor:pointer;gap:4px;font-size:12px;padding:1px 4px}.zl-sorter__label[data-v-e1d99cfd]{color:var(--zl-text-2, #4d5e7d)}.zl-sorter__label.active[data-v-e1d99cfd]{color:var(--zl-link-6, var(--el-color-primary, #3261ce))}.zl-sorter__icon[data-v-e1d99cfd]{display:inline-flex;flex-direction:column;font-size:8px;color:var(--zl-text-4, #b3c0cc)}.zl-sorter__icon .active[data-v-e1d99cfd]{color:var(--zl-link-6, var(--el-color-primary, #3261ce))}
1
+ .zl-sorter[data-v-b7ad4aa1]{display:inline-flex;align-items:center;cursor:pointer;gap:4px;font-size:12px;padding:1px 4px}.zl-sorter__label[data-v-b7ad4aa1]{color:var(--zl-text-2, #4d5e7d)}.zl-sorter__label.active[data-v-b7ad4aa1]{color:var(--zl-link-6, var(--el-color-primary, #3261ce))}.zl-sorter__icon[data-v-b7ad4aa1]{display:inline-flex;flex-direction:column;font-size:8px;color:var(--zl-text-4, #b3c0cc)}.zl-sorter__icon .active[data-v-b7ad4aa1]{color:var(--zl-link-6, var(--el-color-primary, #3261ce))}
@@ -1,8 +1,8 @@
1
1
  import o from "./index2.vue.mjs";
2
2
  import './index.css';/* empty css */
3
3
  import r from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const m = /* @__PURE__ */ r(o, [["__scopeId", "data-v-e1d99cfd"]]);
4
+ const p = /* @__PURE__ */ r(o, [["__scopeId", "data-v-b7ad4aa1"]]);
5
5
  export {
6
- m as default
6
+ p as default
7
7
  };
8
8
  //# sourceMappingURL=index.vue.mjs.map
@@ -35,18 +35,24 @@ const J = { class: "zl-table" }, M = { inheritAttrs: !1 }, ee = /* @__PURE__ */
35
35
  actions: Array.isArray(p) ? p : void 0,
36
36
  actionProps: a.actionProps,
37
37
  // arco 列属性兼容映射:ellipsis → EP showOverflowTooltip
38
- rest: { ...b !== void 0 ? { showOverflowTooltip: b !== !1 } : {}, ...R }
38
+ rest: {
39
+ ...b !== void 0 ? { showOverflowTooltip: b !== !1 } : {},
40
+ ...R
41
+ }
39
42
  };
40
43
  }));
41
44
  return C(
42
- new Proxy({}, {
43
- get(a, r) {
44
- return _.value?.[r];
45
- },
46
- has(a, r) {
47
- return r in (_.value ?? {});
45
+ new Proxy(
46
+ {},
47
+ {
48
+ get(a, r) {
49
+ return _.value?.[r];
50
+ },
51
+ has(a, r) {
52
+ return r in (_.value ?? {});
53
+ }
48
54
  }
49
- })
55
+ )
50
56
  ), (a, r) => {
51
57
  const n = w("el-table-column"), d = w("el-table"), p = D("loading");
52
58
  return o(), k("div", J, [
@@ -2,16 +2,22 @@ import { isArray as P, isPlainObject as d } from "@zl-ui-kit/utils";
2
2
  import { ref as r, computed as h, watch as z } from "vue";
3
3
  import { usePagination as b } from "../ZlPagination/usePagination.mjs";
4
4
  function C(c) {
5
- const { data: s, pagination: u, dataKey: p, emit: n } = c, g = b(() => u.value === void 0 ? {} : u.value), t = r([]), e = r({}), i = h(() => g.value ? Object.assign({}, g.value, e.value) : !1);
6
- z(s, (a) => {
7
- if (P(a))
8
- t.value = a;
9
- else if (d(a)) {
10
- t.value = a[p] ?? [];
11
- const { pageNum: o, pageSize: m, total: v } = a;
12
- e.value = { currentPage: o, pageSize: m, total: v };
13
- }
14
- }, { immediate: !0 });
5
+ const { data: s, pagination: u, dataKey: p, emit: n } = c, g = b(
6
+ () => u.value === void 0 ? {} : u.value
7
+ ), t = r([]), e = r({}), i = h(() => g.value ? Object.assign({}, g.value, e.value) : !1);
8
+ z(
9
+ s,
10
+ (a) => {
11
+ if (P(a))
12
+ t.value = a;
13
+ else if (d(a)) {
14
+ t.value = a[p] ?? [];
15
+ const { pageNum: o, pageSize: m, total: v } = a;
16
+ e.value = { currentPage: o, pageSize: m, total: v };
17
+ }
18
+ },
19
+ { immediate: !0 }
20
+ );
15
21
  function l(a) {
16
22
  const o = (i.value === !1 ? 30 : i.value.pageSize) ?? 30;
17
23
  n("pagination-change", { pageNum: a, pageSize: o }), n("page-change", a), e.value.currentPage = a;
@@ -13,22 +13,33 @@ const u = o({
13
13
  r(
14
14
  "el-tabs",
15
15
  {
16
- class: ["zl-tabs", { "zl-tabs-no-border": !e.border, "zl-tabs-fit": e.fit, "zl-tabs-dark-nav": e.darkNav }],
16
+ class: [
17
+ "zl-tabs",
18
+ {
19
+ "zl-tabs-no-border": !e.border,
20
+ "zl-tabs-fit": e.fit,
21
+ "zl-tabs-dark-nav": e.darkNav
22
+ }
23
+ ],
17
24
  ...d
18
25
  },
19
26
  {
20
27
  default: () => [
21
28
  ...e.tabs.map((n) => {
22
29
  const { key: t, title: s, ...f } = n;
23
- return r("el-tab-pane", {
24
- key: t,
25
- name: t,
26
- label: s,
27
- lazy: !0,
28
- ...f
29
- }, {
30
- default: () => l(a, t, { tab: n })
31
- });
30
+ return r(
31
+ "el-tab-pane",
32
+ {
33
+ key: t,
34
+ name: t,
35
+ label: s,
36
+ lazy: !0,
37
+ ...f
38
+ },
39
+ {
40
+ default: () => l(a, t, { tab: n })
41
+ }
42
+ );
32
43
  }),
33
44
  l(a, "default")
34
45
  ]
@@ -1 +1 @@
1
- .zl-text[data-v-9d75868c]{display:inline-flex;font-size:12px;line-height:20px}
1
+ .zl-text[data-v-d7c0d648]{display:inline-flex;font-size:12px;line-height:20px}
@@ -1,7 +1,7 @@
1
1
  import o from "./index2.vue.mjs";
2
2
  import './index.css';/* empty css */
3
3
  import t from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const _ = /* @__PURE__ */ t(o, [["__scopeId", "data-v-9d75868c"]]);
4
+ const _ = /* @__PURE__ */ t(o, [["__scopeId", "data-v-d7c0d648"]]);
5
5
  export {
6
6
  _ as default
7
7
  };
@@ -1 +1 @@
1
- .zl-title[data-v-0effbbb1]{--font-size: 14px;display:flex;align-items:center;gap:4px}.zl-title-size-small[data-v-0effbbb1]{--font-size: 12px}.zl-title-marker[data-v-0effbbb1]{position:relative;width:3px;align-self:stretch}.zl-title-marker[data-v-0effbbb1]:after{content:"";position:absolute;top:5px;bottom:5px;width:100%;background-color:var(--zl-primary-6, var(--el-color-primary, #3261ce));border-radius:3px}.zl-title-text[data-v-0effbbb1]{font-size:var(--font-size);font-weight:600;line-height:calc(var(--font-size) + 8px);color:var(--zl-text-1, #242e43)}.zl-title-tooltip[data-v-0effbbb1]{color:var(--zl-text-2, #4d5e7d)}.zl-title-description[data-v-0effbbb1]{font-size:12px;line-height:20px;color:var(--zl-text-3, #79879c)}
1
+ .zl-title[data-v-602ab94c]{--font-size: 14px;display:flex;align-items:center;gap:4px}.zl-title-size-small[data-v-602ab94c]{--font-size: 12px}.zl-title-marker[data-v-602ab94c]{position:relative;width:3px;align-self:stretch}.zl-title-marker[data-v-602ab94c]:after{content:"";position:absolute;top:5px;bottom:5px;width:100%;background-color:var(--zl-primary-6, var(--el-color-primary, #3261ce));border-radius:3px}.zl-title-text[data-v-602ab94c]{font-size:var(--font-size);font-weight:600;line-height:calc(var(--font-size) + 8px);color:var(--zl-text-1, #242e43)}.zl-title-tooltip[data-v-602ab94c]{color:var(--zl-text-2, #4d5e7d)}.zl-title-description[data-v-602ab94c]{font-size:12px;line-height:20px;color:var(--zl-text-3, #79879c)}
@@ -1,8 +1,8 @@
1
1
  import o from "./index2.vue.mjs";
2
2
  import './index.css';/* empty css */
3
3
  import t from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-0effbbb1"]]);
4
+ const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-602ab94c"]]);
5
5
  export {
6
- m as default
6
+ p as default
7
7
  };
8
8
  //# sourceMappingURL=index.vue.mjs.map
@@ -28,14 +28,19 @@ const Q = { class: "zl-tree" }, W = {
28
28
  return e ? String(t[o.fieldNames.title] ?? "").includes(e) : !0;
29
29
  }
30
30
  const B = r(() => o.filterTreeNode ?? w), T = r(() => o.fieldNames.key ?? "key"), p = r(() => !(m.data ?? []).length), C = ["icon", "title"], E = r(() => Object.keys(x).filter((e) => !C.includes(e)));
31
- return b(new Proxy({}, {
32
- get(e, t) {
33
- return i.value?.[t];
34
- },
35
- has(e, t) {
36
- return t in (i.value ?? {});
37
- }
38
- })), (e, t) => {
31
+ return b(
32
+ new Proxy(
33
+ {},
34
+ {
35
+ get(e, t) {
36
+ return i.value?.[t];
37
+ },
38
+ has(e, t) {
39
+ return t in (i.value ?? {});
40
+ }
41
+ }
42
+ )
43
+ ), (e, t) => {
39
44
  const Z = v("el-input"), A = v("el-tree"), D = j("loading");
40
45
  return y((u(), _("div", Q, [
41
46
  s.disableFilter ? N("", !0) : (u(), _("div", W, [
@@ -1 +1 @@
1
- .zl-tree-select[data-v-c93bd372]{width:100%}.zl-tree-select__all[data-v-c93bd372]{padding:4px 0 8px}.zl-tree-select[data-v-c93bd372] .el-tree-select .el-tree-node__label{font-size:12px}
1
+ .zl-tree-select[data-v-4f063b6f]{width:100%}.zl-tree-select__all[data-v-4f063b6f]{padding:4px 0 8px}.zl-tree-select[data-v-4f063b6f] .el-tree-select .el-tree-node__label{font-size:12px}
@@ -1,7 +1,7 @@
1
1
  import o from "./index2.vue.mjs";
2
2
  import './index.css';/* empty css */
3
3
  import t from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-c93bd372"]]);
4
+ const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-4f063b6f"]]);
5
5
  export {
6
6
  m as default
7
7
  };
@@ -1 +1 @@
1
- .zl-upload[data-v-cb9f2635]{width:100%}.zl-upload__trigger[data-v-cb9f2635]{width:80px;height:80px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--zl-border-3, var(--el-border-color));border-radius:6px;cursor:pointer}.zl-upload__trigger[data-v-cb9f2635]:hover{border-color:var(--zl-primary-6, var(--el-color-primary))}.zl-upload__item[data-v-cb9f2635]{display:flex;align-items:center;gap:8px;padding:4px 8px;width:100%}.zl-upload__item[data-v-cb9f2635]:hover{background:var(--zl-fill-1, var(--el-fill-color-light))}.zl-upload__item-thumbnail[data-v-cb9f2635]{height:32px;width:32px;object-fit:cover;cursor:pointer}.zl-upload__item-name[data-v-cb9f2635]{flex:1;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zl-upload__item-op[data-v-cb9f2635]{color:var(--zl-text-2)}.zl-upload__tip[data-v-cb9f2635]{font-size:12px;color:var(--zl-text-3);line-height:18px;white-space:pre-wrap;word-break:break-all}
1
+ .zl-upload[data-v-3c76b3ad]{width:100%}.zl-upload__trigger[data-v-3c76b3ad]{width:80px;height:80px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--zl-border-3, var(--el-border-color));border-radius:6px;cursor:pointer}.zl-upload__trigger[data-v-3c76b3ad]:hover{border-color:var(--zl-primary-6, var(--el-color-primary))}.zl-upload__item[data-v-3c76b3ad]{display:flex;align-items:center;gap:8px;padding:4px 8px;width:100%}.zl-upload__item[data-v-3c76b3ad]:hover{background:var(--zl-fill-1, var(--el-fill-color-light))}.zl-upload__item-thumbnail[data-v-3c76b3ad]{height:32px;width:32px;object-fit:cover;cursor:pointer}.zl-upload__item-name[data-v-3c76b3ad]{flex:1;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zl-upload__item-op[data-v-3c76b3ad]{color:var(--zl-text-2)}.zl-upload__tip[data-v-3c76b3ad]{font-size:12px;color:var(--zl-text-3);line-height:18px;white-space:pre-wrap;word-break:break-all}
@@ -1,8 +1,8 @@
1
1
  import o from "./index2.vue.mjs";
2
2
  import './index.css';/* empty css */
3
3
  import t from "../../_virtual/_plugin-vue_export-helper.mjs";
4
- const f = /* @__PURE__ */ t(o, [["__scopeId", "data-v-cb9f2635"]]);
4
+ const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-3c76b3ad"]]);
5
5
  export {
6
- f as default
6
+ m as default
7
7
  };
8
8
  //# sourceMappingURL=index.vue.mjs.map
package/dist/index.d.ts CHANGED
@@ -59,7 +59,7 @@ export { usePermission, usePermissionProvider } from './components/ZlPermission/
59
59
  export type { MenuItem } from './components/ZlAppMenu/AppMenu.vue';
60
60
  export type { ActionItem, FormItem, SearchItem, TableColumn } from './types';
61
61
  export type { IGridItem } from './components/ZlGrid/types';
62
- export type { IComponent, IComponentSlot, VForSlot, VModelSlot, ComponentOrSlot } from './components/ZlDynamicComponent/types';
62
+ export type { IComponent, IComponentSlot, VForSlot, VModelSlot, ComponentOrSlot, } from './components/ZlDynamicComponent/types';
63
63
  /**
64
64
  * 全量注册插件(app.use)
65
65
  * 表单类基础组件(el-input/el-select 等)建议宿主经 unplugin 自动引入或全量注册
@@ -14,6 +14,8 @@ const e = {
14
14
  "zl.search.search": "Search",
15
15
  "zl.search.filterConditions": "Filters",
16
16
  "zl.search.all": "All",
17
+ "zl.search.expand": "Expand",
18
+ "zl.search.collapse": "Collapse",
17
19
  "zl.login.username": "Username",
18
20
  "zl.login.password": "Password",
19
21
  "zl.login.usernamePlaceholder": "Please enter username",
@@ -1,13 +1,13 @@
1
1
  import e from "./en.mjs";
2
2
  import s from "./zh-cn.mjs";
3
- const z = {
3
+ const a = {
4
4
  zh: s,
5
5
  "zh-cn": s,
6
6
  en: e
7
7
  };
8
8
  export {
9
9
  e as zlEnMessages,
10
- z as zlMessages,
10
+ a as zlMessages,
11
11
  s as zlZhMessages
12
12
  };
13
13
  //# sourceMappingURL=messages.mjs.map
@@ -14,6 +14,8 @@ const l = {
14
14
  "zl.search.search": "查询",
15
15
  "zl.search.filterConditions": "筛选条件",
16
16
  "zl.search.all": "全部",
17
+ "zl.search.expand": "展开",
18
+ "zl.search.collapse": "收起",
17
19
  "zl.login.username": "用户名",
18
20
  "zl.login.password": "密码",
19
21
  "zl.login.usernamePlaceholder": "请输入用户名",
package/dist/types.d.ts CHANGED
@@ -2,9 +2,13 @@ import { ActionItem } from './components/ZlAction/types';
2
2
  export type { ActionItem };
3
3
  /** 表格列定义:label/prop(或 dataIndex)/slot/actions/columnSlot + el-table-column 其余属性 */
4
4
  export interface TableColumn {
5
+ /** 列标题(优先于 title) */
5
6
  label?: string;
7
+ /** 列标题(兼容 arco/antd 写法,label 缺省时生效) */
6
8
  title?: string;
9
+ /** 取值字段名(优先于 dataIndex) */
7
10
  prop?: string;
11
+ /** 取值字段名(兼容 arco/antd 写法,prop 缺省时生效) */
8
12
  dataIndex?: string;
9
13
  /** 单元格插槽名(缺省用 prop) */
10
14
  slot?: string | boolean;
@@ -12,6 +16,7 @@ export interface TableColumn {
12
16
  columnSlot?: boolean;
13
17
  /** 操作列(渲染 ZlActionList) */
14
18
  actions?: ActionItem[];
19
+ /** 透传给操作列 ZlActionList 的 props */
15
20
  actionProps?: Record<string, any>;
16
21
  [key: string]: any;
17
22
  }
@@ -19,6 +24,7 @@ export interface TableColumn {
19
24
  export interface FormItem {
20
25
  /** 字段名(必填) */
21
26
  model: string;
27
+ /** 标签文案(缺省用 model) */
22
28
  label?: string;
23
29
  /** 动态组件名/组件对象(如 'el-input'、ElSelect) */
24
30
  component?: string | any;
@@ -32,7 +38,9 @@ export interface FormItem {
32
38
  slot?: boolean;
33
39
  /** el-form-item 其余属性(rules 等) */
34
40
  formItemProps?: Record<string, any>;
41
+ /** 标签旁的问号提示文案 */
35
42
  tooltip?: string;
43
+ /** 显隐控制:布尔值或判定函数 */
36
44
  visible?: boolean | ((model: Record<string, any>, item: FormItem) => boolean);
37
45
  [key: string]: any;
38
46
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zl-ui-kit/components",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "type": "module",
5
5
  "description": "ZL UI 业务组件库(Element Plus 体系,Zl 前缀)——首批:Icon/AutoTooltip/Tag/CornerTag/Text/Title/Copy/Empty/Pagination/DictTag",
6
6
  "license": "MIT",
@@ -39,9 +39,9 @@
39
39
  "file-type": "^20.4.1",
40
40
  "dt-sql-parser": "^4.3.1",
41
41
  "sql-formatter": "^15.4.2",
42
- "@zl-ui-kit/composables": "0.5.0",
43
- "@zl-ui-kit/icons": "0.5.0",
44
- "@zl-ui-kit/utils": "0.5.0"
42
+ "@zl-ui-kit/composables": "0.6.0",
43
+ "@zl-ui-kit/icons": "0.6.0",
44
+ "@zl-ui-kit/utils": "0.6.0"
45
45
  },
46
46
  "peerDependencies": {
47
47
  "@vueuse/core": "^12.3.0",
@@ -98,10 +98,10 @@
98
98
  "@vue-office/pdf": "^2.0.10",
99
99
  "@vue-office/pptx": "1.0.1",
100
100
  "echarts": "^5.6.0",
101
- "@jichuang/eslint-config": "1.0.0",
102
- "@jichuang/vite-config": "1.0.0",
103
101
  "@jichuang/tsconfig": "1.0.0",
104
- "@zl-ui-kit/theme": "0.5.0"
102
+ "@jichuang/vite-config": "1.0.0",
103
+ "@jichuang/eslint-config": "1.0.0",
104
+ "@zl-ui-kit/theme": "0.6.0"
105
105
  },
106
106
  "repository": {
107
107
  "type": "git",