@zl-ui-kit/components 0.22.1 → 0.24.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.
@@ -1,26 +1,27 @@
1
- import { defineComponent as le, computed as d, useSlots as ae, ref as w, watch as te, nextTick as L, resolveComponent as se, openBlock as c, createElementBlock as f, createElementVNode as C, createVNode as t, withModifiers as F, createSlots as M, withCtx as s, createTextVNode as p, toDisplayString as h, renderList as P, renderSlot as $, normalizeProps as R, guardReactiveProps as N, unref as o, createBlock as O, createCommentVNode as v, Fragment as oe, Transition as re } from "vue";
2
- import { useZlT as ie } from "@zl-ui-kit/composables";
3
- import { isArray as ne, isPlainObject as ce } from "@zl-ui-kit/utils";
4
- import I from "../ZlAutoTooltip/index.vue.mjs";
5
- import A from "../ZlForm/index.vue.mjs";
1
+ import { defineComponent as le, computed as u, useSlots as ae, ref as w, watch as te, nextTick as L, openBlock as n, createElementBlock as h, createElementVNode as g, createVNode as s, withModifiers as j, createSlots as F, withCtx as t, createTextVNode as m, toDisplayString as c, renderList as x, renderSlot as $, normalizeProps as M, guardReactiveProps as R, unref as o, createBlock as N, createCommentVNode as v, Fragment as se, Transition as oe } from "vue";
2
+ import { useZlT as re } from "@zl-ui-kit/composables";
3
+ import { isArray as ie, isPlainObject as ne } from "@zl-ui-kit/utils";
4
+ import O from "../ZlAutoTooltip/index.vue.mjs";
5
+ import b from "../ZlButton/index.vue.mjs";
6
+ import I from "../ZlForm/index.vue.mjs";
6
7
  import '../ZlTag/index.css';import '../ZlForm/index.css';/* empty css */
7
- import g from "../ZlIcon/index.vue.mjs";
8
+ import A from "../ZlIcon/index.vue.mjs";
8
9
  import q from "../ZlTag/index.vue.mjs";
9
10
  /* empty css */
10
- import { useSearchFormOverflow as ue } from "./useSearchFormOverflow.mjs";
11
- const de = { class: "zl-search" }, me = {
11
+ import { useSearchFormOverflow as ce } from "./useSearchFormOverflow.mjs";
12
+ const de = { class: "zl-search" }, ue = {
12
13
  key: 0,
13
14
  class: "zl-search-search"
14
- }, fe = { class: "zl-search-search-single" }, he = { class: "zl-search-form-actions" }, be = {
15
+ }, me = { class: "zl-search-search-single" }, fe = { class: "zl-search-form-actions" }, he = {
15
16
  key: 0,
16
17
  class: "zl-search-label"
17
18
  }, pe = { class: "zl-search-label__summary" }, ve = {
18
19
  key: 0,
19
20
  class: "zl-search-search-multiple"
20
- }, _e = { class: "zl-search-form-actions" }, ye = {
21
+ }, be = { class: "zl-search-form-actions" }, _e = {
21
22
  key: 1,
22
23
  class: "zl-search__actions"
23
- }, $e = /* @__PURE__ */ le({
24
+ }, Be = /* @__PURE__ */ le({
24
25
  name: "ZlSearch",
25
26
  __name: "index",
26
27
  props: {
@@ -34,249 +35,242 @@ const de = { class: "zl-search" }, me = {
34
35
  },
35
36
  emits: ["search", "reset"],
36
37
  setup(_, { expose: D, emit: G }) {
37
- const { t: r } = ie(), u = _, B = G, E = d(
38
+ const { t: r } = re(), d = _, P = G, B = u(
38
39
  () => Object.keys(ae()).filter((e) => e !== "label" && e !== "actions")
39
- ), k = w(null), S = w(null), n = w(!1), { lastVisibleIndex: T, measure: H } = ue(k), J = d(() => {
40
+ ), k = w(null), C = w(null), i = w(!1), { lastVisibleIndex: E, measure: H } = ce(k), J = u(() => {
40
41
  const e = {};
41
- for (const l of u.items)
42
+ for (const l of d.items)
42
43
  e[l.model] = typeof l.toLabel == "function" ? l.toLabel : X;
43
44
  return e;
44
- }), K = d(() => {
45
+ }), K = u(() => {
45
46
  const e = {};
46
- for (const l of u.items)
47
+ for (const l of d.items)
47
48
  typeof l.toParams == "function" && (e[l.model] = l.toParams);
48
49
  return e;
49
- }), b = d(() => {
50
+ }), p = u(() => {
50
51
  const e = [];
51
- for (const l of u.items) {
52
+ for (const l of d.items) {
52
53
  if (!l.model)
53
54
  throw new Error("[ZlSearch]: form item's model is required!");
54
55
  if (!W(l))
55
56
  continue;
56
- const { toLabel: i, toParams: a, visible: z, ...ee } = l;
57
+ const { toLabel: a, toParams: z, visible: ye, ...ee } = l;
57
58
  e.push(ee);
58
59
  }
59
60
  return e;
60
- }), Q = w(u.model ?? {}), m = d(() => u.model ?? Q.value), Z = d(() => b.value.reduce((e, l) => {
61
- const i = K.value[l.model];
62
- return i ? Object.assign(e, i(m.value[l.model], e)) : { ...e, [l.model]: m.value[l.model] };
63
- }, {})), j = d(() => b.value.map((e) => ({
64
- labelValue: J.value[e.model](m.value[e.model]),
61
+ }), Q = w(d.model ?? {}), f = u(() => d.model ?? Q.value), T = u(() => p.value.reduce((e, l) => {
62
+ const a = K.value[l.model];
63
+ return a ? Object.assign(e, a(f.value[l.model], e)) : { ...e, [l.model]: f.value[l.model] };
64
+ }, {})), Z = u(() => p.value.map((e) => ({
65
+ labelValue: J.value[e.model](f.value[e.model]),
65
66
  model: e.model,
66
67
  label: e.label
67
- })).filter((e) => e.labelValue)), U = d(
68
- () => u.labelsVisible ?? u.showLabels ?? T.value !== null
68
+ })).filter((e) => e.labelValue)), U = u(
69
+ () => d.labelsVisible ?? d.showLabels ?? E.value !== null
69
70
  );
70
71
  function W(e) {
71
72
  const l = e.visible;
72
- return l === void 0 ? !0 : l === !1 || typeof l == "function" && !l(m.value, e) ? !1 : !!l;
73
+ return l === void 0 ? !0 : l === !1 || typeof l == "function" && !l(f.value, e) ? !1 : !!l;
73
74
  }
74
75
  function X(e) {
75
- return ne(e) ? e.join(", ") : ce(e) ? e.label : e;
76
+ return ie(e) ? e.join(", ") : ne(e) ? e.label : e;
76
77
  }
77
- async function V() {
78
- n.value && (n.value = !1), B("search", Z.value);
78
+ async function S() {
79
+ i.value && (i.value = !1), P("search", T.value);
79
80
  }
80
81
  async function y() {
81
82
  try {
82
- await (n.value ? S.value : k.value)?.validate(), V();
83
+ await (i.value ? C.value : k.value)?.validate(), S();
83
84
  } catch {
84
85
  }
85
86
  }
86
- async function x() {
87
+ async function V() {
87
88
  try {
88
- const e = n.value ? S.value : k.value;
89
+ const e = i.value ? C.value : k.value;
89
90
  e?.resetFields(), await L(), await e?.validate().catch(() => {
90
- }), B("reset"), await L(), V();
91
+ }), P("reset"), await L(), S();
91
92
  } catch (e) {
92
93
  console.error("[ZlSearch] reset validate error", e);
93
94
  }
94
95
  }
95
96
  function Y(e) {
96
- delete m.value[e.model];
97
+ delete f.value[e.model];
97
98
  }
98
99
  return te(
99
- () => b.value.map((e) => e.model).join(","),
100
+ () => p.value.map((e) => e.model).join(","),
100
101
  async () => {
101
102
  await L(), H();
102
103
  }
103
- ), u.immediate && (async () => (await L(), y()))(), D({
104
+ ), d.immediate && (async () => (await L(), y()))(), D({
104
105
  /** 当前查询表单值(已按各项 `toParams` 转换),可直接当请求入参 */
105
- params: Z,
106
+ params: T,
106
107
  /** 收起展开态并触发 `search` 事件(本身不做校验,带校验的查询走组件内查询按钮) */
107
- search: V,
108
+ search: S,
108
109
  /** 重置表单并清除校验提示,随后触发 `reset` 事件与一次 `search` */
109
- reset: x
110
- }), (e, l) => {
111
- const i = se("el-button");
112
- return c(), f("div", de, [
113
- b.value.length ? (c(), f("div", me, [
114
- C("div", fe, [
115
- t(A, {
116
- ref_key: "formRef",
117
- ref: k,
118
- class: "zl-search-form",
119
- model: m.value,
120
- items: b.value,
121
- disabled: _.disabled,
122
- "hide-empty-label": _.hideEmptyLabel,
123
- onSubmit: F(y, ["prevent"])
124
- }, M({
125
- label: s(({ label: a }) => [
126
- t(I, null, {
127
- default: s(() => [
128
- p(h(a), 1)
129
- ]),
130
- _: 2
131
- }, 1024)
132
- ]),
133
- _: 2
134
- }, [
135
- P(E.value, (a) => ({
136
- name: a,
137
- fn: s((z) => [
138
- $(e.$slots, a, R(N(z)))
139
- ])
140
- }))
141
- ]), 1032, ["model", "items", "disabled", "hide-empty-label"]),
142
- C("div", he, [
143
- t(i, {
144
- class: "zl-search-form-actions__reset",
145
- title: o(r)("zl.search.reset", "重置"),
146
- "aria-label": o(r)("zl.search.reset", "重置"),
147
- onClick: x
148
- }, {
149
- icon: s(() => [
150
- t(g, { icon: "zl:reset" })
151
- ]),
152
- _: 1
153
- }, 8, ["title", "aria-label"]),
154
- o(T) !== null ? (c(), O(i, {
155
- key: 0,
156
- class: "zl-search-form-actions__toggle",
157
- title: o(r)("zl.search.expand", "展开"),
158
- "aria-label": o(r)("zl.search.expand", "展开"),
159
- "aria-expanded": n.value,
160
- onClick: l[0] || (l[0] = (a) => n.value = !0)
161
- }, {
162
- icon: s(() => [
163
- t(g, { icon: "zl:filter-color" })
164
- ]),
165
- _: 1
166
- }, 8, ["title", "aria-label", "aria-expanded"])) : v("", !0),
167
- t(i, {
168
- type: "primary",
169
- onClick: y
170
- }, {
171
- default: s(() => [
172
- p(h(o(r)("zl.search.search", "查询")), 1)
110
+ reset: V
111
+ }), (e, l) => (n(), h("div", de, [
112
+ p.value.length ? (n(), h("div", ue, [
113
+ g("div", me, [
114
+ s(I, {
115
+ ref_key: "formRef",
116
+ ref: k,
117
+ class: "zl-search-form",
118
+ model: f.value,
119
+ items: p.value,
120
+ disabled: _.disabled,
121
+ "hide-empty-label": _.hideEmptyLabel,
122
+ onSubmit: j(y, ["prevent"])
123
+ }, F({
124
+ label: t(({ label: a }) => [
125
+ s(O, null, {
126
+ default: t(() => [
127
+ m(c(a), 1)
173
128
  ]),
174
- _: 1
175
- })
176
- ])
177
- ]),
178
- U.value ? (c(), f("div", be, [
179
- C("div", pe, h(o(r)("zl.search.filterConditions", "筛选条件")), 1),
180
- j.value.length === 0 ? (c(), O(q, { key: 0 }, {
181
- default: s(() => [
182
- p(h(o(r)("zl.search.all", "全部")), 1)
129
+ _: 2
130
+ }, 1024)
131
+ ]),
132
+ _: 2
133
+ }, [
134
+ x(B.value, (a) => ({
135
+ name: a,
136
+ fn: t((z) => [
137
+ $(e.$slots, a, M(R(z)))
138
+ ])
139
+ }))
140
+ ]), 1032, ["model", "items", "disabled", "hide-empty-label"]),
141
+ g("div", fe, [
142
+ s(b, {
143
+ type: "primary",
144
+ onClick: y
145
+ }, {
146
+ default: t(() => [
147
+ m(c(o(r)("zl.search.search", "搜索")), 1)
148
+ ]),
149
+ _: 1
150
+ }),
151
+ o(E) !== null ? (n(), N(b, {
152
+ key: 0,
153
+ class: "zl-search-form-actions__toggle",
154
+ title: o(r)("zl.search.expand", "展开"),
155
+ "aria-label": o(r)("zl.search.expand", "展开"),
156
+ "aria-expanded": i.value,
157
+ onClick: l[0] || (l[0] = (a) => i.value = !0)
158
+ }, {
159
+ icon: t(() => [
160
+ s(A, { icon: "zl:filter-color" })
161
+ ]),
162
+ _: 1
163
+ }, 8, ["title", "aria-label", "aria-expanded"])) : v("", !0),
164
+ s(b, {
165
+ class: "zl-search-form-actions__reset",
166
+ onClick: V
167
+ }, {
168
+ default: t(() => [
169
+ m(c(o(r)("zl.search.reset", "重置")), 1)
183
170
  ]),
184
171
  _: 1
185
- })) : v("", !0),
186
- (c(!0), f(oe, null, P(j.value, (a) => (c(), f("div", {
187
- key: a.model,
188
- class: "zl-search-label-item"
189
- }, [
190
- t(q, {
191
- closable: "",
192
- fill: "",
193
- color: "primary",
194
- onClose: (z) => Y(a)
195
- }, {
196
- default: s(() => [
197
- p(h(a.labelValue), 1)
172
+ })
173
+ ])
174
+ ]),
175
+ U.value ? (n(), h("div", he, [
176
+ g("div", pe, c(o(r)("zl.search.filterConditions", "筛选条件")), 1),
177
+ Z.value.length === 0 ? (n(), N(q, { key: 0 }, {
178
+ default: t(() => [
179
+ m(c(o(r)("zl.search.all", "全部")), 1)
180
+ ]),
181
+ _: 1
182
+ })) : v("", !0),
183
+ (n(!0), h(se, null, x(Z.value, (a) => (n(), h("div", {
184
+ key: a.model,
185
+ class: "zl-search-label-item"
186
+ }, [
187
+ s(q, {
188
+ closable: "",
189
+ fill: "",
190
+ color: "primary",
191
+ onClose: (z) => Y(a)
192
+ }, {
193
+ default: t(() => [
194
+ m(c(a.labelValue), 1)
195
+ ]),
196
+ _: 2
197
+ }, 1032, ["onClose"])
198
+ ]))), 128))
199
+ ])) : v("", !0),
200
+ s(oe, { name: "zl-search-fade-slide" }, {
201
+ default: t(() => [
202
+ i.value ? (n(), h("div", ve, [
203
+ s(I, {
204
+ ref_key: "multipleFormRef",
205
+ ref: C,
206
+ class: "zl-search-form",
207
+ model: f.value,
208
+ items: p.value,
209
+ disabled: _.disabled,
210
+ "hide-empty-label": _.hideEmptyLabel,
211
+ onSubmit: j(y, ["prevent"])
212
+ }, F({
213
+ label: t(({ label: a }) => [
214
+ s(O, null, {
215
+ default: t(() => [
216
+ m(c(a), 1)
217
+ ]),
218
+ _: 2
219
+ }, 1024)
198
220
  ]),
199
221
  _: 2
200
- }, 1032, ["onClose"])
201
- ]))), 128))
202
- ])) : v("", !0),
203
- t(re, { name: "zl-search-fade-slide" }, {
204
- default: s(() => [
205
- n.value ? (c(), f("div", ve, [
206
- t(A, {
207
- ref_key: "multipleFormRef",
208
- ref: S,
209
- class: "zl-search-form",
210
- model: m.value,
211
- items: b.value,
212
- disabled: _.disabled,
213
- "hide-empty-label": _.hideEmptyLabel,
214
- onSubmit: F(y, ["prevent"])
215
- }, M({
216
- label: s(({ label: a }) => [
217
- t(I, null, {
218
- default: s(() => [
219
- p(h(a), 1)
220
- ]),
221
- _: 2
222
- }, 1024)
222
+ }, [
223
+ x(B.value, (a) => ({
224
+ name: a,
225
+ fn: t((z) => [
226
+ $(e.$slots, a, M(R(z)))
227
+ ])
228
+ }))
229
+ ]), 1032, ["model", "items", "disabled", "hide-empty-label"]),
230
+ g("div", be, [
231
+ s(b, {
232
+ type: "primary",
233
+ onClick: y
234
+ }, {
235
+ default: t(() => [
236
+ m(c(o(r)("zl.search.search", "搜索")), 1)
223
237
  ]),
224
- _: 2
225
- }, [
226
- P(E.value, (a) => ({
227
- name: a,
228
- fn: s((z) => [
229
- $(e.$slots, a, R(N(z)))
230
- ])
231
- }))
232
- ]), 1032, ["model", "items", "disabled", "hide-empty-label"]),
233
- C("div", _e, [
234
- t(i, {
235
- class: "zl-search-form-actions__reset",
236
- title: o(r)("zl.search.reset", "重置"),
237
- "aria-label": o(r)("zl.search.reset", "重置"),
238
- onClick: x
239
- }, {
240
- icon: s(() => [
241
- t(g, { icon: "zl:reset" })
242
- ]),
243
- _: 1
244
- }, 8, ["title", "aria-label"]),
245
- t(i, {
246
- class: "zl-search-form-actions__toggle",
247
- title: o(r)("zl.search.collapse", "收起"),
248
- "aria-label": o(r)("zl.search.collapse", "收起"),
249
- "aria-expanded": n.value,
250
- onClick: l[1] || (l[1] = (a) => n.value = !1)
251
- }, {
252
- icon: s(() => [
253
- t(g, { icon: "zl:filter-color" })
254
- ]),
255
- _: 1
256
- }, 8, ["title", "aria-label", "aria-expanded"]),
257
- t(i, {
258
- type: "primary",
259
- onClick: y
260
- }, {
261
- default: s(() => [
262
- p(h(o(r)("zl.search.search", "查询")), 1)
263
- ]),
264
- _: 1
265
- })
266
- ])
267
- ])) : v("", !0)
268
- ]),
269
- _: 3
270
- })
271
- ])) : v("", !0),
272
- e.$slots.actions ? (c(), f("div", ye, [
273
- $(e.$slots, "actions")
274
- ])) : v("", !0)
275
- ]);
276
- };
238
+ _: 1
239
+ }),
240
+ s(b, {
241
+ class: "zl-search-form-actions__toggle",
242
+ title: o(r)("zl.search.collapse", "收起"),
243
+ "aria-label": o(r)("zl.search.collapse", "收起"),
244
+ "aria-expanded": i.value,
245
+ onClick: l[1] || (l[1] = (a) => i.value = !1)
246
+ }, {
247
+ icon: t(() => [
248
+ s(A, { icon: "zl:filter-color" })
249
+ ]),
250
+ _: 1
251
+ }, 8, ["title", "aria-label", "aria-expanded"]),
252
+ s(b, {
253
+ class: "zl-search-form-actions__reset",
254
+ onClick: V
255
+ }, {
256
+ default: t(() => [
257
+ m(c(o(r)("zl.search.reset", "重置")), 1)
258
+ ]),
259
+ _: 1
260
+ })
261
+ ])
262
+ ])) : v("", !0)
263
+ ]),
264
+ _: 3
265
+ })
266
+ ])) : v("", !0),
267
+ e.$slots.actions ? (n(), h("div", _e, [
268
+ $(e.$slots, "actions")
269
+ ])) : v("", !0)
270
+ ]));
277
271
  }
278
272
  });
279
273
  export {
280
- $e as default
274
+ Be as default
281
275
  };
282
276
  //# sourceMappingURL=index.vue.mjs.map
@@ -14,7 +14,7 @@ const l = {
14
14
  "zl.upload.limit": "最多可上传{limit}个",
15
15
  "zl.upload.maxSize": "大小不超过{maxSize}MB",
16
16
  "zl.upload.nameSpace": "文件名中不得包含空格",
17
- "zl.search.search": "查询",
17
+ "zl.search.search": "搜索",
18
18
  "zl.search.reset": "重置",
19
19
  "zl.search.filterConditions": "筛选条件",
20
20
  "zl.search.all": "全部",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zl-ui-kit/components",
3
- "version": "0.22.1",
3
+ "version": "0.24.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.22.1",
43
- "@zl-ui-kit/icons": "0.22.1",
44
- "@zl-ui-kit/utils": "0.22.1"
42
+ "@zl-ui-kit/composables": "0.24.0",
43
+ "@zl-ui-kit/icons": "0.24.0",
44
+ "@zl-ui-kit/utils": "0.24.0"
45
45
  },
46
46
  "peerDependencies": {
47
47
  "@vueuse/core": "^12.3.0 || ^13.0.0 || ^14.0.0 || ^15.0.0",
@@ -99,10 +99,10 @@
99
99
  "@vue-office/pdf": "^2.0.10",
100
100
  "@vue-office/pptx": "1.0.1",
101
101
  "echarts": "^5.6.0",
102
+ "@jichuang/eslint-config": "1.0.0",
102
103
  "@jichuang/tsconfig": "1.0.0",
103
104
  "@jichuang/vite-config": "1.0.0",
104
- "@jichuang/eslint-config": "1.0.0",
105
- "@zl-ui-kit/theme": "0.22.1"
105
+ "@zl-ui-kit/theme": "0.24.0"
106
106
  },
107
107
  "repository": {
108
108
  "type": "git",