joy-admin-components 0.1.32 → 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.
@@ -1,47 +1,502 @@
1
- import { ElForm as Se, ElRow as xe, ElCol as Te, dayjs as re } from "element-plus";
2
- import { defineComponent as ce, ref as F, onMounted as ue, h as X, mergeModels as ie, useAttrs as De, useModel as Oe, computed as J, resolveComponent as x, openBlock as w, createBlock as D, mergeProps as W, unref as B, withCtx as T, renderSlot as Y, createVNode as E, createTextVNode as R, toDisplayString as H, createCommentVNode as P, createElementBlock as A, Fragment as te, renderList as fe, withModifiers as ne, nextTick as de, createElementVNode as M, resolveDynamicComponent as he, withKeys as ze, normalizeStyle as Ee, normalizeClass as oe, reactive as ee, onUnmounted as Ue } from "vue";
3
- import { difference as Ie, debounce as ge, cloneDeep as Ve } from "lodash";
4
- import { useI18n as ae } from "vue-i18n";
5
- import V from "crypto-js";
6
- import { saveAs as Fe } from "file-saver";
7
- import me from "exceljs";
8
- import pe from "dayjs";
9
- const vt = ce({
1
+ import { ElForm as ft, ElRow as ht, ElCol as mt, ElInputNumber as pt, ElText as gt, ElLink as Ue } from "element-plus";
2
+ import { defineComponent as Ye, ref as q, onMounted as He, h as xe, mergeModels as je, useAttrs as vt, useModel as bt, computed as ue, resolveComponent as O, openBlock as T, createBlock as U, mergeProps as pe, unref as K, withCtx as M, renderSlot as se, createVNode as G, createTextVNode as te, toDisplayString as ne, createCommentVNode as ie, createElementBlock as re, Fragment as _e, renderList as Ne, withModifiers as $e, createElementVNode as ae, resolveDynamicComponent as Ke, withKeys as yt, normalizeStyle as Ct, normalizeClass as Se, reactive as ve, nextTick as we, onUnmounted as xt, watch as Ze } from "vue";
3
+ import { saveAs as wt } from "file-saver";
4
+ import Ge from "exceljs";
5
+ import Je, { dayjs as qe } from "dayjs";
6
+ import { createI18n as kt, useI18n as de } from "vue-i18n";
7
+ import { debounce as We, cloneDeep as Qe, isArray as Pe } from "lodash";
8
+ import ee from "crypto-js";
9
+ import { createNamespacedHelpers as Fe, useStore as Xe, mapState as _t, mapGetters as $t, mapActions as St } from "vuex";
10
+ import { VxeUI as me } from "vxe-pc-ui";
11
+ import { useRouter as Et } from "vue-router";
12
+ const gn = Ye({
10
13
  name: "LayOutForm",
11
- setup(n, { slots: e, attrs: t, emit: o }) {
12
- const a = F(null), c = () => e.default ? e.default().filter((u) => u.type !== Symbol.for("v-cmt")).map((u) => u.type === Symbol.for("v-fgt") ? u.children : u).flat().map(
13
- (u) => {
14
- var r;
15
- return X(
16
- Te,
17
- { span: ((r = u.props) == null ? void 0 : r.span) || 24 },
14
+ setup(n, { slots: e, attrs: t, emit: l }) {
15
+ const o = q(null), r = () => e.default ? e.default().filter((c) => c.type !== Symbol.for("v-cmt")).map((c) => c.type === Symbol.for("v-fgt") ? c.children : c).flat().map(
16
+ (c) => {
17
+ var s;
18
+ return xe(
19
+ mt,
20
+ { span: ((s = c.props) == null ? void 0 : s.span) || 24 },
18
21
  {
19
- default: () => u
22
+ default: () => c
20
23
  }
21
24
  );
22
25
  }
23
26
  ) : null;
24
- ue(() => {
25
- o("ref", a.value);
27
+ He(() => {
28
+ l("ref", o.value);
26
29
  });
27
- function l() {
28
- return X(
29
- Se,
30
- { ...t, ref: a },
31
- () => X(xe, { gutter: t.gutter ?? 20 }, { default: () => c() })
30
+ function a() {
31
+ return xe(
32
+ ft,
33
+ { ...t, ref: o },
34
+ () => xe(ht, { gutter: t.gutter ?? 20 }, { default: () => r() })
32
35
  );
33
36
  }
34
- return l;
37
+ return a;
35
38
  }
36
39
  });
37
- const K = (n, e) => {
40
+ var et = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
41
+ function tt(n) {
42
+ return n && n.__esModule && Object.prototype.hasOwnProperty.call(n, "default") ? n.default : n;
43
+ }
44
+ var nt = { exports: {} };
45
+ (function(n, e) {
46
+ (function(t, l) {
47
+ n.exports = l();
48
+ })(et, function() {
49
+ var t = "minute", l = /[+-]\d\d(?::?\d\d)?/g, o = /([+-]|\d\d)/g;
50
+ return function(r, a, c) {
51
+ var s = a.prototype;
52
+ c.utc = function(u) {
53
+ var f = { date: u, utc: !0, args: arguments };
54
+ return new a(f);
55
+ }, s.utc = function(u) {
56
+ var f = c(this.toDate(), { locale: this.$L, utc: !0 });
57
+ return u ? f.add(this.utcOffset(), t) : f;
58
+ }, s.local = function() {
59
+ return c(this.toDate(), { locale: this.$L, utc: !1 });
60
+ };
61
+ var v = s.parse;
62
+ s.parse = function(u) {
63
+ u.utc && (this.$u = !0), this.$utils().u(u.$offset) || (this.$offset = u.$offset), v.call(this, u);
64
+ };
65
+ var p = s.init;
66
+ s.init = function() {
67
+ if (this.$u) {
68
+ var u = this.$d;
69
+ this.$y = u.getUTCFullYear(), this.$M = u.getUTCMonth(), this.$D = u.getUTCDate(), this.$W = u.getUTCDay(), this.$H = u.getUTCHours(), this.$m = u.getUTCMinutes(), this.$s = u.getUTCSeconds(), this.$ms = u.getUTCMilliseconds();
70
+ } else
71
+ p.call(this);
72
+ };
73
+ var k = s.utcOffset;
74
+ s.utcOffset = function(u, f) {
75
+ var $ = this.$utils().u;
76
+ if ($(u))
77
+ return this.$u ? 0 : $(this.$offset) ? k.call(this) : this.$offset;
78
+ if (typeof u == "string" && (u = function(F) {
79
+ F === void 0 && (F = "");
80
+ var Y = F.match(l);
81
+ if (!Y)
82
+ return null;
83
+ var _ = ("" + Y[0]).match(o) || ["-", 0, 0], y = _[0], g = 60 * +_[1] + +_[2];
84
+ return g === 0 ? 0 : y === "+" ? g : -g;
85
+ }(u), u === null))
86
+ return this;
87
+ var h = Math.abs(u) <= 16 ? 60 * u : u;
88
+ if (h === 0)
89
+ return this.utc(f);
90
+ var m = this.clone();
91
+ if (f)
92
+ return m.$offset = h, m.$u = !1, m;
93
+ var E = this.$u ? this.toDate().getTimezoneOffset() : -1 * this.utcOffset();
94
+ return (m = this.local().add(h + E, t)).$offset = h, m.$x.$localOffset = E, m;
95
+ };
96
+ var x = s.format;
97
+ s.format = function(u) {
98
+ var f = u || (this.$u ? "YYYY-MM-DDTHH:mm:ss[Z]" : "");
99
+ return x.call(this, f);
100
+ }, s.valueOf = function() {
101
+ var u = this.$utils().u(this.$offset) ? 0 : this.$offset + (this.$x.$localOffset || this.$d.getTimezoneOffset());
102
+ return this.$d.valueOf() - 6e4 * u;
103
+ }, s.isUTC = function() {
104
+ return !!this.$u;
105
+ }, s.toISOString = function() {
106
+ return this.toDate().toISOString();
107
+ }, s.toString = function() {
108
+ return this.toDate().toUTCString();
109
+ };
110
+ var w = s.toDate;
111
+ s.toDate = function(u) {
112
+ return u === "s" && this.$offset ? c(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate() : w.call(this);
113
+ };
114
+ var b = s.diff;
115
+ s.diff = function(u, f, $) {
116
+ if (u && this.$u === u.$u)
117
+ return b.call(this, u, f, $);
118
+ var h = this.local(), m = c(u).local();
119
+ return b.call(h, m, f, $);
120
+ };
121
+ };
122
+ });
123
+ })(nt);
124
+ var It = nt.exports;
125
+ const Tt = /* @__PURE__ */ tt(It);
126
+ var ot = { exports: {} };
127
+ (function(n, e) {
128
+ (function(t, l) {
129
+ n.exports = l();
130
+ })(et, function() {
131
+ var t = { year: 0, month: 1, day: 2, hour: 3, minute: 4, second: 5 }, l = {};
132
+ return function(o, r, a) {
133
+ var c, s = function(x, w, b) {
134
+ b === void 0 && (b = {});
135
+ var u = new Date(x), f = function($, h) {
136
+ h === void 0 && (h = {});
137
+ var m = h.timeZoneName || "short", E = $ + "|" + m, F = l[E];
138
+ return F || (F = new Intl.DateTimeFormat("en-US", { hour12: !1, timeZone: $, year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit", timeZoneName: m }), l[E] = F), F;
139
+ }(w, b);
140
+ return f.formatToParts(u);
141
+ }, v = function(x, w) {
142
+ for (var b = s(x, w), u = [], f = 0; f < b.length; f += 1) {
143
+ var $ = b[f], h = $.type, m = $.value, E = t[h];
144
+ E >= 0 && (u[E] = parseInt(m, 10));
145
+ }
146
+ var F = u[3], Y = F === 24 ? 0 : F, _ = u[0] + "-" + u[1] + "-" + u[2] + " " + Y + ":" + u[4] + ":" + u[5] + ":000", y = +x;
147
+ return (a.utc(_).valueOf() - (y -= y % 1e3)) / 6e4;
148
+ }, p = r.prototype;
149
+ p.tz = function(x, w) {
150
+ x === void 0 && (x = c);
151
+ var b, u = this.utcOffset(), f = this.toDate(), $ = f.toLocaleString("en-US", { timeZone: x }), h = Math.round((f - new Date($)) / 1e3 / 60), m = 15 * -Math.round(f.getTimezoneOffset() / 15) - h;
152
+ if (!Number(m))
153
+ b = this.utcOffset(0, w);
154
+ else if (b = a($, { locale: this.$L }).$set("millisecond", this.$ms).utcOffset(m, !0), w) {
155
+ var E = b.utcOffset();
156
+ b = b.add(u - E, "minute");
157
+ }
158
+ return b.$x.$timezone = x, b;
159
+ }, p.offsetName = function(x) {
160
+ var w = this.$x.$timezone || a.tz.guess(), b = s(this.valueOf(), w, { timeZoneName: x }).find(function(u) {
161
+ return u.type.toLowerCase() === "timezonename";
162
+ });
163
+ return b && b.value;
164
+ };
165
+ var k = p.startOf;
166
+ p.startOf = function(x, w) {
167
+ if (!this.$x || !this.$x.$timezone)
168
+ return k.call(this, x, w);
169
+ var b = a(this.format("YYYY-MM-DD HH:mm:ss:SSS"), { locale: this.$L });
170
+ return k.call(b, x, w).tz(this.$x.$timezone, !0);
171
+ }, a.tz = function(x, w, b) {
172
+ var u = b && w, f = b || w || c, $ = v(+a(), f);
173
+ if (typeof x != "string")
174
+ return a(x).tz(f);
175
+ var h = function(Y, _, y) {
176
+ var g = Y - 60 * _ * 1e3, P = v(g, y);
177
+ if (_ === P)
178
+ return [g, _];
179
+ var z = v(g -= 60 * (P - _) * 1e3, y);
180
+ return P === z ? [g, P] : [Y - 60 * Math.min(P, z) * 1e3, Math.max(P, z)];
181
+ }(a.utc(x, u).valueOf(), $, f), m = h[0], E = h[1], F = a(m).utcOffset(E);
182
+ return F.$x.$timezone = f, F;
183
+ }, a.tz.guess = function() {
184
+ return Intl.DateTimeFormat().resolvedOptions().timeZone;
185
+ }, a.tz.setDefault = function(x) {
186
+ c = x;
187
+ };
188
+ };
189
+ });
190
+ })(ot);
191
+ var Ft = ot.exports;
192
+ const Lt = /* @__PURE__ */ tt(Ft), Ee = {
193
+ // 组件通用文本
194
+ "dao-ru": "导入",
195
+ "quan-xuan": "全选",
196
+ "xia-zai-dao-ru-mo-ban": "下载导入模板",
197
+ "xu-hao": "序号",
198
+ "qing-shu-ru": "请输入",
199
+ "qing-xuan-ze": "请选择",
200
+ "kai-shi-shi-jian": "开始时间",
201
+ "jie-shu-shi-jian": "结束时间",
202
+ "shai-xuan": "筛选",
203
+ "chong-zhi": "重置",
204
+ "guan-bi": "关闭",
205
+ "zhan-kai": "展开",
206
+ // Excel 工具相关
207
+ excel: {
208
+ fieldsMappingRequired: "请输入列字段映射",
209
+ invalidInput: "非法输入",
210
+ invalidOption: "请输入有效选项!",
211
+ copyFailed: "复制失败"
212
+ },
213
+ // 表单验证相关
214
+ validate: {
215
+ invalidInput: "请输入正确内容"
216
+ },
217
+ // 工具函数相关
218
+ tools: {
219
+ keysLengthError: "keys 长度必须大于2 默认前两位为 label value"
220
+ }
221
+ }, Ie = {
222
+ // Common component text
223
+ "dao-ru": "Import",
224
+ "quan-xuan": "Select All",
225
+ "xia-zai-dao-ru-mo-ban": "Download Import Template",
226
+ "xu-hao": "No.",
227
+ "qing-shu-ru": "Please enter",
228
+ "qing-xuan-ze": "Please select",
229
+ "kai-shi-shi-jian": "Start Time",
230
+ "jie-shu-shi-jian": "End Time",
231
+ "shai-xuan": "Filter",
232
+ "chong-zhi": "Reset",
233
+ "guan-bi": "Collapse",
234
+ "zhan-kai": "Expand",
235
+ // Excel utilities
236
+ excel: {
237
+ fieldsMappingRequired: "Please enter column field mapping",
238
+ invalidInput: "Invalid input",
239
+ invalidOption: "Please enter a valid option!",
240
+ copyFailed: "Copy failed"
241
+ },
242
+ // Form validation
243
+ validate: {
244
+ invalidInput: "Please enter valid content"
245
+ },
246
+ // Tool functions
247
+ tools: {
248
+ keysLengthError: "Keys length must be greater than 2, default first two are label and value"
249
+ }
250
+ }, Ot = {
251
+ zh_cn: Ee,
252
+ en: Ie
253
+ };
254
+ let ce = null;
255
+ function Dt(n = null) {
256
+ if (n) {
257
+ const { global: e } = n;
258
+ return e.messages.value.zh_cn ? e.mergeLocaleMessage("zh_cn", Ee) : e.setLocaleMessage("zh_cn", Ee), e.messages.value.en ? e.mergeLocaleMessage("en", Ie) : e.setLocaleMessage("en", Ie), ce = n, n;
259
+ }
260
+ return ce || (ce = kt({
261
+ legacy: !1,
262
+ locale: "zh_cn",
263
+ fallbackLocale: "zh_cn",
264
+ messages: Ot
265
+ })), ce;
266
+ }
267
+ function lt() {
268
+ return ce || Dt();
269
+ }
270
+ function Le() {
271
+ return lt().global.t;
272
+ }
273
+ Je.extend(Tt);
274
+ Je.extend(Lt);
275
+ async function vn(n, e) {
276
+ const { fields: t, range: l = 1 } = e;
277
+ if (!t) {
278
+ const a = Le();
279
+ throw new Error(a("excel.fieldsMappingRequired"));
280
+ }
281
+ let o = new Ge.Workbook();
282
+ await o.xlsx.load(n);
283
+ const r = {};
284
+ return o.eachSheet(function(a, c) {
285
+ const s = [];
286
+ a.eachRow(function(v, p) {
287
+ if (p > l) {
288
+ let k = {}, x = !0;
289
+ Object.keys(t).forEach((w) => {
290
+ const b = v.getCell(t[w]).value;
291
+ k[w] = b, b && (x = !1);
292
+ }), x || s.push(k);
293
+ }
294
+ }), r[a._name] = s;
295
+ }), o = null, r;
296
+ }
297
+ const zt = {
298
+ columnWidth: 30
299
+ };
300
+ async function At(n, e, t = [], l = {}) {
301
+ if (!n || !e)
302
+ return;
303
+ const { columnStyle: o } = l, { columnWidth: r } = zt;
304
+ e.forEach((s) => {
305
+ s.width = s.width ? s.width : r;
306
+ });
307
+ const { workbook: a, worksheet: c } = Mt();
308
+ c.columns = e, c.addRows(t), o && await Rt(a, c, o);
309
+ try {
310
+ const s = await a.xlsx.writeBuffer(), v = new File([s], n, {
311
+ type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
312
+ });
313
+ wt(v);
314
+ } catch (s) {
315
+ console.log(s);
316
+ }
317
+ }
318
+ function Mt() {
319
+ const n = new Ge.Workbook();
320
+ n.creator = "distributor System", n.lastModifiedBy = "distributor System", n.created = /* @__PURE__ */ new Date(), n.modified = /* @__PURE__ */ new Date(), n.lastPrinted = /* @__PURE__ */ new Date();
321
+ const e = n.addWorksheet("Sheet1");
322
+ return { workbook: n, worksheet: e };
323
+ }
324
+ async function Rt(n, e, t) {
325
+ const l = Object.keys(t);
326
+ for (const o of l) {
327
+ const r = t[o], { type: a } = r;
328
+ switch (a) {
329
+ case "IMG":
330
+ await Vt(n, e, o);
331
+ break;
332
+ }
333
+ }
334
+ }
335
+ async function Vt(n, e, t, l) {
336
+ const o = e.getColumn(t), r = o.values;
337
+ e.getColumn(t).width = 20, e.eachRow((a, c) => {
338
+ c > 1 && (a.height = 40);
339
+ });
340
+ for (let a = 0, c = r.length; a < c; a++) {
341
+ if (a < 2)
342
+ continue;
343
+ let s = r[a];
344
+ s && (e.getCell(o.letter + a).value = "", await Ut(n, e, s, {
345
+ width: 100,
346
+ height: 50,
347
+ col: o._number - 1,
348
+ row: a - 1
349
+ }));
350
+ }
351
+ }
352
+ async function Ut(n, e, t, l) {
353
+ const { col: o, row: r, width: a, height: c } = l, { success: s, base64: v } = await jt(t, 0.3);
354
+ if (s) {
355
+ const p = n.addImage({
356
+ base64: v,
357
+ extension: "jpeg"
358
+ });
359
+ e.addImage(p, {
360
+ tl: { col: o, row: r },
361
+ ext: { width: a, height: c }
362
+ });
363
+ }
364
+ }
365
+ function jt(n, e = 1) {
366
+ const t = new Image();
367
+ return t.setAttribute("crossOrigin", "anonymous"), t.crossOrigin = "anonymous", t.src = n, new Promise((l, o) => {
368
+ t.onload = () => {
369
+ const r = document.createElement("canvas");
370
+ r.width = t.width, r.height = t.height, r.getContext("2d").drawImage(t, 0, 0, r.width, r.height), l({
371
+ success: !0,
372
+ //canvas.toDataURL的方法将图片的绝对路径转换为base64编码
373
+ base64: r.toDataURL("image/jpeg", e)
374
+ });
375
+ }, t.onerror = () => {
376
+ l({ success: !1 });
377
+ };
378
+ });
379
+ }
380
+ function qt(n) {
381
+ if (n < 26)
382
+ return String.fromCharCode(65 + n);
383
+ {
384
+ const e = String.fromCharCode(65 + Math.floor((n - 26) / 26)), t = String.fromCharCode(65 + (n - 26) % 26);
385
+ return e + t;
386
+ }
387
+ }
388
+ function bn(n) {
389
+ return new Promise((e) => {
390
+ setTimeout(() => {
391
+ e();
392
+ }, n);
393
+ });
394
+ }
395
+ function yn(n) {
396
+ return JSON.parse(JSON.stringify(n));
397
+ }
398
+ function Cn(n) {
399
+ let e = [], t = {}, l = (o, r) => Object.prototype.hasOwnProperty.call(o, r);
400
+ for (const o of n) {
401
+ t[o.id] = {
402
+ ...o,
403
+ // 判断当前项的子项 如果map有存储就用存储的子项 否则初始化
404
+ children: l(t, o.id) ? t[o.id].children : []
405
+ };
406
+ const r = t[o.id];
407
+ o.pid == -1 ? e.push(r) : (l(t, o.pid) || (t[o.pid] = {
408
+ children: []
409
+ }), t[o.pid].children.push(r));
410
+ }
411
+ return e;
412
+ }
413
+ function rt(n, e = " ") {
414
+ return n ? n.split(e).filter((t) => t.trim()) : [];
415
+ }
416
+ class Be {
417
+ constructor(e, t = ["label", "value", "labelEn"]) {
418
+ this.list = e, this.map = new Map(
419
+ e.map((l) => {
420
+ let o = {
421
+ ...l,
422
+ label: l[t[0]],
423
+ value: l[t[1]]
424
+ };
425
+ return t[2] && (o.labelEn = l[t[2]]), [l[t[1]], o];
426
+ })
427
+ );
428
+ }
429
+ getName(e, t) {
430
+ if (!this.has(e))
431
+ return "-";
432
+ const { label: l, labelEn: o } = this.map.get(e);
433
+ return (t == "zh_cn" ? l : o) || l || "-";
434
+ }
435
+ getTag(e) {
436
+ if (!this.has(e))
437
+ return "info";
438
+ const { tag: t = "info" } = this.map.get(e);
439
+ return t;
440
+ }
441
+ getItem(e) {
442
+ return this.has(e) ? this.map.get(e) : null;
443
+ }
444
+ getColor(e) {
445
+ if (!this.has(e))
446
+ return null;
447
+ const { color: t } = this.map.get(e);
448
+ return t;
449
+ }
450
+ has(e) {
451
+ return this.map.has(e);
452
+ }
453
+ }
454
+ function xn(n, e = [], t = "i18nName") {
455
+ if (n.length == 0)
456
+ return new Be([]);
457
+ if (e.length < 2) {
458
+ const o = Le();
459
+ throw new Error(o("tools.keysLengthError"));
460
+ }
461
+ let l = n.map((o) => {
462
+ let r = {};
463
+ return t && (r.labelEn = o[t]), e.forEach((a, c) => {
464
+ c === 0 ? r.label = o[a] : c === 1 ? r.value = o[a] : r[a] = o[a];
465
+ }), r;
466
+ });
467
+ return new Be(l);
468
+ }
469
+ function wn(n) {
470
+ return n ? n.replace(/<[^>]+>/g, "") : "";
471
+ }
472
+ function kn(n) {
473
+ return n ? (n.includes("\\\\u") && (n = n.replace(/\\/g, "")), n.replace(/\\u[\dA-F]{4}/gi, (e) => String.fromCharCode(parseInt(e.replace(/\\u/g, ""), 16)))) : "";
474
+ }
475
+ function _n(n, e = 10) {
476
+ let t = 1048576 * e;
477
+ return !(n.size > t);
478
+ }
479
+ function $n(n) {
480
+ return Array.from(10).fill(0).map((t, l) => n + "_" + l);
481
+ }
482
+ function Sn(n) {
483
+ let e = {};
484
+ return n.map((t, l) => {
485
+ let { key: o, option: r, type: a } = t, c = qt(l);
486
+ r ? e[o] = `${c}---option` : a === "image" ? e[o] = `${c}---image` : e[o] = c;
487
+ }), e;
488
+ }
489
+ function En(n, e) {
490
+ return e.split(".").reduce((t, l) => t && t[l], n);
491
+ }
492
+ const ge = (n, e) => {
38
493
  const t = n.__vccOpts || n;
39
- for (const [o, a] of e)
40
- t[o] = a;
494
+ for (const [l, o] of e)
495
+ t[l] = o;
41
496
  return t;
42
- }, Le = {
497
+ }, Pt = {
43
498
  __name: "index",
44
- props: /* @__PURE__ */ ie({
499
+ props: /* @__PURE__ */ je({
45
500
  api: {
46
501
  type: Function
47
502
  },
@@ -49,16 +504,14 @@ const K = (n, e) => {
49
504
  type: Boolean,
50
505
  default: !0
51
506
  },
52
- optionClick: {
53
- type: Function
54
- },
55
507
  maxLimit: {
56
508
  type: Number,
57
509
  default: void 0
58
510
  },
59
- minLimit: {
60
- type: Number,
61
- default: void 0
511
+ optionClick: {
512
+ type: Function,
513
+ default: () => {
514
+ }
62
515
  },
63
516
  data: {
64
517
  type: Array
@@ -79,116 +532,116 @@ const K = (n, e) => {
79
532
  modelValue: {},
80
533
  modelModifiers: {}
81
534
  }),
82
- emits: /* @__PURE__ */ ie(["success", "change"], ["update:modelValue"]),
535
+ emits: /* @__PURE__ */ je(["success", "change"], ["update:modelValue"]),
83
536
  setup(n, { emit: e }) {
84
- const t = n, o = De(), { t: a, locale: c } = ae(), l = Oe(n, "modelValue"), u = J({
537
+ const t = n, l = vt(), { t: o, locale: r } = de(), a = bt(n, "modelValue"), c = q(""), s = ue(() => {
538
+ if (l.remote !== void 0)
539
+ return t.data;
540
+ const h = rt(c.value), { data: m, labelValue: E } = t, F = m || k.value;
541
+ if (h.length == 0)
542
+ return F;
543
+ const { label: Y, labelEn: _ } = E;
544
+ let y = r.value == "en_us" ? _ || "i18nName" : Y;
545
+ return h.length == 1 ? F.filter(
546
+ (P) => P[y].toLowerCase().includes(h[0].toLowerCase())
547
+ ) : F.filter((P) => {
548
+ let z = !1;
549
+ return z = h.some((fe) => P[y].toLowerCase() == fe.toLowerCase()), z;
550
+ });
551
+ }), v = ue({
85
552
  get() {
86
- if (o.multiple == null || l.value == null)
87
- return !1;
88
- let f = t.data ? t.data : v.value, i = Ie(
89
- f.map((m) => o["value-key"] ? m : m[t.labelValue.value]),
90
- l.value
91
- ).length == 0;
92
- return l.value.length == f.length && i;
553
+ return l.multiple == null || a.value == null ? !1 : a.value.length == s.value.length;
93
554
  },
94
- set(f) {
95
- return f;
555
+ set(h) {
556
+ return h;
96
557
  }
97
- }), r = e, v = F([]), p = async () => {
98
- const { data: f } = await t.api();
99
- v.value = [...f], r("success", v);
558
+ }), p = e, k = q([]), x = async () => {
559
+ const { data: h } = await t.api();
560
+ k.value = [...h], p("success", k);
100
561
  };
101
- t.api && p();
102
- const k = t.labelValue.label.split("-"), d = (f) => {
103
- if (k.length == 1) {
562
+ t.api && x();
563
+ const w = t.labelValue.label.split("-"), b = (h) => {
564
+ if (w.length == 1) {
104
565
  if (t.changeLocal)
105
- return a(f[t.labelValue.label]);
106
- let i = c.value == "en_us" ? f[t.labelValue.labelEn || "i18nName"] : f[t.labelValue.label];
107
- return i = i || f[t.labelValue.label], i;
566
+ return o(h[t.labelValue.label]);
567
+ let m = r.value == "en_us" ? h[t.labelValue.labelEn || "i18nName"] : h[t.labelValue.label];
568
+ return m = m || h[t.labelValue.label], m;
108
569
  } else {
109
- let i = [];
110
- return k.forEach((m) => {
111
- i.push(f[m]);
112
- }), i.join("-");
570
+ let m = [];
571
+ return w.forEach((E) => {
572
+ m.push(h[E]);
573
+ }), m.join("-");
113
574
  }
114
575
  };
115
- function b(f) {
116
- let i = t.data ? t.data : v.value;
117
- l.value = f ? i.map((m) => o["value-key"] ? m : m[t.labelValue.value]) : [], de(() => {
118
- r("change", l.value);
119
- });
120
- }
121
- function h(f) {
122
- t.optionClick && t.optionClick(f), t.optionClick && r("change", o["value-key"] ? f : f[t.labelValue.value]);
576
+ function u(h) {
577
+ a.value = h ? s.value.map((m) => m[t.labelValue.value]) : [], p("change", a.value);
123
578
  }
124
- function s(f) {
125
- r("change", f);
579
+ function f(h) {
580
+ t.optionClick(h), p("change", l["value-key"] ? h : h[t.labelValue.value]);
126
581
  }
127
- function g(f) {
128
- return o.multiple != null && o.multiple != !1 && t.maxLimit > 0 ? l.value.length >= t.maxLimit && !l.value.includes(f[t.labelValue.value]) : o.multiple != null && o.multiple != !1 && t.minLimit > 0 ? l.value.length <= t.minLimit && l.value.includes(f[t.labelValue.value]) : !1;
582
+ function $(h) {
583
+ return a.value.length >= t.maxLimit && !a.value.includes(h[t.labelValue.value]);
129
584
  }
130
- return (f, i) => {
131
- const m = x("el-checkbox"), $ = x("el-option"), C = x("el-select");
132
- return w(), D(C, W({
133
- modelValue: l.value,
134
- "onUpdate:modelValue": i[1] || (i[1] = (S) => l.value = S)
135
- }, B(o), {
585
+ return (h, m) => {
586
+ const E = O("el-checkbox"), F = O("el-option"), Y = O("el-select");
587
+ return T(), U(Y, pe({
588
+ modelValue: a.value,
589
+ "onUpdate:modelValue": m[1] || (m[1] = (_) => a.value = _),
136
590
  filterable: "",
137
591
  "collapse-tags": "",
138
592
  "collapse-tags-tooltip": "",
139
- clearable: "",
140
- onClear: s,
141
- onChange: s
142
- }), {
143
- default: T(() => [
144
- B(o).multiple != null && B(o).multiple != !1 && n.showCheckAll ? Y(f.$slots, "header", { key: 0 }, () => [
145
- E(m, {
593
+ "filter-method": K(l).remote != null ? void 0 : (_) => c.value = _,
594
+ clearable: ""
595
+ }, K(l), { onClear: n.optionClick }), {
596
+ default: M(() => [
597
+ K(l).multiple != null && n.showCheckAll && n.maxLimit == null ? se(h.$slots, "header", { key: 0 }, () => [
598
+ G(E, {
146
599
  class: "mgl20",
147
- modelValue: u.value,
148
- "onUpdate:modelValue": i[0] || (i[0] = (S) => u.value = S),
149
- onChange: b
600
+ modelValue: v.value,
601
+ "onUpdate:modelValue": m[0] || (m[0] = (_) => v.value = _),
602
+ onChange: u
150
603
  }, {
151
- default: T(() => [
152
- R(H(f.$t("quan-xuan")), 1)
604
+ default: M(() => [
605
+ te(ne(h.$t("quan-xuan")), 1)
153
606
  ]),
154
607
  _: 1
155
608
  }, 8, ["modelValue"])
156
- ], !0) : P("", !0),
157
- (w(!0), A(te, null, fe(n.data ? n.data : v.value, (S, O) => (w(), D($, {
158
- key: O,
159
- disabled: g(S),
160
- label: d(S),
161
- onClick: ne((U) => h(S), ["stop"]),
162
- value: B(o)["value-key"] ? S : S[n.labelValue.value]
163
- }, null, 8, ["disabled", "label", "onClick", "value"]))), 128))
609
+ ], !0) : ie("", !0),
610
+ (T(!0), re(_e, null, Ne(s.value, (_, y) => (T(), U(F, {
611
+ key: y,
612
+ label: b(_),
613
+ disabled: K(l).multiple != null && n.maxLimit > 0 ? $(_) : !1,
614
+ onClick: $e((g) => f(_), ["stop"]),
615
+ value: K(l)["value-key"] ? _ : _[n.labelValue.value]
616
+ }, null, 8, ["label", "disabled", "onClick", "value"]))), 128))
164
617
  ]),
165
618
  _: 3
166
- }, 16, ["modelValue"]);
619
+ }, 16, ["modelValue", "filter-method", "onClear"]);
167
620
  };
168
621
  }
169
- }, Ae = /* @__PURE__ */ K(Le, [["__scopeId", "data-v-02dd2f72"]]), yt = {
622
+ }, Bt = /* @__PURE__ */ ge(Pt, [["__scopeId", "data-v-34eb8641"]]), In = {
170
623
  __name: "index",
171
624
  emits: ["ok", "no"],
172
625
  setup(n, { emit: e }) {
173
- const t = e, o = ge(() => {
626
+ const t = e, l = We(() => {
174
627
  t("ok");
175
628
  }, 500);
176
- function a() {
629
+ function o() {
177
630
  t("no");
178
631
  }
179
- return (c, l) => {
180
- const u = x("el-link"), r = x("el-popconfirm");
181
- return w(), D(r, W(c.$attrs, {
182
- onConfirm: B(o),
183
- onCancel: a
632
+ return (r, a) => {
633
+ const c = O("el-link"), s = O("el-popconfirm");
634
+ return T(), U(s, pe(r.$attrs, {
635
+ onConfirm: K(l),
636
+ onCancel: o
184
637
  }), {
185
- reference: T(() => [
186
- E(u, {
638
+ reference: M(() => [
639
+ G(c, {
187
640
  underline: "never",
188
- type: c.$attrs.type
641
+ type: r.$attrs.type
189
642
  }, {
190
- default: T(() => [
191
- Y(c.$slots, "default")
643
+ default: M(() => [
644
+ se(r.$slots, "default")
192
645
  ]),
193
646
  _: 3
194
647
  }, 8, ["type"])
@@ -198,7 +651,7 @@ const K = (n, e) => {
198
651
  };
199
652
  }
200
653
  };
201
- const Me = ["accept"], Ye = {
654
+ const Yt = ["accept"], Ht = {
202
655
  __name: "index",
203
656
  props: {
204
657
  accept: {
@@ -212,37 +665,37 @@ const Me = ["accept"], Ye = {
212
665
  },
213
666
  emits: ["fileChange"],
214
667
  setup(n, { emit: e }) {
215
- const t = e, o = F(null);
216
- function a(c) {
217
- let l = c.target.files[0];
218
- t("fileChange", l), o.value.value = null;
668
+ const t = e, l = q(null);
669
+ function o(r) {
670
+ let a = r.target.files[0];
671
+ t("fileChange", a), l.value.value = null;
219
672
  }
220
- return (c, l) => {
221
- const u = x("el-button");
222
- return w(), A("span", null, [
223
- E(u, {
673
+ return (r, a) => {
674
+ const c = O("el-button");
675
+ return T(), re("span", null, [
676
+ G(c, {
224
677
  loading: n.loading,
225
678
  class: "mgr10",
226
- onClick: l[0] || (l[0] = (r) => o.value.click())
679
+ onClick: a[0] || (a[0] = (s) => l.value.click())
227
680
  }, {
228
- default: T(() => [
229
- R(H(c.$t("dao-ru")), 1)
681
+ default: M(() => [
682
+ te(ne(r.$t("dao-ru")), 1)
230
683
  ]),
231
684
  _: 1
232
685
  }, 8, ["loading"]),
233
- M("input", {
234
- onChange: a,
686
+ ae("input", {
687
+ onChange: o,
235
688
  ref_key: "input",
236
- ref: o,
689
+ ref: l,
237
690
  accept: n.accept,
238
691
  style: { position: "absolute", width: "0px", height: "0px", opacity: "0" },
239
692
  type: "file"
240
- }, null, 40, Me)
693
+ }, null, 40, Yt)
241
694
  ]);
242
695
  };
243
696
  }
244
- }, Ct = /* @__PURE__ */ K(Ye, [["__scopeId", "data-v-5f1449ad"]]);
245
- const Pe = ce({
697
+ }, Tn = /* @__PURE__ */ ge(Ht, [["__scopeId", "data-v-5f1449ad"]]);
698
+ const Nt = Ye({
246
699
  props: {
247
700
  name: {
248
701
  tyepe: String,
@@ -250,17 +703,35 @@ const Pe = ce({
250
703
  }
251
704
  }
252
705
  });
253
- function je(n, e, t, o, a, c) {
254
- const l = x("el-icon");
255
- return w(), D(l, { class: "cmp-icon" }, {
256
- default: T(() => [
257
- (w(), D(he(n.name)))
706
+ function Kt(n, e, t, l, o, r) {
707
+ const a = O("el-icon");
708
+ return T(), U(a, { class: "cmp-icon" }, {
709
+ default: M(() => [
710
+ (T(), U(Ke(n.name)))
258
711
  ]),
259
712
  _: 1
260
713
  });
261
714
  }
262
- const ve = /* @__PURE__ */ K(Pe, [["render", je], ["__scopeId", "data-v-733f9daa"]]);
263
- const Be = { key: 0 }, Re = { class: "btns" }, He = { class: "left" }, Ne = { class: "right" }, Ke = {
715
+ const at = /* @__PURE__ */ ge(Nt, [["render", Kt], ["__scopeId", "data-v-733f9daa"]]);
716
+ function Te(n) {
717
+ let e = {};
718
+ return n.forEach((t) => {
719
+ const { key: l, type: o, option: r = {}, value: a, dateType: c } = t;
720
+ if (l)
721
+ if (o == "input" && (r != null && r.multiple))
722
+ e[l] = rt(a);
723
+ else if (o == "date")
724
+ if (c.includes("range")) {
725
+ const [s, v] = l;
726
+ let [p, k] = a || [];
727
+ p && c == "daterange" && (p = qe(p).format("YYYY-MM-DD 00:00:00"), k = qe(k).format("YYYY-MM-DD 23:59:59")), e[s] = p, e[v] = k;
728
+ } else
729
+ e[l] = a;
730
+ else
731
+ e[l] = a;
732
+ }), e;
733
+ }
734
+ const Zt = { key: 0 }, Gt = { class: "btns" }, Jt = { class: "left" }, Wt = { class: "right" }, Qt = {
264
735
  __name: "index",
265
736
  props: {
266
737
  form: {
@@ -268,73 +739,86 @@ const Be = { key: 0 }, Re = { class: "btns" }, He = { class: "left" }, Ne = { cl
268
739
  required: !0
269
740
  }
270
741
  },
271
- emits: ["confirm", "reset"],
272
- setup(n, { emit: e }) {
273
- const t = e, o = F(!0), a = F(null), { t: c } = ae(), l = J(() => o.value ? c("guan-bi") : c("zhan-kai"));
274
- function u() {
275
- t("confirm");
742
+ emits: ["confirm", "reset", "visibleChange"],
743
+ setup(n, { expose: e, emit: t }) {
744
+ const l = n, o = t, r = q(!0), a = q(null), { t: c } = de(), s = ue(() => r.value ? c("guan-bi") : c("zhan-kai"));
745
+ function v() {
746
+ o("confirm");
276
747
  }
277
- function r() {
278
- t("reset");
748
+ function p(f) {
749
+ f.option.onClear && f.option.onClear(), o("confirm");
279
750
  }
280
- function v() {
281
- t("confirm");
751
+ function k() {
752
+ o("reset");
753
+ }
754
+ function x() {
755
+ o("confirm");
756
+ }
757
+ function w() {
758
+ return Te(l.form.items);
759
+ }
760
+ const b = Qe(l.form.items);
761
+ function u() {
762
+ l.form.items.forEach((f) => {
763
+ const $ = b.find((h) => h.key == f.key);
764
+ $ && (f.value = $.value);
765
+ });
282
766
  }
283
- return (p, k) => {
284
- const d = x("el-input"), b = x("el-date-picker"), h = x("el-form-item"), s = x("el-form"), g = x("el-link"), f = x("el-button");
285
- return w(), A("div", {
767
+ return e({ getPrm: w, reset: u }), (f, $) => {
768
+ const h = O("el-input"), m = O("el-date-picker"), E = O("el-form-item"), F = O("el-form"), Y = O("el-link"), _ = O("el-button");
769
+ return T(), re("div", {
286
770
  class: "searchBar-container mgt10 mgb10",
287
- onKeydown: ze(u, ["enter"])
771
+ onKeydown: yt(v, ["enter"])
288
772
  }, [
289
- M("div", {
773
+ ae("div", {
290
774
  class: "searchBar",
291
- style: Ee({ height: o.value ? "auto" : "42px" })
775
+ style: Ct({ height: r.value ? "auto" : "42px" })
292
776
  }, [
293
- E(s, {
777
+ G(F, {
294
778
  inline: "",
295
779
  model: n.form.data
296
780
  }, {
297
- default: T(() => [
298
- (w(!0), A(te, null, fe(n.form.items.filter((i) => !i.hidden), (i) => (w(), A(te, {
299
- key: i.key
781
+ default: M(() => [
782
+ (T(!0), re(_e, null, Ne(n.form.items.filter((y) => !y.hidden), (y) => (T(), re(_e, {
783
+ key: y.key
300
784
  }, [
301
- i.type == "br" ? (w(), A("br", Be)) : (w(), D(h, {
785
+ y.type == "br" ? (T(), re("br", Zt)) : (T(), U(E, {
302
786
  key: 1,
303
- label: i.name
787
+ label: y.name
304
788
  }, {
305
- default: T(() => {
306
- var m, $;
789
+ default: M(() => {
790
+ var g, P;
307
791
  return [
308
- i.type === "input" ? (w(), D(d, {
792
+ y.type === "input" ? (T(), U(h, {
309
793
  key: 0,
310
- modelValue: i.value,
311
- "onUpdate:modelValue": (C) => i.value = C,
312
- class: oe(((m = i.option) == null ? void 0 : m.class) || "w150"),
313
- placeholder: p.$t("qing-shu-ru"),
794
+ modelValue: y.value,
795
+ "onUpdate:modelValue": (z) => y.value = z,
796
+ class: Se(((g = y.option) == null ? void 0 : g.class) || "w150"),
797
+ placeholder: f.$t("qing-shu-ru"),
314
798
  clearable: ""
315
- }, null, 8, ["modelValue", "onUpdate:modelValue", "class", "placeholder"])) : i.type === "custom" ? (w(), D(he(i.render), { key: 1 })) : P("", !0),
316
- i.type === "select" ? (w(), D(Ae, W({
799
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "class", "placeholder"])) : y.type === "custom" ? (T(), U(Ke(y.render), { key: 1 })) : ie("", !0),
800
+ y.type === "select" ? (T(), U(Bt, pe({
317
801
  key: 2,
318
- class: (($ = i.option) == null ? void 0 : $.class) || "w150",
319
- modelValue: i.value,
320
- "onUpdate:modelValue": (C) => i.value = C
321
- }, { ref_for: !0 }, i.option, {
322
- onChange: u,
323
- onClear: u
324
- }), null, 16, ["class", "modelValue", "onUpdate:modelValue"])) : P("", !0),
325
- i.type === "date" ? (w(), D(b, {
802
+ class: ((P = y.option) == null ? void 0 : P.class) || "w150",
803
+ modelValue: y.value,
804
+ "onUpdate:modelValue": (z) => y.value = z
805
+ }, { ref_for: !0 }, y.option, {
806
+ onChange: v,
807
+ onClear: (z) => p(y)
808
+ }), null, 16, ["class", "modelValue", "onUpdate:modelValue", "onClear"])) : ie("", !0),
809
+ y.type === "date" ? (T(), U(m, {
326
810
  key: 3,
327
- class: oe({ datetimerange: "w300", daterange: "w200" }[i.dateType] || "w100"),
328
- modelValue: i.value,
329
- "onUpdate:modelValue": (C) => i.value = C,
330
- "value-format": { datetimerange: "YYYY-MM-DD HH:mm:ss", daterange: "YYYY-MM-DD" }[i.dateType] || "YYYY-MM-DD",
331
- type: i.dateType || "date",
332
- onFocus: (C) => a.value = i,
333
- onChange: (C) => v(),
334
- placeholder: p.$t("qing-xuan-ze"),
335
- "start-placeholder": p.$t("kai-shi-shi-jian"),
336
- "end-placeholder": p.$t("jie-shu-shi-jian")
337
- }, null, 8, ["class", "modelValue", "onUpdate:modelValue", "value-format", "type", "onFocus", "onChange", "placeholder", "start-placeholder", "end-placeholder"])) : P("", !0)
811
+ class: Se({ datetimerange: "w300", daterange: "w200" }[y.dateType] || "w100"),
812
+ modelValue: y.value,
813
+ "onUpdate:modelValue": (z) => y.value = z,
814
+ "value-format": { datetimerange: "YYYY-MM-DD HH:mm:ss", daterange: "YYYY-MM-DD" }[y.dateType] || "YYYY-MM-DD",
815
+ type: y.dateType || "date",
816
+ onFocus: (z) => a.value = y,
817
+ onChange: (z) => x(),
818
+ placeholder: f.$t("qing-xuan-ze"),
819
+ "start-placeholder": f.$t("kai-shi-shi-jian"),
820
+ "end-placeholder": f.$t("jie-shu-shi-jian")
821
+ }, null, 8, ["class", "modelValue", "onUpdate:modelValue", "value-format", "type", "onFocus", "onChange", "placeholder", "start-placeholder", "end-placeholder"])) : ie("", !0)
338
822
  ];
339
823
  }),
340
824
  _: 2
@@ -344,70 +828,52 @@ const Be = { key: 0 }, Re = { class: "btns" }, He = { class: "left" }, Ne = { cl
344
828
  _: 1
345
829
  }, 8, ["model"])
346
830
  ], 4),
347
- M("div", Re, [
348
- M("div", He, [
349
- Y(p.$slots, "table-header-left", {}, void 0, !0)
831
+ ae("div", Gt, [
832
+ ae("div", Jt, [
833
+ se(f.$slots, "table-header-left", {}, void 0, !0)
350
834
  ]),
351
- M("div", Ne, [
352
- E(g, {
835
+ ae("div", Wt, [
836
+ G(Y, {
353
837
  underline: "never",
354
838
  class: "mgr10",
355
- onClick: k[0] || (k[0] = (i) => o.value = !o.value)
839
+ onClick: $[0] || ($[0] = () => {
840
+ o("visibleChange", !r.value), r.value = !r.value;
841
+ })
356
842
  }, {
357
- default: T(() => [
358
- E(ve, {
359
- name: o.value ? "ArrowUp" : "ArrowDown"
843
+ default: M(() => [
844
+ G(at, {
845
+ name: r.value ? "ArrowUp" : "ArrowDown"
360
846
  }, null, 8, ["name"]),
361
- R(" " + H(l.value), 1)
847
+ te(" " + ne(s.value), 1)
362
848
  ]),
363
849
  _: 1
364
850
  }),
365
- E(f, {
851
+ G(_, {
366
852
  type: "primary",
367
- onClick: u
853
+ onClick: v
368
854
  }, {
369
- default: T(() => [
370
- R(H(p.$t("shai-xuan")), 1)
855
+ default: M(() => [
856
+ te(ne(f.$t("shai-xuan")), 1)
371
857
  ]),
372
858
  _: 1
373
859
  }),
374
- E(f, {
860
+ G(_, {
375
861
  type: "primary",
376
- onClick: r
862
+ onClick: k
377
863
  }, {
378
- default: T(() => [
379
- R(H(p.$t("chong-zhi")), 1)
864
+ default: M(() => [
865
+ te(ne(f.$t("chong-zhi")), 1)
380
866
  ]),
381
867
  _: 1
382
868
  }),
383
- Y(p.$slots, "btn", {}, void 0, !0)
869
+ se(f.$slots, "btn", {}, void 0, !0)
384
870
  ])
385
871
  ])
386
872
  ], 32);
387
873
  };
388
874
  }
389
- }, qe = /* @__PURE__ */ K(Ke, [["__scopeId", "data-v-f3f60f9c"]]);
390
- function Ze(n) {
391
- return n ? Array.isArray(n) ? n : n.split(",").map((e) => e.trim()).filter(Boolean) : [];
392
- }
393
- function Z(n) {
394
- let e = {};
395
- return n.forEach((t) => {
396
- const { key: o, type: a, option: c = {}, value: l, dateType: u, toArr: r } = t;
397
- if (a == "input" && (c != null && c.multiple))
398
- e[o] = Ze(l);
399
- else if (a == "date")
400
- if (u.includes("range")) {
401
- const [v, p] = o;
402
- let [k, d] = l || [];
403
- k && u == "daterange" && (k = re(k).format("YYYY-MM-DD 00:00:00"), d = re(d).format("YYYY-MM-DD 23:59:59")), e[v] = k, e[p] = d;
404
- } else
405
- e[o] = l;
406
- else
407
- a == "select" ? e[o] = r ? [l] : l : e[o] = l;
408
- }), e;
409
- }
410
- const Je = { class: "center" }, We = {
875
+ }, Xt = /* @__PURE__ */ ge(Qt, [["__scopeId", "data-v-32ac9990"]]);
876
+ const en = { class: "center" }, tn = {
411
877
  __name: "index",
412
878
  props: {
413
879
  // 表格id 本地存储列设置时使用
@@ -432,7 +898,9 @@ const Je = { class: "center" }, We = {
432
898
  showSearch: !1,
433
899
  showPage: !1,
434
900
  showShadow: !1,
435
- showCheckBox: !1
901
+ showCheckBox: !1,
902
+ enableCellCopy: !0
903
+ // 是否启用单元格选区复制功能
436
904
  })
437
905
  },
438
906
  api: {
@@ -447,198 +915,459 @@ const Je = { class: "center" }, We = {
447
915
  }
448
916
  },
449
917
  setup(n, { expose: e }) {
450
- const { t, locale: o } = ae(), a = n, c = F(!1), l = F([]), u = Ve(a.searchForm.items), r = ee({
451
- pageNo: 1,
918
+ const { t, locale: l } = de(), o = n, r = q(!1), a = q([]);
919
+ o.searchForm.selections = [], o.searchForm.enableCellCopy == null && (o.searchForm.enableCellCopy = !0);
920
+ const c = Qe(o.searchForm.items), s = o.searchForm.pageNoKey || "pageNo", v = ve({
921
+ [s]: 1,
452
922
  pageSize: 10,
453
923
  total: 0
454
- }), v = F(null), p = F(450), k = ge(() => {
455
- de(() => {
456
- if (!v.value)
924
+ }), p = q(null), k = q(null), x = q(450), w = We(() => {
925
+ we(() => {
926
+ if (!k.value)
457
927
  return;
458
- const _ = v.value.getBoundingClientRect(), z = window.innerHeight, L = _.top, j = 100, G = z - L - j, Q = 200;
459
- p.value = Math.max(G, Q);
928
+ const i = k.value.getBoundingClientRect(), C = window.innerHeight, I = i.top, R = 100, Z = C - I - R, V = 200;
929
+ x.value = Math.max(Z, V);
460
930
  });
461
- }, 100), d = () => {
462
- k();
931
+ }, 100), b = () => {
932
+ w();
933
+ }, u = () => {
934
+ if (!o.searchForm.enableCellCopy)
935
+ return !1;
936
+ const d = p.value;
937
+ if (!d || !d.$el)
938
+ return !1;
939
+ const i = d.$el;
940
+ return i.classList.add("cell-copy-enabled"), i.removeEventListener("mousedown", z), i.removeEventListener("mousemove", fe), i.removeEventListener("mouseup", be), i.addEventListener("mousedown", z), i.addEventListener("mousemove", fe), i.addEventListener("mouseup", be), !0;
463
941
  };
464
- ue(() => {
465
- k(), window.addEventListener("resize", d);
466
- }), Ue(() => {
467
- window.removeEventListener("resize", d);
942
+ He(() => {
943
+ w(), window.addEventListener("resize", b), o.searchForm.enableCellCopy && (document.addEventListener("keydown", Ae), document.addEventListener("mouseup", Me), setTimeout(() => {
944
+ u();
945
+ }, 500));
946
+ }), xt(() => {
947
+ if (window.removeEventListener("resize", b), o.searchForm.enableCellCopy) {
948
+ document.removeEventListener("keydown", Ae), document.removeEventListener("mouseup", Me);
949
+ const d = p.value;
950
+ if (d && d.$el) {
951
+ const i = d.$el;
952
+ i.removeEventListener("mousedown", z), i.removeEventListener("mousemove", fe), i.removeEventListener("mouseup", be);
953
+ }
954
+ }
468
955
  });
469
- const b = J(() => C.value.height || p.value);
470
- async function h(y) {
471
- const { dataFormat: _ } = a.tableConfig;
472
- c.value = !0;
473
- const { code: z, data: L = {} } = await a.api(y).finally(() => {
474
- c.value = !1, a.searchForm.selections = [];
956
+ const f = ue(() => ye.value.height || x.value);
957
+ let $;
958
+ async function h(d) {
959
+ const { dataFormat: i } = o.tableConfig;
960
+ d.pageNo != 1 && (d.nextSearchAfter = $), r.value = !0;
961
+ const { code: C, data: I = {} } = await o.api(d).finally(() => {
962
+ r.value = !1, o.searchForm.selections = [];
475
963
  });
476
- if (z == 200) {
477
- let j = L.rows || [];
478
- l.value = _ ? _(j) : j, r.total = L.totalRows || 0;
964
+ if (C == 200) {
965
+ let R = I.rows || I.records || [];
966
+ a.value = i ? i(R) : R, v.total = I.totalRows || I.total || 0, $ = I.nextSearchAfter, o.searchForm.enableCellCopy && we(() => {
967
+ setTimeout(() => {
968
+ u();
969
+ }, 100);
970
+ });
479
971
  }
480
972
  }
481
- function s(y = {}) {
482
- h({ ...r, ...Z(a.searchForm.items), ...y });
973
+ function m(d = {}) {
974
+ const { searchData: i = () => ({}) } = o.tableConfig, C = i();
975
+ h({ ...v, ...Te(o.searchForm.items), ...d, ...C });
483
976
  }
484
- async function g() {
485
- const { reset: y } = a.tableConfig;
486
- a.searchForm.items.forEach((_) => {
487
- const z = u.find((L) => L.key == _.key);
488
- z && (_.value = z.value);
489
- }), y && await y(), s();
977
+ function E() {
978
+ const { reset: d } = o.tableConfig;
979
+ d && d(), o.searchForm.items.forEach((i) => {
980
+ const C = c.find((I) => Pe(i.key) && Pe(I.key) ? i.key.join(",") == I.key.join(",") : I.key == i.key);
981
+ C && (i.value = C.value);
982
+ }), m();
490
983
  }
491
- a.api && a.immediate && s();
492
- function f() {
493
- return { ...r, ...Z(a.searchForm.items) };
984
+ o.api && o.immediate && m();
985
+ function F() {
986
+ return { ...v, ...Te(o.searchForm.items) };
494
987
  }
495
- const i = F(null);
496
- e({ tableRef: i, getList: s, getPrm: f, calculateTableHeight: k });
497
- const m = ee({
988
+ const Y = () => {
989
+ const d = p.value;
990
+ d && d.clearSort();
991
+ }, _ = ve({
498
992
  storage: !0
499
- }), $ = ee({
993
+ }), y = ve({
994
+ width: "auto",
500
995
  drag: !0,
501
996
  resizable: !0,
502
997
  maxFixedSize: 0
503
- }), C = J(() => {
504
- const {
505
- customConfig: y,
506
- columnConfig: _,
507
- ...z
508
- } = a.tableConfig;
998
+ }), g = ve({
999
+ isSelecting: !1,
1000
+ // 是否正在选择
1001
+ startCell: null,
1002
+ // 起始单元格 { rowIndex, colIndex }
1003
+ endCell: null,
1004
+ // 结束单元格
1005
+ selectedCells: []
1006
+ // 选中的单元格列表 [{ rowIndex, colIndex }]
1007
+ }), P = (d) => {
1008
+ const i = d.closest(".vxe-body--column");
1009
+ if (!i || i.classList.contains("col--checkbox") || i.classList.contains("col--seq"))
1010
+ return null;
1011
+ const C = i.closest(".vxe-body--row");
1012
+ if (!C)
1013
+ return null;
1014
+ const I = p.value;
1015
+ if (!I)
1016
+ return null;
1017
+ let R = -1;
1018
+ const Z = C.getAttribute("data-rowid");
1019
+ if (Z != null)
1020
+ R = parseInt(Z, 10);
1021
+ else {
1022
+ const L = C.parentElement;
1023
+ R = Array.from(L.querySelectorAll(".vxe-body--row")).indexOf(C);
1024
+ }
1025
+ if (R < 0)
1026
+ return null;
1027
+ let V = -1;
1028
+ const X = i.getAttribute("data-colid");
1029
+ if (X && (V = I.getColumns().findIndex((S) => S.id === X)), V < 0) {
1030
+ const S = Array.from(C.querySelectorAll(".vxe-body--column")).indexOf(i), j = !!i.closest(".vxe-table--fixed-left-wrapper"), H = !!i.closest(".vxe-table--fixed-right-wrapper"), A = I.getColumns();
1031
+ if (j) {
1032
+ const N = A.filter((B) => B.fixed === "left");
1033
+ S < N.length && (V = A.indexOf(N[S]));
1034
+ } else if (H) {
1035
+ const N = A.filter((B) => B.fixed === "right");
1036
+ S < N.length && (V = A.indexOf(N[S]));
1037
+ } else {
1038
+ const N = o.searchForm.showCheckBox ? 1 : 0;
1039
+ V = A.filter((J) => J.fixed === "left").length + S - N;
1040
+ }
1041
+ }
1042
+ return V < 0 ? null : { rowIndex: R, colIndex: V, cell: i };
1043
+ }, z = (d) => {
1044
+ const i = P(d.target);
1045
+ if (!i) {
1046
+ Oe();
1047
+ return;
1048
+ }
1049
+ g.isSelecting = !0, g.startCell = {
1050
+ rowIndex: i.rowIndex,
1051
+ colIndex: i.colIndex
1052
+ }, g.endCell = { ...g.startCell }, De(), ze();
1053
+ }, fe = (d) => {
1054
+ if (!g.isSelecting)
1055
+ return;
1056
+ const i = P(d.target);
1057
+ i && (g.endCell = {
1058
+ rowIndex: i.rowIndex,
1059
+ colIndex: i.colIndex
1060
+ }, De(), ze());
1061
+ }, be = () => {
1062
+ g.isSelecting = !1;
1063
+ }, Oe = () => {
1064
+ g.selectedCells = [], g.startCell = null, g.endCell = null;
1065
+ const d = p.value;
1066
+ if (!d)
1067
+ return;
1068
+ d.$el.querySelectorAll(
1069
+ ".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left"
1070
+ ).forEach((C) => {
1071
+ C.classList.remove(
1072
+ "cell-selected",
1073
+ "cell-border-top",
1074
+ "cell-border-right",
1075
+ "cell-border-bottom",
1076
+ "cell-border-left"
1077
+ );
1078
+ });
1079
+ }, De = () => {
1080
+ if (!g.startCell || !g.endCell) {
1081
+ g.selectedCells = [];
1082
+ return;
1083
+ }
1084
+ const d = g.startCell.rowIndex, i = g.endCell.rowIndex, C = g.startCell.colIndex, I = g.endCell.colIndex, R = Math.min(d, i), Z = Math.max(d, i), V = Math.min(C, I), X = Math.max(C, I);
1085
+ g.selectedCells = [];
1086
+ for (let L = R; L <= Z; L++)
1087
+ for (let S = V; S <= X; S++)
1088
+ g.selectedCells.push({
1089
+ rowIndex: L,
1090
+ colIndex: S
1091
+ });
1092
+ }, ze = () => {
1093
+ we(() => {
1094
+ const d = p.value;
1095
+ if (!d)
1096
+ return;
1097
+ const i = d.$el;
1098
+ if (i.querySelectorAll(
1099
+ ".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left"
1100
+ ).forEach((j) => {
1101
+ j.classList.remove(
1102
+ "cell-selected",
1103
+ "cell-border-top",
1104
+ "cell-border-right",
1105
+ "cell-border-bottom",
1106
+ "cell-border-left"
1107
+ );
1108
+ }), g.selectedCells.length === 0)
1109
+ return;
1110
+ const C = d.getColumns(), I = g.selectedCells.map((j) => j.rowIndex), R = g.selectedCells.map((j) => j.colIndex), Z = Math.min(...I), V = Math.max(...I), X = Math.min(...R), L = Math.max(...R), S = [
1111
+ i.querySelector(".vxe-table--body-wrapper tbody"),
1112
+ i.querySelector(".vxe-table--fixed-left-wrapper tbody"),
1113
+ i.querySelector(".vxe-table--fixed-right-wrapper tbody")
1114
+ ].filter(Boolean);
1115
+ g.selectedCells.forEach(({ rowIndex: j, colIndex: H }) => {
1116
+ const A = C[H];
1117
+ if (!A)
1118
+ return;
1119
+ const N = A.fixed === "left", B = A.fixed === "right";
1120
+ for (const J of S) {
1121
+ const he = J.querySelectorAll(".vxe-body--row")[j];
1122
+ if (!he)
1123
+ continue;
1124
+ const oe = Array.from(he.querySelectorAll(".vxe-body--column"));
1125
+ let D = null;
1126
+ if (N && J.closest(".vxe-table--fixed-left-wrapper")) {
1127
+ const W = C.filter((Q) => Q.fixed === "left").indexOf(A);
1128
+ D = oe[W];
1129
+ } else if (B && J.closest(".vxe-table--fixed-right-wrapper")) {
1130
+ const W = C.filter((Q) => Q.fixed === "right").indexOf(A);
1131
+ D = oe[W];
1132
+ } else if (!N && !B && J.closest(".vxe-table--body-wrapper")) {
1133
+ const le = o.searchForm.showCheckBox ? 1 : 0, W = C.filter((Ce) => Ce.fixed === "left").length, Q = H - W;
1134
+ D = oe[Q + le];
1135
+ }
1136
+ if (D && !D.classList.contains("col--checkbox") && !D.classList.contains("col--seq")) {
1137
+ D.classList.add("cell-selected"), j === Z && D.classList.add("cell-border-top"), j === V && D.classList.add("cell-border-bottom"), H === X && D.classList.add("cell-border-left"), H === L && D.classList.add("cell-border-right");
1138
+ break;
1139
+ }
1140
+ }
1141
+ });
1142
+ });
1143
+ }, it = async () => {
1144
+ if (g.selectedCells.length === 0)
1145
+ return;
1146
+ const d = p.value;
1147
+ if (!d)
1148
+ return;
1149
+ const i = d.$el, C = d.getColumns(), I = [...new Set(g.selectedCells.map((L) => L.rowIndex))].sort(
1150
+ (L, S) => L - S
1151
+ ), R = [...new Set(g.selectedCells.map((L) => L.colIndex))].sort(
1152
+ (L, S) => L - S
1153
+ ), Z = [
1154
+ i.querySelector(".vxe-table--body-wrapper tbody"),
1155
+ i.querySelector(".vxe-table--fixed-left-wrapper tbody"),
1156
+ i.querySelector(".vxe-table--fixed-right-wrapper tbody")
1157
+ ].filter(Boolean), V = [];
1158
+ I.forEach((L) => {
1159
+ const S = [];
1160
+ R.forEach((j) => {
1161
+ const H = C[j];
1162
+ if (!H) {
1163
+ S.push("");
1164
+ return;
1165
+ }
1166
+ const A = H.fixed === "left", N = H.fixed === "right";
1167
+ let B = "";
1168
+ for (const J of Z) {
1169
+ const he = J.querySelectorAll(".vxe-body--row")[L];
1170
+ if (!he)
1171
+ continue;
1172
+ const oe = Array.from(he.querySelectorAll(".vxe-body--column"));
1173
+ let D = null;
1174
+ if (A && J.closest(".vxe-table--fixed-left-wrapper")) {
1175
+ const W = C.filter((Q) => Q.fixed === "left").indexOf(H);
1176
+ D = oe[W];
1177
+ } else if (N && J.closest(".vxe-table--fixed-right-wrapper")) {
1178
+ const W = C.filter((Q) => Q.fixed === "right").indexOf(H);
1179
+ D = oe[W];
1180
+ } else if (!A && !N && J.closest(".vxe-table--body-wrapper")) {
1181
+ const le = o.searchForm.showCheckBox ? 1 : 0, W = C.filter((Ce) => Ce.fixed === "left").length, Q = j - W;
1182
+ D = oe[Q + le];
1183
+ }
1184
+ if (D && !D.classList.contains("col--checkbox") && !D.classList.contains("col--seq")) {
1185
+ B = D.innerText || D.textContent || "", B = B.trim(), B = B.replace(/\n/g, " ").replace(/\s+/g, " ");
1186
+ break;
1187
+ }
1188
+ }
1189
+ S.push(B);
1190
+ }), V.push(S.join(" "));
1191
+ });
1192
+ const X = V.join(`
1193
+ `);
1194
+ try {
1195
+ await navigator.clipboard.writeText(X);
1196
+ } catch (L) {
1197
+ console.error(t("excel.copyFailed"), L);
1198
+ }
1199
+ }, Ae = (d) => {
1200
+ o.searchForm.enableCellCopy && ((d.ctrlKey || d.metaKey) && d.key === "c" ? (d.preventDefault(), it()) : d.key === "Escape" && Oe());
1201
+ }, Me = () => {
1202
+ g.isSelecting = !1;
1203
+ }, ye = ue(() => {
1204
+ const { customConfig: d, columnConfig: i, ...C } = o.tableConfig;
509
1205
  return {
510
1206
  headerAlign: "left",
511
1207
  align: "center",
512
- customConfig: { ...m, ...y },
513
- "column-config": { ...$, ..._ },
1208
+ customConfig: { ..._, ...d },
1209
+ columnConfig: { ...y, ...i },
514
1210
  // 列过多时 自动宽度 虚拟滚动会闪屏 关闭虚拟滚动
515
1211
  "virtual-x-config": {
516
1212
  enabled: !1,
517
- scrollToLeftOnChange: !0
1213
+ scrollToLeftOnChange: !1
518
1214
  },
519
1215
  // 纵向虚拟滚动 大于100条开启
520
1216
  "virtual-y-config": { enabled: !0, gt: 100 },
521
- ...z
1217
+ ...C
522
1218
  };
523
- }), S = (y) => {
524
- r.pageNo = y, h({ ...r, ...Z(a.searchForm.items) });
525
- }, O = (y) => {
526
- r.pageSize = y, r.pageNo = 1, h({ ...r, ...Z(a.searchForm.items) });
1219
+ }), ct = (d) => {
1220
+ v.pageNo = d, m();
1221
+ }, ut = (d) => {
1222
+ v.pageSize = d, v[s] = 1, m();
527
1223
  };
528
- function U() {
529
- const y = i.value.getCheckboxRecords();
530
- a.searchForm.selections = y;
1224
+ function Re() {
1225
+ const d = p.value.getCheckboxRecords();
1226
+ o.searchForm.selections = d;
531
1227
  }
532
- const I = (y) => {
533
- const _ = i.value;
534
- if (_) {
535
- _.toggleCheckboxRow(y);
536
- const z = i.value.getCheckboxRecords();
537
- a.searchForm.selections = z;
1228
+ const Ve = (d) => {
1229
+ const i = p.value;
1230
+ if (i) {
1231
+ i.toggleCheckboxRow(d);
1232
+ const C = p.value.getCheckboxRecords();
1233
+ o.searchForm.selections = C;
538
1234
  }
539
1235
  };
540
- return (y, _) => {
541
- const z = x("el-button"), L = x("el-checkbox"), j = x("el-text"), G = x("vxe-column"), Q = x("VxeTable"), ke = x("el-pagination");
542
- return w(), A("div", {
543
- class: oe({ box: n.searchForm.showShadow })
1236
+ return e({ tableRef: p, getList: m, getPrm: F, clearSort: Y, calculateTableHeight: w }), (d, i) => {
1237
+ var L;
1238
+ const C = O("el-button"), I = O("el-checkbox"), R = O("el-text"), Z = O("vxe-column"), V = O("VxeTable"), X = O("el-pagination");
1239
+ return T(), re("div", {
1240
+ class: Se({ box: n.searchForm.showShadow })
544
1241
  }, [
545
- n.searchForm.showSearch ? (w(), D(qe, {
1242
+ n.searchForm.showSearch ? (T(), U(Xt, {
546
1243
  key: 0,
547
1244
  form: n.searchForm,
548
- onReset: g,
549
- onConfirm: _[1] || (_[1] = (N) => s())
1245
+ onReset: E,
1246
+ onConfirm: i[1] || (i[1] = (S) => m()),
1247
+ onVisibleChange: K(w)
550
1248
  }, {
551
- btn: T(() => [
552
- Y(y.$slots, "search-bar-btn", {}, void 0, !0),
553
- E(z, {
1249
+ btn: M(() => [
1250
+ se(d.$slots, "search-bar-btn", {}, void 0, !0),
1251
+ G(C, {
554
1252
  round: "",
555
- onClick: _[0] || (_[0] = (N) => i.value.openCustom())
1253
+ onClick: i[0] || (i[0] = (S) => p.value.openCustom())
556
1254
  }, {
557
- default: T(() => [
558
- E(ve, { name: "Tools" })
1255
+ default: M(() => [
1256
+ G(at, { name: "Tools" })
559
1257
  ]),
560
1258
  _: 1
561
1259
  })
562
1260
  ]),
563
1261
  _: 3
564
- }, 8, ["form"])) : P("", !0),
565
- Y(y.$slots, "table-header-left", {}, void 0, !0),
566
- M("div", {
1262
+ }, 8, ["form", "onVisibleChange"])) : ie("", !0),
1263
+ se(d.$slots, "table-header-left", {}, void 0, !0),
1264
+ ae("div", {
567
1265
  ref_key: "tableContentRef",
568
- ref: v
1266
+ ref: k
569
1267
  }, [
570
- E(Q, W({
1268
+ G(V, pe({
571
1269
  id: n.id,
572
1270
  ref_key: "tableRef",
573
- ref: i,
574
- loading: n.loading || c.value,
575
- data: n.api ? l.value : n.data
576
- }, C.value, {
577
- height: b.value,
578
- onCheckboxChange: U,
579
- onCheckboxAll: U,
1271
+ ref: p,
1272
+ loading: n.loading || r.value,
1273
+ data: n.api ? a.value : n.data,
580
1274
  border: ""
1275
+ }, ye.value, {
1276
+ height: f.value,
1277
+ onCheckboxChange: Re,
1278
+ onCheckboxAll: Re,
1279
+ onSortChange: (L = ye.value["sort-config"]) == null ? void 0 : L.sortChange
581
1280
  }), {
582
- default: T(() => [
583
- n.searchForm.showCheckBox ? (w(), D(G, {
1281
+ default: M(() => [
1282
+ n.searchForm.showCheckBox == null || n.searchForm.showCheckBox ? (T(), U(Z, {
584
1283
  key: 0,
585
1284
  type: "checkbox",
586
- width: B(o) == "zh_cn" ? 80 : 150,
587
- fixed: "left",
588
- title: y.$t("xu-hao")
1285
+ width: K(l) == "zh_cn" ? 80 : 150,
1286
+ title: d.$t("xu-hao"),
1287
+ fixed: "left"
589
1288
  }, {
590
- checkbox: T(({ rowIndex: N, row: le, checked: we, disabled: q, indeterminate: st }) => [
591
- M("div", Je, [
592
- we ? (w(), D(L, {
1289
+ checkbox: M(({ rowIndex: S, row: j, checked: H, disabled: A, indeterminate: N }) => [
1290
+ ae("div", en, [
1291
+ H ? (T(), U(I, {
593
1292
  key: 0,
594
1293
  checked: !0,
595
- disabled: q,
1294
+ disabled: A,
596
1295
  size: "default",
597
- onClick: ne(($e) => !q && I(le), ["stop"])
598
- }, null, 8, ["disabled", "onClick"])) : (w(), D(L, {
1296
+ onClick: $e((B) => !A && Ve(j), ["stop"])
1297
+ }, null, 8, ["disabled", "onClick"])) : (T(), U(I, {
599
1298
  key: 1,
600
- disabled: q,
1299
+ disabled: A,
601
1300
  checked: !1,
602
1301
  size: "default",
603
- onClick: ne(($e) => !q && I(le), ["stop"])
1302
+ onClick: $e((B) => !A && Ve(j), ["stop"])
604
1303
  }, null, 8, ["disabled", "onClick"])),
605
- E(j, {
1304
+ G(R, {
606
1305
  type: "info",
607
1306
  class: "mgl5"
608
1307
  }, {
609
- default: T(() => [
610
- R(H(N + 1), 1)
1308
+ default: M(() => [
1309
+ te(ne(S + 1), 1)
611
1310
  ]),
612
1311
  _: 2
613
1312
  }, 1024)
614
1313
  ])
615
1314
  ]),
616
1315
  _: 1
617
- }, 8, ["width", "title"])) : P("", !0),
618
- Y(y.$slots, "default", {}, void 0, !0)
1316
+ }, 8, ["width", "title"])) : ie("", !0),
1317
+ se(d.$slots, "default", {}, void 0, !0)
619
1318
  ]),
620
1319
  _: 3
621
- }, 16, ["id", "loading", "data", "height"])
1320
+ }, 16, ["id", "loading", "data", "height", "onSortChange"])
622
1321
  ], 512),
623
- n.searchForm.showPage ? (w(), D(ke, {
1322
+ n.searchForm.showPage ? (T(), U(X, {
624
1323
  key: 1,
625
- "current-page": r.pageNo,
626
- "onUpdate:currentPage": _[2] || (_[2] = (N) => r.pageNo = N),
1324
+ "current-page": v[K(s)],
1325
+ "onUpdate:currentPage": i[2] || (i[2] = (S) => v[K(s)] = S),
627
1326
  class: "myPagination mgt10",
628
1327
  background: "",
629
1328
  layout: "total, sizes, prev, pager, next",
630
- total: r.total,
631
- "page-size": r.pageSize,
1329
+ total: v.total,
1330
+ "page-size": v.pageSize,
632
1331
  "page-sizes": [10, 50, 100, 500],
633
- onCurrentChange: S,
634
- onSizeChange: O
635
- }, null, 8, ["current-page", "total", "page-size"])) : P("", !0)
1332
+ onCurrentChange: ct,
1333
+ onSizeChange: ut
1334
+ }, null, 8, ["current-page", "total", "page-size"])) : ie("", !0)
636
1335
  ], 2);
637
1336
  };
638
1337
  }
639
- }, bt = /* @__PURE__ */ K(We, [["__scopeId", "data-v-7b74503d"]]);
640
- function _t(n, e = {}) {
641
- const t = {
1338
+ }, Fn = /* @__PURE__ */ ge(tn, [["__scopeId", "data-v-7c7c0598"]]), Ln = {
1339
+ __name: "index",
1340
+ props: {
1341
+ sheetsConfig: {
1342
+ type: Object,
1343
+ required: !0
1344
+ },
1345
+ fileName: {
1346
+ type: String,
1347
+ required: !0
1348
+ }
1349
+ },
1350
+ setup(n) {
1351
+ const e = n;
1352
+ function t() {
1353
+ At(e.fileName, e.sheetsConfig);
1354
+ }
1355
+ return (l, o) => {
1356
+ const r = O("el-link");
1357
+ return T(), U(r, pe({
1358
+ type: "primary",
1359
+ underline: "never"
1360
+ }, l.$attrs, { onClick: t }), {
1361
+ default: M(() => [
1362
+ te(ne(l.$t("xia-zai-dao-ru-mo-ban")), 1)
1363
+ ]),
1364
+ _: 1
1365
+ }, 16);
1366
+ };
1367
+ }
1368
+ };
1369
+ function On(n, e = {}) {
1370
+ const t = Le(), l = {
642
1371
  inForm: !0,
643
1372
  required: !0,
644
1373
  ...e
@@ -646,302 +1375,36 @@ function _t(n, e = {}) {
646
1375
  phone: /^1(3[0-9]|4[01456879]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/,
647
1376
  password: /(?=.*\d)(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9]).{8,12}/,
648
1377
  email: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
649
- }[n], { inForm: a, value: c, required: l, msg: u = "请输入正确内容" } = t;
650
- return a ? function(r, v, p) {
651
- if (l) {
652
- o.test(v) ? p() : p(new Error(u));
1378
+ }[n], { inForm: r, value: a, required: c, msg: s = t("validate.invalidInput") } = l;
1379
+ return r ? function(v, p, k) {
1380
+ if (c) {
1381
+ o.test(p) ? k() : k(new Error(s));
653
1382
  return;
654
1383
  }
655
- v && !o.test(v) ? p(new Error(u)) : p();
656
- } : o.test(c);
1384
+ p && !o.test(p) ? k(new Error(s)) : k();
1385
+ } : o.test(a);
657
1386
  }
658
- const kt = {
1387
+ const Dn = {
659
1388
  //加密
660
1389
  encrypt(n, e) {
661
1390
  e = e || "1CFEC667A1E6D42DC12565AAAA460494";
662
- var t = V.enc.Utf8.parse(e), o = V.enc.Utf8.parse(n), a = V.AES.encrypt(o, t, {
663
- mode: V.mode.ECB,
664
- padding: V.pad.Pkcs7
1391
+ var t = ee.enc.Utf8.parse(e), l = ee.enc.Utf8.parse(n), o = ee.AES.encrypt(l, t, {
1392
+ mode: ee.mode.ECB,
1393
+ padding: ee.pad.Pkcs7
665
1394
  });
666
- return a.toString();
1395
+ return o.toString();
667
1396
  },
668
1397
  //解密
669
1398
  decrypt(n, e) {
670
1399
  e = e || "1CFEC667A1E6D42DC12565AAAA460494";
671
- var t = V.enc.Utf8.parse(e), o = V.AES.decrypt(n, t, {
672
- mode: V.mode.ECB,
673
- padding: V.pad.Pkcs7
1400
+ var t = ee.enc.Utf8.parse(e), l = ee.AES.decrypt(n, t, {
1401
+ mode: ee.mode.ECB,
1402
+ padding: ee.pad.Pkcs7
674
1403
  });
675
- return V.enc.Utf8.stringify(o).toString();
1404
+ return ee.enc.Utf8.stringify(l).toString();
676
1405
  }
677
1406
  };
678
- var ye = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
679
- function Ce(n) {
680
- return n && n.__esModule && Object.prototype.hasOwnProperty.call(n, "default") ? n.default : n;
681
- }
682
- var be = { exports: {} };
683
- (function(n, e) {
684
- (function(t, o) {
685
- n.exports = o();
686
- })(ye, function() {
687
- var t = "minute", o = /[+-]\d\d(?::?\d\d)?/g, a = /([+-]|\d\d)/g;
688
- return function(c, l, u) {
689
- var r = l.prototype;
690
- u.utc = function(s) {
691
- var g = { date: s, utc: !0, args: arguments };
692
- return new l(g);
693
- }, r.utc = function(s) {
694
- var g = u(this.toDate(), { locale: this.$L, utc: !0 });
695
- return s ? g.add(this.utcOffset(), t) : g;
696
- }, r.local = function() {
697
- return u(this.toDate(), { locale: this.$L, utc: !1 });
698
- };
699
- var v = r.parse;
700
- r.parse = function(s) {
701
- s.utc && (this.$u = !0), this.$utils().u(s.$offset) || (this.$offset = s.$offset), v.call(this, s);
702
- };
703
- var p = r.init;
704
- r.init = function() {
705
- if (this.$u) {
706
- var s = this.$d;
707
- this.$y = s.getUTCFullYear(), this.$M = s.getUTCMonth(), this.$D = s.getUTCDate(), this.$W = s.getUTCDay(), this.$H = s.getUTCHours(), this.$m = s.getUTCMinutes(), this.$s = s.getUTCSeconds(), this.$ms = s.getUTCMilliseconds();
708
- } else
709
- p.call(this);
710
- };
711
- var k = r.utcOffset;
712
- r.utcOffset = function(s, g) {
713
- var f = this.$utils().u;
714
- if (f(s))
715
- return this.$u ? 0 : f(this.$offset) ? k.call(this) : this.$offset;
716
- if (typeof s == "string" && (s = function(C) {
717
- C === void 0 && (C = "");
718
- var S = C.match(o);
719
- if (!S)
720
- return null;
721
- var O = ("" + S[0]).match(a) || ["-", 0, 0], U = O[0], I = 60 * +O[1] + +O[2];
722
- return I === 0 ? 0 : U === "+" ? I : -I;
723
- }(s), s === null))
724
- return this;
725
- var i = Math.abs(s) <= 16 ? 60 * s : s;
726
- if (i === 0)
727
- return this.utc(g);
728
- var m = this.clone();
729
- if (g)
730
- return m.$offset = i, m.$u = !1, m;
731
- var $ = this.$u ? this.toDate().getTimezoneOffset() : -1 * this.utcOffset();
732
- return (m = this.local().add(i + $, t)).$offset = i, m.$x.$localOffset = $, m;
733
- };
734
- var d = r.format;
735
- r.format = function(s) {
736
- var g = s || (this.$u ? "YYYY-MM-DDTHH:mm:ss[Z]" : "");
737
- return d.call(this, g);
738
- }, r.valueOf = function() {
739
- var s = this.$utils().u(this.$offset) ? 0 : this.$offset + (this.$x.$localOffset || this.$d.getTimezoneOffset());
740
- return this.$d.valueOf() - 6e4 * s;
741
- }, r.isUTC = function() {
742
- return !!this.$u;
743
- }, r.toISOString = function() {
744
- return this.toDate().toISOString();
745
- }, r.toString = function() {
746
- return this.toDate().toUTCString();
747
- };
748
- var b = r.toDate;
749
- r.toDate = function(s) {
750
- return s === "s" && this.$offset ? u(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate() : b.call(this);
751
- };
752
- var h = r.diff;
753
- r.diff = function(s, g, f) {
754
- if (s && this.$u === s.$u)
755
- return h.call(this, s, g, f);
756
- var i = this.local(), m = u(s).local();
757
- return h.call(i, m, g, f);
758
- };
759
- };
760
- });
761
- })(be);
762
- var Ge = be.exports;
763
- const Qe = /* @__PURE__ */ Ce(Ge);
764
- var _e = { exports: {} };
765
- (function(n, e) {
766
- (function(t, o) {
767
- n.exports = o();
768
- })(ye, function() {
769
- var t = { year: 0, month: 1, day: 2, hour: 3, minute: 4, second: 5 }, o = {};
770
- return function(a, c, l) {
771
- var u, r = function(d, b, h) {
772
- h === void 0 && (h = {});
773
- var s = new Date(d), g = function(f, i) {
774
- i === void 0 && (i = {});
775
- var m = i.timeZoneName || "short", $ = f + "|" + m, C = o[$];
776
- return C || (C = new Intl.DateTimeFormat("en-US", { hour12: !1, timeZone: f, year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit", timeZoneName: m }), o[$] = C), C;
777
- }(b, h);
778
- return g.formatToParts(s);
779
- }, v = function(d, b) {
780
- for (var h = r(d, b), s = [], g = 0; g < h.length; g += 1) {
781
- var f = h[g], i = f.type, m = f.value, $ = t[i];
782
- $ >= 0 && (s[$] = parseInt(m, 10));
783
- }
784
- var C = s[3], S = C === 24 ? 0 : C, O = s[0] + "-" + s[1] + "-" + s[2] + " " + S + ":" + s[4] + ":" + s[5] + ":000", U = +d;
785
- return (l.utc(O).valueOf() - (U -= U % 1e3)) / 6e4;
786
- }, p = c.prototype;
787
- p.tz = function(d, b) {
788
- d === void 0 && (d = u);
789
- var h, s = this.utcOffset(), g = this.toDate(), f = g.toLocaleString("en-US", { timeZone: d }), i = Math.round((g - new Date(f)) / 1e3 / 60), m = 15 * -Math.round(g.getTimezoneOffset() / 15) - i;
790
- if (!Number(m))
791
- h = this.utcOffset(0, b);
792
- else if (h = l(f, { locale: this.$L }).$set("millisecond", this.$ms).utcOffset(m, !0), b) {
793
- var $ = h.utcOffset();
794
- h = h.add(s - $, "minute");
795
- }
796
- return h.$x.$timezone = d, h;
797
- }, p.offsetName = function(d) {
798
- var b = this.$x.$timezone || l.tz.guess(), h = r(this.valueOf(), b, { timeZoneName: d }).find(function(s) {
799
- return s.type.toLowerCase() === "timezonename";
800
- });
801
- return h && h.value;
802
- };
803
- var k = p.startOf;
804
- p.startOf = function(d, b) {
805
- if (!this.$x || !this.$x.$timezone)
806
- return k.call(this, d, b);
807
- var h = l(this.format("YYYY-MM-DD HH:mm:ss:SSS"), { locale: this.$L });
808
- return k.call(h, d, b).tz(this.$x.$timezone, !0);
809
- }, l.tz = function(d, b, h) {
810
- var s = h && b, g = h || b || u, f = v(+l(), g);
811
- if (typeof d != "string")
812
- return l(d).tz(g);
813
- var i = function(S, O, U) {
814
- var I = S - 60 * O * 1e3, y = v(I, U);
815
- if (O === y)
816
- return [I, O];
817
- var _ = v(I -= 60 * (y - O) * 1e3, U);
818
- return y === _ ? [I, y] : [S - 60 * Math.min(y, _) * 1e3, Math.max(y, _)];
819
- }(l.utc(d, s).valueOf(), f, g), m = i[0], $ = i[1], C = l(m).utcOffset($);
820
- return C.$x.$timezone = g, C;
821
- }, l.tz.guess = function() {
822
- return Intl.DateTimeFormat().resolvedOptions().timeZone;
823
- }, l.tz.setDefault = function(d) {
824
- u = d;
825
- };
826
- };
827
- });
828
- })(_e);
829
- var Xe = _e.exports;
830
- const et = /* @__PURE__ */ Ce(Xe);
831
- pe.extend(Qe);
832
- pe.extend(et);
833
- async function wt(n, e) {
834
- const { fields: t, range: o = 1 } = e;
835
- if (!t)
836
- throw new Error("请输入列字段映射");
837
- let a = new me.Workbook();
838
- await a.xlsx.load(n);
839
- const c = {};
840
- return a.eachSheet(function(l, u) {
841
- const r = [];
842
- l.eachRow(function(v, p) {
843
- if (p > o) {
844
- let k = {}, d = !0;
845
- Object.keys(t).forEach((b) => {
846
- const h = v.getCell(t[b]).value;
847
- k[b] = h, h && (d = !1);
848
- }), d || r.push(k);
849
- }
850
- }), c[l._name] = r;
851
- }), a = null, c;
852
- }
853
- const tt = {
854
- columnWidth: 30
855
- };
856
- async function $t(n, e, t = [], o = {}) {
857
- if (!n || !e)
858
- return;
859
- const { columnStyle: a } = o, { columnWidth: c } = tt;
860
- e.forEach((r) => {
861
- r.width = r.width ? r.width : c;
862
- });
863
- const { workbook: l, worksheet: u } = nt();
864
- u.columns = e, u.addRows(t), a && await ot(l, u, a);
865
- try {
866
- const r = await l.xlsx.writeBuffer(), v = new File([r], n, {
867
- type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
868
- });
869
- Fe(v);
870
- } catch (r) {
871
- console.log(r);
872
- }
873
- }
874
- function nt() {
875
- const n = new me.Workbook();
876
- n.creator = "distributor System", n.lastModifiedBy = "distributor System", n.created = /* @__PURE__ */ new Date(), n.modified = /* @__PURE__ */ new Date(), n.lastPrinted = /* @__PURE__ */ new Date();
877
- const e = n.addWorksheet("Sheet1");
878
- return { workbook: n, worksheet: e };
879
- }
880
- async function ot(n, e, t) {
881
- const o = Object.keys(t);
882
- for (const a of o) {
883
- const c = t[a], { type: l } = c;
884
- switch (l) {
885
- case "IMG":
886
- await at(n, e, a);
887
- break;
888
- }
889
- }
890
- }
891
- async function at(n, e, t, o) {
892
- const a = e.getColumn(t), c = a.values;
893
- e.getColumn(t).width = 20, e.eachRow((l, u) => {
894
- u > 1 && (l.height = 40);
895
- });
896
- for (let l = 0, u = c.length; l < u; l++) {
897
- if (l < 2)
898
- continue;
899
- let r = c[l];
900
- r && (e.getCell(a.letter + l).value = "", await lt(n, e, r, {
901
- width: 100,
902
- height: 50,
903
- col: a._number - 1,
904
- row: l - 1
905
- }));
906
- }
907
- }
908
- async function lt(n, e, t, o) {
909
- const { col: a, row: c, width: l, height: u } = o, { success: r, base64: v } = await rt(t, 0.3);
910
- if (r) {
911
- const p = n.addImage({
912
- base64: v,
913
- extension: "jpeg"
914
- });
915
- e.addImage(p, {
916
- tl: { col: a, row: c },
917
- ext: { width: l, height: u }
918
- });
919
- }
920
- }
921
- function rt(n, e = 1) {
922
- const t = new Image();
923
- return t.setAttribute("crossOrigin", "anonymous"), t.crossOrigin = "anonymous", t.src = n, new Promise((o, a) => {
924
- t.onload = () => {
925
- const c = document.createElement("canvas");
926
- c.width = t.width, c.height = t.height, c.getContext("2d").drawImage(t, 0, 0, c.width, c.height), o({
927
- success: !0,
928
- //canvas.toDataURL的方法将图片的绝对路径转换为base64编码
929
- base64: c.toDataURL("image/jpeg", e)
930
- });
931
- }, t.onerror = () => {
932
- o({ success: !1 });
933
- };
934
- });
935
- }
936
- function it(n) {
937
- if (n < 26)
938
- return String.fromCharCode(65 + n);
939
- {
940
- const e = String.fromCharCode(65 + Math.floor((n - 26) / 26)), t = String.fromCharCode(65 + (n - 26) % 26);
941
- return e + t;
942
- }
943
- }
944
- class St {
1407
+ class zn {
945
1408
  constructor(e = {}) {
946
1409
  this.config = {
947
1410
  clientCode: e.clientCode || "one-portal",
@@ -1037,10 +1500,10 @@ class St {
1037
1500
  });
1038
1501
  if (!t.ok)
1039
1502
  throw new Error(`HTTP ${t.status}: ${t.statusText}`);
1040
- const o = await t.json();
1041
- if (o.success && o.data)
1042
- return this.token = o.data.token, this.user = o.data.user, this.saveToStorage(), this.clearTicketFromUrl(), this.log("ST票据验证成功,用户登录成功:", this.user), this.config.loginCallback && this.config.loginCallback(this.user, this.token), !0;
1043
- throw new Error(o.message || "ST票据验证失败");
1503
+ const l = await t.json();
1504
+ if (l.success && l.data)
1505
+ return this.token = l.data.token, this.user = l.data.user, this.saveToStorage(), this.clearTicketFromUrl(), this.log("ST票据验证成功,用户登录成功:", this.user), this.config.loginCallback && this.config.loginCallback(this.user, this.token), !0;
1506
+ throw new Error(l.message || "ST票据验证失败");
1044
1507
  } catch (t) {
1045
1508
  return this.log("ST票据验证失败:", t), this.handleError(t), !1;
1046
1509
  }
@@ -1079,19 +1542,19 @@ class St {
1079
1542
  * 发送带认证的HTTP请求
1080
1543
  */
1081
1544
  async request(e, t = {}) {
1082
- const o = {
1545
+ const l = {
1083
1546
  headers: {
1084
1547
  "Content-Type": "application/json",
1085
1548
  ...t.headers
1086
1549
  },
1087
1550
  ...t
1088
1551
  };
1089
- o.headers.appId = this.config.clientCode, this.token && (o.headers.Authorization = `Bearer ${this.token}`);
1552
+ l.headers.appId = this.config.clientCode, this.token && (l.headers.Authorization = `Bearer ${this.token}`);
1090
1553
  try {
1091
- const a = await fetch(e, o);
1092
- return a.status === 401 ? (this.log("Token已过期,需要重新登录"), this.logout(), null) : a;
1093
- } catch (a) {
1094
- throw this.log("请求失败:", a), a;
1554
+ const o = await fetch(e, l);
1555
+ return o.status === 401 ? (this.log("Token已过期,需要重新登录"), this.logout(), null) : o;
1556
+ } catch (o) {
1557
+ throw this.log("请求失败:", o), o;
1095
1558
  }
1096
1559
  }
1097
1560
  /**
@@ -1147,130 +1610,231 @@ class St {
1147
1610
  return this.config[e];
1148
1611
  }
1149
1612
  }
1150
- function xt(n) {
1151
- return new Promise((e) => {
1152
- setTimeout(() => {
1153
- e();
1154
- }, n);
1155
- });
1613
+ function An(n, e = {}) {
1614
+ const l = Object.assign({
1615
+ manual: !1,
1616
+ // 手动执行
1617
+ log: !1,
1618
+ params: null,
1619
+ format: null
1620
+ }, e), { manual: o, log: r, params: a = {}, cb: c, format: s } = l, v = q([]), p = q(!1), k = (x) => {
1621
+ const w = x || a;
1622
+ p.value = !0, n(w).then((b) => {
1623
+ const { code: u, data: f, msg: $ } = b;
1624
+ if (c) {
1625
+ const { records: h, rows: m } = f || {}, E = h || m ? h || m : f;
1626
+ v.value = ke(E, s), c(b);
1627
+ }
1628
+ if (f) {
1629
+ if (f.records != null || f.rows != null) {
1630
+ const { records: h, rows: m, total: E = 0 } = f || {};
1631
+ w && w.total != null && (a.total = parseInt(E)), v.value = ke(h || m || [], s);
1632
+ } else
1633
+ v.value = ke(f, s);
1634
+ r && console.log("useRequest-res", v.value);
1635
+ }
1636
+ }).catch((b) => {
1637
+ c && (console.log("useRequestErr", b), c({ code: 500 }));
1638
+ }).finally(() => {
1639
+ p.value = !1;
1640
+ });
1641
+ };
1642
+ return o || k(), [p, v, k];
1156
1643
  }
1157
- function Tt(n) {
1158
- return JSON.parse(JSON.stringify(n));
1644
+ function Mn(n) {
1645
+ const e = q(n), t = q(""), l = q("");
1646
+ return Ze(e, (o) => {
1647
+ const r = o || ["", ""];
1648
+ t.value = r[0], l.value = r[1];
1649
+ }), [e, t, l];
1159
1650
  }
1160
- function Dt(n) {
1161
- let e = [], t = {}, o = (a, c) => Object.prototype.hasOwnProperty.call(a, c);
1162
- for (const a of n) {
1163
- t[a.id] = {
1164
- ...a,
1165
- // 判断当前项的子项 如果map有存储就用存储的子项 否则初始化
1166
- children: o(t, a.id) ? t[a.id].children : []
1167
- };
1168
- const c = t[a.id];
1169
- a.pid == -1 ? e.push(c) : (o(t, a.pid) || (t[a.pid] = {
1170
- children: []
1171
- }), t[a.pid].children.push(c));
1172
- }
1173
- return e;
1651
+ function Rn(n) {
1652
+ return Object.prototype.toString.call(n).slice(8, -1).toLowerCase();
1174
1653
  }
1175
- function Ot(n, e = " ") {
1176
- return n ? n.split(e).filter((t) => t.trim()) : [];
1654
+ function ke(n, e) {
1655
+ if (!e)
1656
+ return n;
1657
+ if (n instanceof Array)
1658
+ return n.map((l) => {
1659
+ let o = {};
1660
+ return e.forEach((r) => o[r] = l[r]), o;
1661
+ });
1662
+ let t = {};
1663
+ return e.forEach((l) => t[l] = n[l]), t;
1177
1664
  }
1178
- class se {
1179
- constructor(e, t = ["label", "value", "labelEn"]) {
1180
- this.list = e, this.map = new Map(
1181
- e.map((o) => {
1182
- let a = {
1183
- ...o,
1184
- label: o[t[0]],
1185
- value: o[t[1]]
1186
- };
1187
- return t[2] && (a.labelEn = o[t[2]]), [o[t[1]], a];
1188
- })
1189
- );
1190
- }
1191
- getName(e, t) {
1192
- if (!this.has(e))
1193
- return "-";
1194
- const { label: o, labelEn: a } = this.map.get(e);
1195
- return (t == "zh_cn" ? o : a) || o || "-";
1196
- }
1197
- getTag(e) {
1198
- if (!this.has(e))
1199
- return "info";
1200
- const { tag: t = "info" } = this.map.get(e);
1201
- return t;
1202
- }
1203
- getItem(e) {
1204
- return this.has(e) ? this.map.get(e) : null;
1205
- }
1206
- getColor(e) {
1207
- if (!this.has(e))
1208
- return null;
1209
- const { color: t } = this.map.get(e);
1210
- return t;
1211
- }
1212
- has(e) {
1213
- return this.map.has(e);
1214
- }
1665
+ function Vn(n, e = []) {
1666
+ const { locale: t } = de(), l = q(n());
1667
+ return Ze(
1668
+ [t, ...e],
1669
+ () => {
1670
+ l.value = n();
1671
+ },
1672
+ { immediate: !0 }
1673
+ ), [l];
1215
1674
  }
1216
- function zt(n, e = [], t = "i18nName") {
1217
- if (n.length == 0)
1218
- return new se([]);
1219
- if (e.length < 2)
1220
- throw new Error("keys 长度必须大于2 默认前两位为 label value ");
1221
- let o = n.map((a) => {
1222
- let c = {};
1223
- return t && (c.labelEn = a[t]), e.forEach((l, u) => {
1224
- u === 0 ? c.label = a[l] : u === 1 ? c.value = a[l] : c[l] = a[l];
1225
- }), c;
1226
- });
1227
- return new se(o);
1675
+ function Un(n, e = "zh_cn") {
1676
+ if (!n)
1677
+ return "-";
1678
+ const l = lt().global.locale.value;
1679
+ return n[l] || n[e] || "-";
1228
1680
  }
1229
- function Et(n) {
1230
- return n ? n.replace(/<[^>]+>/g, "") : "";
1681
+ function jn(n, e) {
1682
+ let t = _t;
1683
+ return typeof n == "string" && n.length > 0 && (t = Fe(n).mapState), st(e, t);
1231
1684
  }
1232
- function Ut(n) {
1233
- return n ? (n.includes("\\\\u") && (n = n.replace(/\\/g, "")), n.replace(/\\u[\dA-F]{4}/gi, (e) => String.fromCharCode(parseInt(e.replace(/\\u/g, ""), 16)))) : "";
1685
+ function qn(n, e) {
1686
+ let t = $t;
1687
+ return typeof n == "string" && n.length > 0 && (t = Fe(n).mapGetters), st(e, t);
1234
1688
  }
1235
- function It(n, e = 10) {
1236
- let t = 1048576 * e;
1237
- return !(n.size > t);
1689
+ function Pn(n, e) {
1690
+ let t = St;
1691
+ return typeof n == "string" && n.length > 0 && (t = Fe(n).mapActions), nn(e, t);
1238
1692
  }
1239
- function Vt(n) {
1240
- return Array.from(10).fill(0).map((t, o) => n + "_" + o);
1693
+ function st(n, e) {
1694
+ const t = Xe(), l = e(n), o = {};
1695
+ return Object.keys(l).forEach((r) => {
1696
+ const a = l[r].bind({ $store: t });
1697
+ o[r] = ue(a);
1698
+ }), o;
1241
1699
  }
1242
- function Ft(n) {
1243
- let e = {};
1244
- return n.map((t, o) => {
1245
- let { key: a, option: c, type: l } = t, u = it(o);
1246
- c ? e[a] = `${u}---option` : l === "image" ? e[a] = `${u}---image` : e[a] = u;
1247
- }), e;
1700
+ function nn(n, e) {
1701
+ const t = Xe(), l = e(n), o = {};
1702
+ return Object.keys(l).forEach((r) => {
1703
+ o[r] = l[r].bind({ $store: t });
1704
+ }), o;
1248
1705
  }
1249
- function Lt(n, e) {
1250
- return e.split(".").reduce((t, o) => t && t[o], n);
1706
+ const on = {
1707
+ __name: "EnumRender",
1708
+ props: {
1709
+ renderOpts: {
1710
+ type: Object,
1711
+ default: () => ({
1712
+ enum: {}
1713
+ })
1714
+ },
1715
+ params: {
1716
+ type: Object
1717
+ }
1718
+ },
1719
+ setup(n) {
1720
+ const e = n, t = e.params.row[e.params.column.field];
1721
+ return (l, o) => {
1722
+ const r = O("el-text");
1723
+ return n.renderOpts.text ? (T(), U(r, { key: 0 }, {
1724
+ default: M(() => [
1725
+ te(ne(n.renderOpts.enum.getName(K(t))), 1)
1726
+ ]),
1727
+ _: 1
1728
+ })) : (T(), U(r, {
1729
+ key: 1,
1730
+ type: n.renderOpts.enum.getTag(K(t))
1731
+ }, {
1732
+ default: M(() => [
1733
+ te(ne(n.renderOpts.enum.getName(K(t))), 1)
1734
+ ]),
1735
+ _: 1
1736
+ }, 8, ["type"]));
1737
+ };
1738
+ }
1739
+ };
1740
+ function Bn() {
1741
+ me.renderer.add("Enum", {
1742
+ // 默认显示模板
1743
+ renderTableDefault(n, e) {
1744
+ return [null, void 0].includes(e.row[e.column.field]) ? "-" : /* @__PURE__ */ React.createElement(on, { renderOpts: n, params: e });
1745
+ }
1746
+ }), me.renderer.add("InputNumber", {
1747
+ // 默认显示模板
1748
+ renderTableDefault(n, e) {
1749
+ return /* @__PURE__ */ React.createElement(pt, { "v-model": e.row[e.column.field], ...n.props, "step-strictly": !0, "value-on-clear": 0 });
1750
+ }
1751
+ }), me.renderer.add("TrueFalse", {
1752
+ // 默认显示模板
1753
+ renderTableDefault(n, e) {
1754
+ const { locale: t } = de();
1755
+ let l = t.value == "zh_cn";
1756
+ return /* @__PURE__ */ React.createElement(
1757
+ gt,
1758
+ {
1759
+ type: e.row[e.column.field] ? "success" : "danger"
1760
+ },
1761
+ e.row[e.column.field] ? l ? "是" : "YES" : l ? "否" : "NO"
1762
+ );
1763
+ }
1764
+ }), me.renderer.add("I18n", {
1765
+ // 默认显示模板
1766
+ renderTableDefault(n, e) {
1767
+ const { locale: t } = de();
1768
+ let l = t.value == "zh_cn" ? e.column.field : n.fieldEn;
1769
+ return e.row[l] || e.row[e.column.field];
1770
+ }
1771
+ }), me.renderer.add("Link", {
1772
+ // 默认显示模板
1773
+ renderTableDefault(n, e) {
1774
+ var c;
1775
+ let t = e.column.field;
1776
+ const l = Et(), { multiple: o, to: r } = n;
1777
+ if (!o)
1778
+ return /* @__PURE__ */ React.createElement(
1779
+ Ue,
1780
+ {
1781
+ underline: "never",
1782
+ type: "primary",
1783
+ onclick: () => l.push({ path: r, query: { [t]: e.row[t] } })
1784
+ },
1785
+ e.row[t]
1786
+ );
1787
+ const a = ((c = e.row[t]) == null ? void 0 : c.split(",")) || [];
1788
+ return a.map((s, v) => /* @__PURE__ */ React.createElement("span", null, /* @__PURE__ */ React.createElement(
1789
+ Ue,
1790
+ {
1791
+ underline: "never",
1792
+ type: "primary",
1793
+ onclick: () => l.push({ path: r, query: { [t]: s } })
1794
+ },
1795
+ s
1796
+ ), v < a.length - 1 ? "," : ""));
1797
+ }
1798
+ });
1251
1799
  }
1252
1800
  export {
1253
- Ae as CmpDictionary,
1254
- yt as ConfrimButton,
1255
- Ct as ImportButton,
1256
- vt as LayOutForm,
1257
- bt as ListPage,
1258
- St as OnePortalCasSDK,
1259
- qe as SearchBar,
1260
- se as StatusMap,
1261
- Tt as _toRaw,
1262
- zt as arrToStatusMap,
1263
- Dt as arrayToTree,
1264
- It as checkFileSize,
1265
- _t as creatValidator,
1266
- Ft as createImportFields,
1267
- Vt as createListPageId,
1268
- kt as crypto,
1269
- $t as exportExcel,
1270
- Lt as getValueBykey,
1271
- wt as importExcel,
1272
- xt as sleep,
1273
- Ot as stringToArray,
1274
- Et as stripHtmlTags,
1275
- Ut as unicode2Str
1801
+ Bt as CmpDictionary,
1802
+ In as ConfrimButton,
1803
+ Ln as DownExcelTemp,
1804
+ Tn as ImportButton,
1805
+ gn as LayOutForm,
1806
+ Fn as ListPage,
1807
+ zn as OnePortalCasSDK,
1808
+ Xt as SearchBar,
1809
+ Be as StatusMap,
1810
+ yn as _toRaw,
1811
+ Rn as _typeOf,
1812
+ xn as arrToStatusMap,
1813
+ Cn as arrayToTree,
1814
+ _n as checkFileSize,
1815
+ On as creatValidator,
1816
+ Sn as createImportFields,
1817
+ $n as createListPageId,
1818
+ Dn as crypto,
1819
+ Ie as en,
1820
+ At as exportExcel,
1821
+ lt as getI18n,
1822
+ Le as getI18nT,
1823
+ Un as getLocaleValue,
1824
+ En as getValueBykey,
1825
+ vn as importExcel,
1826
+ Ot as messages,
1827
+ Bn as registerVxeRenderers,
1828
+ Dt as setupI18n,
1829
+ bn as sleep,
1830
+ rt as stringToArray,
1831
+ wn as stripHtmlTags,
1832
+ kn as unicode2Str,
1833
+ Pn as useActions,
1834
+ Mn as useDatePicker,
1835
+ qn as useGetters,
1836
+ Vn as useI18nReState,
1837
+ An as useRequest,
1838
+ jn as useState,
1839
+ Ee as zhCn
1276
1840
  };