@ithinkdt/ui 4.0.0-700 → 4.0.0-800

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,9 +1,9 @@
1
1
  import { n as useI18n } from "./use-i18n-D-AJ8KbA.js";
2
- import { g as useStyle, h as useMergedClsPrefix, i as cM, n as cB, r as cE, t as c } from "./use-style-DrH-89qR.js";
3
- import { i as vTooltip } from "./directives-RPqFovTo.js";
2
+ import { g as useStyle, h as useMergedClsPrefix, i as cM, n as cB, r as cE, t as c } from "./use-style-BGq0HdRK.js";
3
+ import { i as vTooltip } from "./directives-CBQhJ3zJ.js";
4
4
  import { Fragment, computed, createTextVNode, createVNode, defineComponent, h, inject, isVNode, markRaw, mergeProps, nextTick, reactive, ref, shallowRef, toRaw, toRef, toValue, unref, useTemplateRef, watch, withDirectives } from "vue";
5
5
  import { toReactive, unrefElement, until, useCurrentElement, useElementSize, watchDebounced } from "@vueuse/core";
6
- import { NAnchor, NAnchorLink, NAvatar, NAvatarGroup, NButton, NCard, NCheckbox, NCheckboxGroup, NDataTable, NDropdown, NEllipsis, NEmpty, NFlex, NForm, NFormItem, NGi, NGrid, NH4, NIcon, NInput, NList, NListItem, NPagination, NPopover, NRadio, NRadioButton, NRadioGroup, NSelect, NSpin, NTag, NText, NTooltip, NTransfer, NTree, NTreeSelect, dataTableProps, formProps, useDialog } from "ithinkdt-ui";
6
+ import { NAnchor, NAnchorLink, NAvatar, NAvatarGroup, NButton, NCard, NCheckbox, NCheckboxGroup, NDataTable, NDropdown, NEllipsis, NEmpty, NFlex, NForm, NFormItem, NGi, NGrid, NIcon, NInput, NList, NListItem, NPagination, NPopover, NRadio, NRadioButton, NRadioGroup, NSelect, NSpin, NTag, NText, NTooltip, NTransfer, NTree, NTreeSelect, dataTableProps, formProps, useDialog } from "ithinkdt-ui";
7
7
  import { nanoid } from "nanoid";
8
8
  import { VOverflow, VResizeObserver } from "vueuc";
9
9
  import { Sortable } from "sortablejs/modular/sortable.core.esm.js";
@@ -67,37 +67,37 @@ const NCheckboxes = /* @__PURE__ */ defineComponent({
67
67
  "update:modelValue": () => !0,
68
68
  updateModelValue: () => !0
69
69
  },
70
- setup(x, { emit: S, attrs: C }) {
71
- let { t: w } = useI18n(), T = computed(() => x.default ? x.default === !0 ? w("common.all") : typeof x.default == "string" ? x.default : x.default?.[x.labelField] ?? w("common.all") : ""), E = ref([]);
72
- watch(() => x.modelValue, (e) => E.value = e, { immediate: !0 });
73
- let D = (e) => {
74
- S("update:modelValue", e), S("updateModelValue", e);
75
- }, O = () => {
76
- D(E.value?.length === x.options.length ? [] : x.options.map((e) => e[x.valueField]));
77
- }, A = computed(() => x.options.length > E.value?.length && E.value?.length > 0), j = computed(() => ({ "--n-label-padding": x.labelPadding }));
70
+ setup(t, { emit: n, attrs: r }) {
71
+ let { t: i } = useI18n(), a = computed(() => t.default ? t.default === !0 ? i("common.all") : typeof t.default == "string" ? t.default : t.default?.[t.labelField] ?? i("common.all") : ""), o = ref([]);
72
+ watch(() => t.modelValue, (e) => o.value = e, { immediate: !0 });
73
+ let s = (e) => {
74
+ n("update:modelValue", e), n("updateModelValue", e);
75
+ }, l = () => {
76
+ s(o.value?.length === t.options.length ? [] : t.options.map((e) => e[t.valueField]));
77
+ }, d = computed(() => t.options.length > o.value?.length && o.value?.length > 0), f = computed(() => ({ "--n-label-padding": t.labelPadding }));
78
78
  return () => {
79
- let e = createVNode(NCheckboxGroup, mergeProps(C, {
80
- value: E.value,
81
- onUpdateValue: D
79
+ let e = createVNode(NCheckboxGroup, mergeProps(r, {
80
+ value: o.value,
81
+ onUpdateValue: s
82
82
  }), { default: () => [createVNode(NFlex, {
83
- size: x.gap ?? (x.vertical ? void 0 : "small"),
84
- vertical: x.vertical,
85
- style: !x.default && x.vertical ? { padding: "6px 0 0" } : {}
86
- }, { default: () => [x.options?.map((e) => createVNode(NCheckbox, {
87
- value: e[x.valueField],
88
- disabled: e[x.disabledField],
89
- style: j.value
90
- }, { default: () => [e[x.labelField]] }))] })] });
91
- return x.default ? createVNode(NFlex, {
92
- size: x.gap ?? (x.vertical ? void 0 : "small"),
93
- vertical: x.vertical,
94
- style: x.vertical ? { padding: "6px 0 0" } : {}
83
+ size: t.gap ?? (t.vertical ? void 0 : "small"),
84
+ vertical: t.vertical,
85
+ style: !t.default && t.vertical ? { padding: "6px 0 0" } : {}
86
+ }, { default: () => [t.options?.map((e) => createVNode(NCheckbox, {
87
+ value: e[t.valueField],
88
+ disabled: e[t.disabledField],
89
+ style: f.value
90
+ }, { default: () => [e[t.labelField]] }))] })] });
91
+ return t.default ? createVNode(NFlex, {
92
+ size: t.gap ?? (t.vertical ? void 0 : "small"),
93
+ vertical: t.vertical,
94
+ style: t.vertical ? { padding: "6px 0 0" } : {}
95
95
  }, { default: () => [createVNode("span", null, [createVNode(NCheckbox, {
96
- indeterminate: A.value,
97
- checked: E.value?.length > 0,
98
- onUpdateChecked: O,
99
- style: j.value
100
- }, { default: () => [T.value] })]), e] }) : e;
96
+ indeterminate: d.value,
97
+ checked: o.value?.length > 0,
98
+ onUpdateChecked: l,
99
+ style: f.value
100
+ }, { default: () => [a.value] })]), e] }) : e;
101
101
  };
102
102
  }
103
103
  }), IHelp = (e) => createVNode("svg", mergeProps({
@@ -289,16 +289,16 @@ const NCheckboxes = /* @__PURE__ */ defineComponent({
289
289
  default: () => []
290
290
  } },
291
291
  setup(e) {
292
- let x = ref(), S = !0, C = () => {
293
- S ? S = !1 : x.value?.sync({ showAllItemsBeforeCalculate: !0 });
294
- }, w = ref(), T = () => w.value, E = ref(-1), D = (x) => {
295
- E.value = e.options.length - x;
296
- }, O = (e) => {
297
- e || (E.value = -1);
298
- }, A = () => {}, j = computed(() => E.value === -1 ? [] : e.options.slice(E.value).map((e) => ({
292
+ let t = ref(), n = !0, r = () => {
293
+ n ? n = !1 : t.value?.sync({ showAllItemsBeforeCalculate: !0 });
294
+ }, i = ref(), a = () => i.value, o = ref(-1), s = (t) => {
295
+ o.value = e.options.length - t;
296
+ }, l = (e) => {
297
+ e || (o.value = -1);
298
+ }, d = () => {}, f = computed(() => o.value === -1 ? [] : e.options.slice(o.value).map((e) => ({
299
299
  ...e,
300
300
  key: e.text
301
- }))), M = (e) => createVNode(NButton, {
301
+ }))), p = (e) => createVNode(NButton, {
302
302
  type: e.color === "danger" ? "error" : [
303
303
  "default",
304
304
  "tertiary",
@@ -309,15 +309,15 @@ const NCheckboxes = /* @__PURE__ */ defineComponent({
309
309
  "error"
310
310
  ].includes(e.color) ? e.color : "primary",
311
311
  text: !0
312
- }, { default: () => [e.text] }), N = (e, x) => {
313
- x.onClick?.();
312
+ }, { default: () => [e.text] }), m = (e, t) => {
313
+ t.onClick?.();
314
314
  };
315
- return () => createVNode(VResizeObserver, { onResize: C }, { default: () => [createVNode(VOverflow, {
316
- ref: x,
317
- getCounter: T,
318
- onUpdateCount: D,
319
- onUpdateOverflow: O,
320
- updateCounter: A,
315
+ return () => createVNode(VResizeObserver, { onResize: r }, { default: () => [createVNode(VOverflow, {
316
+ ref: t,
317
+ getCounter: a,
318
+ onUpdateCount: s,
319
+ onUpdateOverflow: l,
320
+ updateCounter: d,
321
321
  style: "margin-top: 2px"
322
322
  }, {
323
323
  default: () => e.options.map((e) => createVNode(NButton, {
@@ -335,12 +335,12 @@ const NCheckboxes = /* @__PURE__ */ defineComponent({
335
335
  onClick: e.onClick
336
336
  }, { default: () => [e.text] })),
337
337
  counter: () => createVNode("span", {
338
- ref: w,
338
+ ref: i,
339
339
  style: "position: absolute"
340
340
  }, [createVNode(NDropdown, {
341
- options: j.value,
342
- renderLabel: M,
343
- onSelect: N
341
+ options: f.value,
342
+ renderLabel: p,
343
+ onSelect: m
344
344
  }, { default: () => [createVNode(NButton, {
345
345
  quaternary: !0,
346
346
  size: "small"
@@ -361,9 +361,9 @@ var DataCustomItem = /* @__PURE__ */ defineComponent({
361
361
  fixed: [Boolean, String]
362
362
  },
363
363
  emits: ["update-hidden", "update-fixed"],
364
- setup(e, { emit: x }) {
364
+ setup(e, { emit: t }) {
365
365
  return () => {
366
- let S;
366
+ let n;
367
367
  return createVNode(NFlex, {
368
368
  align: "center",
369
369
  wrap: !1,
@@ -377,17 +377,17 @@ var DataCustomItem = /* @__PURE__ */ defineComponent({
377
377
  createVNode(NCheckbox, {
378
378
  checked: !e.hidden,
379
379
  disabled: e.disabled,
380
- onUpdateChecked: (e) => x("update-hidden", !e)
380
+ onUpdateChecked: (e) => t("update-hidden", !e)
381
381
  }, null),
382
- createVNode(NEllipsis, { style: "flex: 1 1 auto" }, _isSlot$7(S = toValue(e.label)) ? S : { default: () => [S] }),
382
+ createVNode(NEllipsis, { style: "flex: 1 1 auto" }, _isSlot$7(n = toValue(e.label)) ? n : { default: () => [n] }),
383
383
  e.showFixed ? [createVNode(NButton, {
384
384
  text: !0,
385
385
  type: e.fixed === "left" ? "primary" : void 0,
386
- onClick: () => x("update-fixed", e.fixed === "left" ? !1 : "left")
386
+ onClick: () => t("update-fixed", e.fixed === "left" ? !1 : "left")
387
387
  }, { default: () => [createVNode(NIcon, null, { default: () => [createVNode(ILeft2, null, null)] })] }), createVNode(NButton, {
388
388
  text: !0,
389
389
  type: e.fixed === "right" ? "primary" : void 0,
390
- onClick: () => x("update-fixed", e.fixed === "right" ? !1 : "right")
390
+ onClick: () => t("update-fixed", e.fixed === "right" ? !1 : "right")
391
391
  }, { default: () => [createVNode(NIcon, null, { default: () => [createVNode(IRight2, null, null)] })] })] : void 0
392
392
  ] });
393
393
  };
@@ -424,9 +424,9 @@ const DataCustom = /* @__PURE__ */ defineComponent({
424
424
  type: String,
425
425
  default: "disabled"
426
426
  },
427
- visiblityField: {
427
+ visibleField: {
428
428
  type: String,
429
- default: "visiblity"
429
+ default: "visible"
430
430
  },
431
431
  tooltip: [String, Object],
432
432
  size: {
@@ -436,24 +436,24 @@ const DataCustom = /* @__PURE__ */ defineComponent({
436
436
  type: { type: String }
437
437
  },
438
438
  emits: { custom: () => !0 },
439
- setup(x, { emit: S }) {
440
- let { t: C } = useI18n();
441
- function w(e, C, w) {
442
- S("custom", {
443
- key: e[x.keyField],
444
- [C]: w
439
+ setup(t, { emit: n }) {
440
+ let { t: r } = useI18n();
441
+ function i(e, r, i) {
442
+ n("custom", {
443
+ key: e[t.keyField],
444
+ [r]: i
445
445
  });
446
446
  }
447
- let T = ref();
448
- return watch(T, (e) => {
447
+ let a = ref();
448
+ return watch(a, (e) => {
449
449
  e.$el && Sortable.create(e.$el, {
450
450
  animation: 150,
451
451
  ghostClass: "ghost",
452
452
  handle: ".icon-drag",
453
453
  filter: ".disabled",
454
454
  onEnd(e) {
455
- let C = x.data.map((e) => e[x.keyField]), [w] = C.splice(e.oldIndex, 1);
456
- C.splice(e.newIndex, 0, w), S("custom", C);
455
+ let r = t.data.map((e) => e[t.keyField]), [i] = r.splice(e.oldIndex, 1);
456
+ r.splice(e.newIndex, 0, i), n("custom", r);
457
457
  }
458
458
  });
459
459
  }), () => createVNode(NPopover, {
@@ -465,27 +465,27 @@ const DataCustom = /* @__PURE__ */ defineComponent({
465
465
  }, {
466
466
  trigger: () => withDirectives(createVNode(NButton, {
467
467
  text: !0,
468
- type: x.type
469
- }, { default: () => [createVNode(NIcon, { size: x.size }, { default: () => [createVNode(ICustom, null, null)] })] }), [[vTooltip, x.tooltip ?? C("common.page.custom.tooltip")]]),
468
+ type: t.type
469
+ }, { default: () => [createVNode(NIcon, { size: t.size }, { default: () => [createVNode(ICustom, null, null)] })] }), [[vTooltip, t.tooltip ?? r("common.page.custom.tooltip")]]),
470
470
  default: () => {
471
- let e, E;
472
- return createVNode(NFlex, { vertical: !0 }, { default: () => [createVNode(NFlex, { justify: "space-between" }, { default: () => [createVNode("div", { style: "font-weight: bold" }, [x.tooltip ?? C("common.page.custom.tooltip")]), createVNode(NButton, {
471
+ let e, o;
472
+ return createVNode(NFlex, { vertical: !0 }, { default: () => [createVNode(NFlex, { justify: "space-between" }, { default: () => [createVNode("div", { style: "font-weight: bold" }, [t.tooltip ?? r("common.page.custom.tooltip")]), createVNode(NButton, {
473
473
  text: !0,
474
474
  type: "primary",
475
475
  size: "small",
476
- onClick: () => S("custom", !0)
477
- }, _isSlot$7(e = C("common.page.custom.reset")) ? e : { default: () => [e] })] }), createVNode(NFlex, {
478
- ref: T,
476
+ onClick: () => n("custom", !0)
477
+ }, _isSlot$7(e = r("common.page.custom.reset")) ? e : { default: () => [e] })] }), createVNode(NFlex, {
478
+ ref: a,
479
479
  vertical: !0
480
- }, _isSlot$7(E = x.data.filter((e) => e[x.visiblityField] !== !1).map((e) => createVNode(DataCustomItem, {
481
- key: e[x.keyField],
482
- label: e[x.labelField],
483
- hidden: e[x.hiddenField],
484
- fixed: e[x.fixedField],
485
- showFixed: x.showFixed,
486
- onUpdateHidden: (x) => w(e, "hidden", x),
487
- onUpdateFixed: (x) => w(e, "fixed", x)
488
- }, null))) ? E : { default: () => [E] })] });
480
+ }, _isSlot$7(o = t.data.filter((e) => e[t.visibleField] !== !1).map((e) => createVNode(DataCustomItem, {
481
+ key: e[t.keyField],
482
+ label: e[t.labelField],
483
+ hidden: e[t.hiddenField],
484
+ fixed: e[t.fixedField],
485
+ showFixed: t.showFixed,
486
+ onUpdateHidden: (t) => i(e, "hidden", t),
487
+ onUpdateFixed: (t) => i(e, "fixed", t)
488
+ }, null))) ? o : { default: () => [o] })] });
489
489
  }
490
490
  });
491
491
  }
@@ -493,31 +493,31 @@ const DataCustom = /* @__PURE__ */ defineComponent({
493
493
  function _isSlot$6(e) {
494
494
  return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !isVNode(e);
495
495
  }
496
- function renderLabel(e, x) {
497
- return typeof e == "function" ? e(x) : e;
496
+ function renderLabel(e, t) {
497
+ return typeof e == "function" ? e(t) : e;
498
498
  }
499
- function renderAnchorLink(e, x) {
499
+ function renderAnchorLink(e, t) {
500
500
  return e.isGroup ? (e.__children ??= e.children?.filter((e) => e.isGroup) ?? [], createVNode(NAnchorLink, { href: `#${e.prop}` }, {
501
- title: () => renderLabel(e.label, x),
502
- default: e.__children?.length ? () => e.__children.map((e) => renderAnchorLink(e, x)) : void 0
501
+ title: () => renderLabel(e.label, t),
502
+ default: e.__children?.length ? () => e.__children.map((e) => renderAnchorLink(e, t)) : void 0
503
503
  })) : null;
504
504
  }
505
- function getSpan(e, x, S) {
506
- return typeof e == "function" ? e(x, S) : e;
505
+ function getSpan(e, t, n) {
506
+ return typeof e == "function" ? e(t, n) : e;
507
507
  }
508
- function renderItem(e, x, S, C) {
508
+ function renderItem(e, t, n, r) {
509
509
  return e.isGroup ? createVNode("div", {
510
510
  key: e.prop,
511
- class: `${C}__group`,
511
+ class: `${r}__group`,
512
512
  id: e.prop
513
- }, [createVNode("div", { class: `${C}__title` }, [renderLabel(e.label, S)]), createVNode("div", { class: `${C}__wrapper` }, [e.children?.map((e) => renderItem(e, x, S, C))])]) : createVNode("div", {
513
+ }, [createVNode("div", { class: `${r}__title` }, [renderLabel(e.label, n)]), createVNode("div", { class: `${r}__wrapper` }, [e.children?.map((e) => renderItem(e, t, n, r))])]) : createVNode("div", {
514
514
  key: e.prop,
515
- class: `${C}__item`,
515
+ class: `${r}__item`,
516
516
  style: {
517
- "--descriptions-col-span": getSpan(e.colSpan, x, S) ?? 1,
518
- "--descriptions-row-span": getSpan(e.rowSpan, x, S) ?? 1
517
+ "--descriptions-col-span": getSpan(e.colSpan, t, n) ?? 1,
518
+ "--descriptions-row-span": getSpan(e.rowSpan, t, n) ?? 1
519
519
  }
520
- }, [e.label ? createVNode("div", { class: `${C}__label` }, [renderLabel(e.label, S)]) : void 0, createVNode("div", { class: `${C}__content` }, [(S ? e.render ? e.render(S) : S[e.prop] : void 0) ?? createVNode("span", { class: `${C}__nothing` }, [createTextVNode("--")])])]);
520
+ }, [e.label ? createVNode("div", { class: `${r}__label` }, [renderLabel(e.label, n)]) : void 0, createVNode("div", { class: `${r}__content` }, [(n ? e.render ? e.render(n) : n[e.prop] : void 0) ?? createVNode("span", { class: `${r}__nothing` }, [createTextVNode("--")])])]);
521
521
  }
522
522
  const DataDescriptions = /* @__PURE__ */ defineComponent({
523
523
  name: "DataDescriptions",
@@ -538,29 +538,29 @@ const DataDescriptions = /* @__PURE__ */ defineComponent({
538
538
  }
539
539
  },
540
540
  setup(e) {
541
- let C = useMergedClsPrefix(), w = `${C.value}-data-descriptions`;
542
- useStyle("-data-descriptions", style$1, C);
543
- let T = ref();
541
+ let r = useMergedClsPrefix(), i = `${r.value}-data-descriptions`;
542
+ useStyle("-data-descriptions", style$1, r);
543
+ let a = ref();
544
544
  watch(() => e.items, () => {
545
- location.hash && until(T).toBeTruthy().then((e) => {
545
+ location.hash && until(a).toBeTruthy().then((e) => {
546
546
  e.scrollTo(location.hash);
547
547
  });
548
548
  }, { immediate: !0 });
549
- let E = computed(() => ({ "--descriptions-cols": e.cols })), D = computed(() => mergeProps({
550
- ref: T,
551
- class: `${w}__anchor`,
549
+ let o = computed(() => ({ "--descriptions-cols": e.cols })), s = computed(() => mergeProps({
550
+ ref: a,
551
+ class: `${i}__anchor`,
552
552
  showBackground: !1,
553
553
  affix: !0
554
554
  }, e.anchor && typeof e.anchor == "object" ? e.anchor : {}));
555
555
  return () => {
556
- let x, { cols: S, title: C, data: T, items: O, anchor: k } = e, A = isNullish(C) ? void 0 : createVNode("div", { class: `${w}__header` }, [typeof C == "string" ? createVNode("span", null, [C]) : C(T ?? void 0)]), j = O.filter((e) => !e.hiddden).map((e) => renderItem(e, S, T, w)), N = k === !1 ? void 0 : createVNode(NAnchor, D.value, _isSlot$6(x = O.map((e) => h(renderAnchorLink(e, T), { key: e.prop }))) ? x : { default: () => [x] });
556
+ let t, { cols: n, title: r, data: a, items: l, anchor: u } = e, d = isNullish(r) ? void 0 : createVNode("div", { class: `${i}__header` }, [typeof r == "string" ? createVNode("span", null, [r]) : r(a ?? void 0)]), f = l.filter((e) => !e.hiddden).map((e) => renderItem(e, n, a, i)), m = u === !1 ? void 0 : createVNode(NAnchor, s.value, _isSlot$6(t = l.map((e) => h(renderAnchorLink(e, a), { key: e.prop }))) ? t : { default: () => [t] });
557
557
  return createVNode("div", {
558
- class: w,
559
- style: E.value
558
+ class: i,
559
+ style: o.value
560
560
  }, [
561
- A,
562
- createVNode("div", { class: `${w}__wrapper` }, [j]),
563
- N
561
+ d,
562
+ createVNode("div", { class: `${i}__wrapper` }, [f]),
563
+ m
564
564
  ]);
565
565
  };
566
566
  }
@@ -681,43 +681,43 @@ const dataFormActionsProps = {
681
681
  "reset",
682
682
  "cancel"
683
683
  ],
684
- setup(x, { emit: S, slots: C }) {
685
- let { t: w } = useI18n(), T = () => {
686
- S("submit");
687
- }, E = () => {
688
- S("reset");
689
- }, D = () => {
690
- S("cancel");
691
- }, { mergedDisabledRef: O, mergedSizeRef: k } = useFormItem(x);
684
+ setup(t, { emit: n, slots: r }) {
685
+ let { t: i } = useI18n(), a = () => {
686
+ n("submit");
687
+ }, o = () => {
688
+ n("reset");
689
+ }, s = () => {
690
+ n("cancel");
691
+ }, { mergedDisabledRef: l, mergedSizeRef: u } = useFormItem(t);
692
692
  return () => {
693
- let e = k.value, S = O.value, { gap: A = e === "small" ? 8 : e === "medium" ? 12 : 16, submitText: j, resetText: M, cancelText: N, submitDisabled: P, submitLoading: F, showSubmitBtn: I, showResetBtn: L, showCancelBtn: R, succeeded: z, successText: B = j, failureText: V = j, nativeButtonType: H } = x;
694
- return createVNode(NFlex, { size: A === void 0 ? e : A }, { default: () => [
695
- C.prefix?.(),
696
- I === !1 ? void 0 : createVNode(NButton, {
697
- attrType: H ? "submit" : "button",
693
+ let e = u.value, n = l.value, { gap: d = e === "small" ? 8 : e === "medium" ? 12 : 16, submitText: f, resetText: p, cancelText: m, submitDisabled: g, submitLoading: _, showSubmitBtn: v, showResetBtn: y, showCancelBtn: b, succeeded: x, successText: S = f, failureText: C = f, nativeButtonType: w } = t;
694
+ return createVNode(NFlex, { size: d === void 0 ? e : d }, { default: () => [
695
+ r.prefix?.(),
696
+ v === !1 ? void 0 : createVNode(NButton, {
697
+ attrType: w ? "submit" : "button",
698
698
  size: e,
699
- type: z ? "success" : z === !1 ? "error" : "primary",
700
- disabled: z !== void 0 || S || P || F,
701
- loading: F,
702
- onClick: H ? void 0 : T
699
+ type: x ? "success" : x === !1 ? "error" : "primary",
700
+ disabled: x !== void 0 || n || g || _,
701
+ loading: _,
702
+ onClick: w ? void 0 : a
703
703
  }, {
704
- default: () => (z ? B : z === !1 ? V : j) || w("common.page.form.submitText"),
705
- icon: () => z ? createVNode(NIcon, null, { default: () => [createVNode(ICheck, null, null)] }) : z === !1 ? createVNode(NIcon, null, { default: () => [createVNode(IClose, null, null)] }) : void 0
704
+ default: () => (x ? S : x === !1 ? C : f) || i("common.page.form.submitText"),
705
+ icon: () => x ? createVNode(NIcon, null, { default: () => [createVNode(ICheck, null, null)] }) : x === !1 ? createVNode(NIcon, null, { default: () => [createVNode(IClose, null, null)] }) : void 0
706
706
  }),
707
- L === !1 ? void 0 : createVNode(NButton, {
708
- size: k.value,
709
- attrType: H ? "reset" : "button",
710
- disabled: S || F || z,
711
- type: R ? "primary" : "default",
712
- secondary: R,
713
- onClick: H ? void 0 : E
714
- }, { default: () => [M || w("common.page.form.resetText")] }),
715
- R === !1 || z ? void 0 : createVNode(NButton, {
707
+ y === !1 ? void 0 : createVNode(NButton, {
708
+ size: u.value,
709
+ attrType: w ? "reset" : "button",
710
+ disabled: n || _ || x,
711
+ type: b ? "primary" : "default",
712
+ secondary: b,
713
+ onClick: w ? void 0 : o
714
+ }, { default: () => [p || i("common.page.form.resetText")] }),
715
+ b === !1 || x ? void 0 : createVNode(NButton, {
716
716
  attrType: "button",
717
- disabled: S || F,
718
- onClick: D
719
- }, { default: () => [N || w("common.page.form.cancelText")] }),
720
- C.suffix?.()
717
+ disabled: n || _,
718
+ onClick: s
719
+ }, { default: () => [m || i("common.page.form.cancelText")] }),
720
+ r.suffix?.()
721
721
  ] });
722
722
  };
723
723
  }
@@ -783,114 +783,114 @@ const DataForm = /* @__PURE__ */ defineComponent({
783
783
  "reset",
784
784
  "cancel"
785
785
  ],
786
- setup(e, { emit: x, slots: S }) {
787
- let C = (S) => {
788
- S?.preventDefault?.(), x("submit", { ...toRaw(e.model) }, S);
789
- }, w = (e) => {
790
- e?.preventDefault?.(), x("reset");
791
- }, T = (e) => {
792
- e?.preventDefault?.(), x("cancel");
793
- }, E = ref(), D = ref(), { width: k } = useElementSize(useCurrentElement());
794
- watchDebounced([E, k], () => {
795
- D.value = void 0, nextTick(() => {
796
- D.value = E.value?.responsiveCols || void 0;
786
+ setup(e, { emit: t, slots: n }) {
787
+ let r = (n) => {
788
+ n?.preventDefault?.(), t("submit", { ...toRaw(e.model) }, n);
789
+ }, i = (e) => {
790
+ e?.preventDefault?.(), t("reset");
791
+ }, a = (e) => {
792
+ e?.preventDefault?.(), t("cancel");
793
+ }, o = ref(), s = ref(), { width: u } = useElementSize(useCurrentElement());
794
+ watchDebounced([o, u], () => {
795
+ s.value = void 0, nextTick(() => {
796
+ s.value = o.value?.responsiveCols || void 0;
797
797
  });
798
798
  }, {
799
799
  immediate: !0,
800
800
  debounce: 1e3 / 20
801
801
  });
802
- let j = 0, M = ({ overflow: x }) => {
803
- if (S.action) return S.action({
804
- cols: D.value,
805
- spans: j,
806
- overflow: x
802
+ let f = 0, p = ({ overflow: t }) => {
803
+ if (n.action) return n.action({
804
+ cols: s.value,
805
+ spans: f,
806
+ overflow: t
807
807
  });
808
- let { loading: C, showSubmitBtn: w, showResetBtn: E, showCancelBtn: O, actionAlign: k, actionJustify: A, actionGap: M, submitDisabled: N, submitText: P, resetText: F, cancelText: I, succeeded: L, successText: R, failureText: z } = e;
808
+ let { loading: r, showSubmitBtn: i, showResetBtn: o, showCancelBtn: l, actionAlign: u, actionJustify: d, actionGap: p, submitDisabled: m, submitText: g, resetText: _, cancelText: v, succeeded: y, successText: b, failureText: x } = e;
809
809
  return createVNode(NFormItem, {
810
- label: A === "start" ? " " : void 0,
810
+ label: d === "start" ? " " : void 0,
811
811
  showLabel: e.labelPlacement !== "top",
812
812
  style: "padding-top: 16px"
813
813
  }, { default: () => [createVNode(DataFormActions, {
814
- align: k,
815
- justify: A,
816
- gap: M,
817
- showSubmitBtn: w,
818
- showResetBtn: E,
819
- showCancelBtn: O,
820
- submitText: P,
821
- resetText: F,
822
- cancelText: I,
823
- submitDisabled: N,
824
- submitLoading: C,
825
- succeeded: L,
826
- successText: R,
827
- failureText: z,
814
+ align: u,
815
+ justify: d,
816
+ gap: p,
817
+ showSubmitBtn: i,
818
+ showResetBtn: o,
819
+ showCancelBtn: l,
820
+ submitText: g,
821
+ resetText: _,
822
+ cancelText: v,
823
+ submitDisabled: m,
824
+ submitLoading: r,
825
+ succeeded: y,
826
+ successText: b,
827
+ failureText: x,
828
828
  nativeButtonType: !0,
829
- onCancel: T
829
+ onCancel: a
830
830
  }, {
831
- prefix: () => S.actionPrefix?.(),
832
- suffix: () => S.actionSuffix?.()
831
+ prefix: () => n.actionPrefix?.(),
832
+ suffix: () => n.actionSuffix?.()
833
833
  })] });
834
- }, N = () => {
835
- let { items: x, validation: C, showAction: w } = e;
836
- return j = 0, createVNode(Fragment, null, [x.map(({ hidden: x, name: S, render: w, label: T, showColon: E, span: D = 6, rowSpan: O, offset: k = 0, tooltip: M, tooltipPlacement: N = e.tooltipPlacement, validationStatus: P = C[S]?.errors?.some((e) => e !== void 0) ? "error" : C[S]?.warnings?.some((e) => e !== void 0) ? "warnings" : C[S] ? "success" : void 0, readonly: F = e.readonly, showRequireMark: L = !F, showTooltipWhenReadonly: R = !1, ...z }) => {
837
- if (x) return;
838
- j += D;
839
- let B;
840
- return B = S[0] === "$" ? w({}) : createVNode(NFormItem, mergeProps({
841
- path: S,
842
- validationStatus: P,
843
- showRequireMark: z.required && L
844
- }, z), {
834
+ }, m = () => {
835
+ let { items: t, validation: r, showAction: i } = e;
836
+ return f = 0, createVNode(Fragment, null, [t.map(({ hidden: t, name: n, render: i, label: a, showColon: o, span: s = 6, rowSpan: l, offset: u = 0, tooltip: p, tooltipPlacement: m = e.tooltipPlacement, validationStatus: g = r[n]?.errors?.length ? "error" : r[n]?.warnings?.length ? "warnings" : r[n] ? "success" : void 0, readonly: _ = e.readonly, showRequireMark: y = !_, showTooltipWhenReadonly: b = !1, ...x }) => {
837
+ if (t) return;
838
+ f += s;
839
+ let S;
840
+ return S = n[0] === "$" ? i({}) : createVNode(NFormItem, mergeProps({
841
+ path: n,
842
+ validationStatus: g,
843
+ showRequireMark: x.required && y
844
+ }, x), {
845
845
  label: () => createVNode(NText, {
846
846
  depth: e.readonly ? 3 : 2,
847
847
  style: "display: inline-flex; align-items: flex-start; gap: 1px"
848
848
  }, { default: () => [
849
- createVNode("span", null, [toValue(T)]),
850
- N === "icon" ? createVNode(NTooltip, null, {
851
- default: () => toValue(M),
849
+ createVNode("span", null, [toValue(a)]),
850
+ m === "icon" ? createVNode(NTooltip, null, {
851
+ default: () => toValue(p),
852
852
  trigger: () => createVNode(NButton, {
853
853
  text: !0,
854
854
  style: "font-size: 1.25em; opacity: 0.8"
855
855
  }, { default: () => [createVNode(NIcon, null, { default: () => [createVNode(IHelp, null, null)] })] })
856
856
  }) : void 0,
857
- e.showColon && E !== !1 ? createVNode("span", { style: "place-self: center" }, [createTextVNode(":")]) : void 0
857
+ e.showColon && o !== !1 ? createVNode("span", { style: "place-self: center" }, [createTextVNode(":")]) : void 0
858
858
  ] }),
859
859
  default: () => {
860
- let x, S = createVNode("div", { style: "width: 100%; font-size: calc(1rem - 2px); min-height: 32px; display: flex; align-items: center" }, [w({
860
+ let t, n = createVNode("div", { style: "width: 100%; font-size: calc(1rem - 2px); min-height: 32px; display: flex; align-items: center" }, [i({
861
861
  disabled: e.disabled,
862
862
  size: e.size,
863
863
  readonly: e.readonly
864
864
  })]);
865
- return M && N === "bottom" && (!e.readonly || R) ? createVNode("div", { style: "width: 100%; display: flex; flex-direction: column" }, [S, createVNode(NText, {
865
+ return p && m === "bottom" && (!e.readonly || b) ? createVNode("div", { style: "width: 100%; display: flex; flex-direction: column" }, [n, createVNode(NText, {
866
866
  depth: 3,
867
867
  style: "font-size: calc(1rem - 3px); margin-top: 6px"
868
- }, _isSlot$5(x = toValue(M)) ? x : { default: () => [x] })]) : S;
868
+ }, _isSlot$5(t = toValue(p)) ? t : { default: () => [t] })]) : n;
869
869
  },
870
- feedback: () => C[S]?.errors[0] ?? C[S]?.warnings[0]
871
- }), e.grid === !1 ? B : createVNode(NGi, {
872
- key: S,
873
- offset: k,
874
- span: D,
875
- style: O ? { gridRowEnd: `span ${O}` } : void 0
876
- }, _isSlot$5(B) ? B : { default: () => [B] });
877
- }), w === !1 || e.readonly === !0 && !S.action ? void 0 : createVNode(NGi, mergeProps({
870
+ feedback: () => r[n]?.errors?.[0] ?? r[n]?.warnings?.[0]
871
+ }), e.grid === !1 ? S : createVNode(NGi, {
872
+ key: n,
873
+ offset: u,
874
+ span: s,
875
+ style: l ? { gridRowEnd: `span ${l}` } : void 0
876
+ }, _isSlot$5(S) ? S : { default: () => [S] });
877
+ }), i === !1 || e.readonly === !0 && !n.action ? void 0 : createVNode(NGi, mergeProps({
878
878
  key: "action",
879
879
  span: 2 ** 53 - 1
880
- }, typeof e.showAction == "object" ? e.showAction : {}), { default: M })]);
880
+ }, typeof e.showAction == "object" ? e.showAction : {}), { default: p })]);
881
881
  };
882
882
  return () => {
883
- let { items: x, loading: S, validation: T, showColon: D, tooltipPlacement: O, showFeedback: k, labelWidth: A = "7.2em", labelAlign: j = e.labelPlacement === "top" ? "left" : "right", grid: M, showAction: P, showSubmitBtn: F, showResetBtn: L, showCancelBtn: R, actionAlign: z, actionJustify: B, actionGap: V, submitDisabled: H, submitText: U, resetText: W, cancelText: G, succeeded: It, successText: K, failureText: q, ...J } = e, Y = !e.readonly && k !== !1;
883
+ let { items: t, loading: n, validation: a, showColon: s, tooltipPlacement: l, showFeedback: u, labelWidth: d = "7.2em", labelAlign: f = e.labelPlacement === "top" ? "left" : "right", grid: p, showAction: g, showSubmitBtn: _, showResetBtn: y, showCancelBtn: b, actionAlign: x, actionJustify: S, actionGap: C, submitDisabled: w, submitText: T, resetText: E, cancelText: D, succeeded: O, successText: k, failureText: A, ...j } = e, M = !e.readonly && u !== !1;
884
884
  return createVNode(NForm, mergeProps({
885
- labelWidth: A,
886
- labelAlign: j,
887
- onReset: w,
888
- onSubmit: C,
889
- showFeedback: Y
890
- }, J), { default: () => [createVNode(NGrid, mergeProps({
891
- ref: E,
885
+ labelWidth: d,
886
+ labelAlign: f,
887
+ onReset: i,
888
+ onSubmit: r,
889
+ showFeedback: M
890
+ }, j), { default: () => [createVNode(NGrid, mergeProps({
891
+ ref: o,
892
892
  itemResponsive: !0
893
- }, M, { yGap: Y ? 0 : M?.yGap ?? 24 }), { default: N })] });
893
+ }, p, { yGap: M ? 0 : p?.yGap ?? 24 }), { default: m })] });
894
894
  };
895
895
  }
896
896
  }), DataFilter = /* @__PURE__ */ defineComponent({
@@ -953,62 +953,62 @@ const DataForm = /* @__PURE__ */ defineComponent({
953
953
  "custom",
954
954
  "collapse"
955
955
  ],
956
- setup(x, { expose: S, emit: C }) {
957
- let { t: w } = useI18n(), T = (e) => {
958
- C("filter", x.model, e);
959
- }, E = (e) => {
960
- C("reset", e), x.filterOnReset && C("filter", x.model, e);
961
- }, D = ref(x.defaultCollapsed), O = (e) => {
962
- D.value = e;
956
+ setup(t, { expose: n, emit: r }) {
957
+ let { t: i } = useI18n(), a = (e) => {
958
+ r("filter", t.model, e);
959
+ }, o = (e) => {
960
+ r("reset", e), t.filterOnReset && r("filter", t.model, e);
961
+ }, s = ref(t.defaultCollapsed), l = (e) => {
962
+ s.value = e;
963
963
  };
964
- S({ collapse: O });
965
- let k = reactive({
964
+ n({ collapse: l });
965
+ let u = reactive({
966
966
  span: 6,
967
967
  suffix: !0
968
968
  });
969
969
  return () => {
970
- let { filterOnReset: e, filterText: S, resetText: j, customizable: M, defaultCollapsed: N, collapsible: P, grid: F, ...L } = x;
970
+ let { filterOnReset: e, filterText: n, resetText: f, customizable: p, defaultCollapsed: m, collapsible: g, grid: _, ...y } = t;
971
971
  return createVNode(DataForm, mergeProps({ grid: {
972
972
  cols: "12 768:18 1280:24 1536:30",
973
973
  yGap: 20,
974
974
  xGap: 8,
975
- ...F,
976
- collapsed: D.value
977
- } }, L, {
975
+ ..._,
976
+ collapsed: s.value
977
+ } }, y, {
978
978
  showFeedback: !1,
979
- showAction: k,
980
- onSubmit: T,
981
- onReset: E
982
- }), { action: ({ cols: e, spans: T }) => (k.suffix = e < T + k.span, createVNode(NFlex, {
983
- justify: k.suffix ? "end" : "start",
979
+ showAction: u,
980
+ onSubmit: a,
981
+ onReset: o
982
+ }), { action: ({ cols: e, spans: a }) => (u.suffix = e < a + u.span, createVNode(NFlex, {
983
+ justify: u.suffix ? "end" : "start",
984
984
  align: "center"
985
985
  }, { default: () => [
986
- k.suffix ? void 0 : createVNode("span", null, [createTextVNode("\xA0\xA0\xA0\xA0")]),
986
+ u.suffix ? void 0 : createVNode("span", null, [createTextVNode("\xA0\xA0\xA0\xA0")]),
987
987
  createVNode(NButton, {
988
988
  attrType: "submit",
989
989
  type: "primary",
990
- disabled: x.disabled,
991
- loading: x.loading
992
- }, { default: () => [S || w("common.page.filter.submitText")] }),
990
+ disabled: t.disabled,
991
+ loading: t.loading
992
+ }, { default: () => [n || i("common.page.filter.submitText")] }),
993
993
  createVNode(NButton, {
994
994
  attrType: "reset",
995
- disabled: x.disabled || x.loading
996
- }, { default: () => [j || w("common.page.form.resetText")] }),
997
- M ? createVNode(DataCustom, {
995
+ disabled: t.disabled || t.loading
996
+ }, { default: () => [f || i("common.page.form.resetText")] }),
997
+ p ? createVNode(DataCustom, {
998
998
  keyField: "name",
999
999
  showFixed: !1,
1000
- data: L.items,
1000
+ data: y.items,
1001
1001
  size: 18,
1002
1002
  type: "primary",
1003
- onCustom: (e) => C("custom", e)
1003
+ onCustom: (e) => r("custom", e)
1004
1004
  }, null) : void 0,
1005
- P && k.suffix ? createVNode(NButton, {
1005
+ g && u.suffix ? createVNode(NButton, {
1006
1006
  text: !0,
1007
1007
  type: "primary",
1008
1008
  iconPlacement: "right",
1009
- renderIcon: D.value ? IDown : IUp,
1010
- onClick: () => O(!D.value)
1011
- }, { default: () => [D.value ? w("common.page.filter.expand") : w("common.page.filter.collapse")] }) : void 0
1009
+ renderIcon: s.value ? IDown : IUp,
1010
+ onClick: () => l(!s.value)
1011
+ }, { default: () => [s.value ? i("common.page.filter.expand") : i("common.page.filter.collapse")] }) : void 0
1012
1012
  ] })) });
1013
1013
  };
1014
1014
  }
@@ -1016,31 +1016,31 @@ const DataForm = /* @__PURE__ */ defineComponent({
1016
1016
  function _isSlot$4(e) {
1017
1017
  return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !isVNode(e);
1018
1018
  }
1019
- function useLocaleEdit(x, S, C = 1) {
1020
- let { t: w } = useI18n(), T = ref(!1), E = [], { open: D, reinit: O } = useFormModal({
1021
- title: x,
1019
+ function useLocaleEdit(t, n, r = 1) {
1020
+ let { t: i } = useI18n(), a = ref(!1), o = [], { open: s, reinit: l } = useFormModal({
1021
+ title: t,
1022
1022
  showColon: !0,
1023
- submitText: w("common.confirm.defaultOk"),
1024
- items: ({ it: e }) => E.map((x) => e(x.value, x.label, "input", {
1023
+ submitText: i("common.confirm.defaultOk"),
1024
+ items: ({ it: e }) => o.map((t) => e(t.value, t.label, "input", {
1025
1025
  span: 24,
1026
- required: x.required,
1026
+ required: t.required,
1027
1027
  inputProps: {
1028
- readonly: T,
1028
+ readonly: a,
1029
1029
  clearable: !0,
1030
1030
  type: "textarea",
1031
1031
  showCount: !0,
1032
1032
  autosize: {
1033
- minRows: unref(C),
1034
- maxRows: Math.max(unref(C), 5)
1033
+ minRows: unref(r),
1034
+ maxRows: Math.max(unref(r), 5)
1035
1035
  }
1036
1036
  }
1037
1037
  })),
1038
- onSubmit: S
1038
+ onSubmit: n
1039
1039
  });
1040
1040
  return {
1041
- open: (e, x = !1) => (T.value = x, D(e)),
1041
+ open: (e, t = !1) => (a.value = t, s(e)),
1042
1042
  setSupports: (e) => {
1043
- E = e, O();
1043
+ o = e, l();
1044
1044
  }
1045
1045
  };
1046
1046
  }
@@ -1085,102 +1085,102 @@ const DataLocaleInput = /* @__PURE__ */ defineComponent({
1085
1085
  }
1086
1086
  },
1087
1087
  emits: ["update:modelValue", "updateModelValue"],
1088
- setup(e, { emit: x }) {
1089
- let S = (S, C = e.showLang ?? e.defaultLang) => {
1090
- S = {
1088
+ setup(e, { emit: t }) {
1089
+ let n = (n, r = e.showLang ?? e.defaultLang) => {
1090
+ n = {
1091
1091
  ...e.modelValue,
1092
- [C]: S
1093
- }, x("update:modelValue", S), x("updateModelValue", S);
1094
- }, { open: C, setSupports: w } = useLocaleEdit(computed(() => toValue(e.label)), (e) => {
1095
- x("update:modelValue", e), x("updateModelValue", e);
1096
- }, toRef(e, "defaultRows")), T = ref(e.defaultExpanded);
1092
+ [r]: n
1093
+ }, t("update:modelValue", n), t("updateModelValue", n);
1094
+ }, { open: r, setSupports: i } = useLocaleEdit(computed(() => toValue(e.label)), (e) => {
1095
+ t("update:modelValue", e), t("updateModelValue", e);
1096
+ }, toRef(e, "defaultRows")), a = ref(e.defaultExpanded);
1097
1097
  watch(() => e.defaultExpanded, (e) => {
1098
- T.value = e;
1098
+ a.value = e;
1099
1099
  });
1100
- let E = () => createVNode(NButton, {
1100
+ let o = () => createVNode(NButton, {
1101
1101
  quaternary: !0,
1102
1102
  onClick: () => {
1103
- T.value = !T.value;
1103
+ a.value = !a.value;
1104
1104
  },
1105
1105
  style: "--n-padding: 0 8px"
1106
1106
  }, { default: () => [createVNode(NIcon, {
1107
1107
  size: "20",
1108
1108
  depth: "3"
1109
- }, { default: () => [T.value ? createVNode(ILangCollapse, null, null) : createVNode(ILangExpand, null, null)] })] }), O = (x) => {
1110
- let S = x.split("-")[0];
1111
- return e.supports.some((e) => e.value !== x && e.value.startsWith(S)) ? x : S;
1112
- }, A = `__slots${nanoid(6)}`;
1109
+ }, { default: () => [a.value ? createVNode(ILangCollapse, null, null) : createVNode(ILangExpand, null, null)] })] }), l = (t) => {
1110
+ let n = t.split("-")[0];
1111
+ return e.supports.some((e) => e.value !== t && e.value.startsWith(n)) ? t : n;
1112
+ }, d = `__slots${nanoid(6)}`;
1113
1113
  watch(() => e.supports, (e) => {
1114
- w(e);
1115
- let x = 0;
1116
- for (let [S, C] of e.entries()) {
1117
- let e = O(C.value);
1118
- x = Math.max(x, measureText(e, "monospace")), C[A] = markRaw({
1114
+ i(e);
1115
+ let t = 0;
1116
+ for (let [n, r] of e.entries()) {
1117
+ let e = l(r.value);
1118
+ t = Math.max(t, measureText(e, "monospace")), r[d] = markRaw({
1119
1119
  prefix: () => createVNode("div", { style: {
1120
- width: `${x + 4}px`,
1120
+ width: `${t + 4}px`,
1121
1121
  height: "100%",
1122
1122
  opacity: .5,
1123
1123
  fontSize: "12px",
1124
1124
  fontFamily: "monospace",
1125
- color: C.required ? "var(--color-danger)" : void 0
1125
+ color: r.required ? "var(--color-danger)" : void 0
1126
1126
  } }, [e]),
1127
- suffix: S === 0 ? E : void 0
1127
+ suffix: n === 0 ? o : void 0
1128
1128
  });
1129
1129
  }
1130
1130
  }, { immediate: !0 });
1131
- let j = computed(() => {
1132
- let x = O(e.showLang ?? e.defaultLang);
1133
- return [x, measureText(x, "monospace")];
1134
- }), M = {
1131
+ let f = computed(() => {
1132
+ let t = l(e.showLang ?? e.defaultLang);
1133
+ return [t, measureText(t, "monospace")];
1134
+ }), p = {
1135
1135
  prefix: () => createVNode("div", { style: {
1136
- width: `${j.value[1] + 4}px`,
1136
+ width: `${f.value[1] + 4}px`,
1137
1137
  height: "100%",
1138
1138
  opacity: .5,
1139
1139
  fontSize: "12px",
1140
1140
  fontFamily: "monospace"
1141
- } }, [j.value[0]]),
1141
+ } }, [f.value[0]]),
1142
1142
  suffix: () => createVNode(NButton, {
1143
1143
  quaternary: !0,
1144
- onClick: () => C(e.modelValue, e.disabled),
1144
+ onClick: () => r(e.modelValue, e.disabled),
1145
1145
  style: "--n-padding: 0 8px"
1146
1146
  }, { default: () => [createVNode(NIcon, {
1147
1147
  size: "20",
1148
1148
  depth: "3"
1149
1149
  }, { default: () => [createVNode(ILanguage, null, null)] })] })
1150
- }, N = { "--n-padding-right": "0" };
1150
+ }, m = { "--n-padding-right": "0" };
1151
1151
  return () => {
1152
- let x;
1152
+ let t;
1153
1153
  return e.mode === "dialog" ? createVNode(NInput, {
1154
1154
  value: e.modelValue?.[e.showLang ?? e.defaultLang] ?? e.modelValue?.[e.defaultLang],
1155
- onUpdateValue: S,
1155
+ onUpdateValue: n,
1156
1156
  disabled: e.disabled,
1157
1157
  clearable: !0,
1158
- style: N,
1158
+ style: m,
1159
1159
  type: e.defaultRows > 1 ? "textarea" : "text",
1160
1160
  rows: e.defaultRows
1161
- }, _isSlot$4(M) ? M : { default: () => [M] }) : createVNode(NFlex, {
1161
+ }, _isSlot$4(p) ? p : { default: () => [p] }) : createVNode(NFlex, {
1162
1162
  vertical: !0,
1163
1163
  wrap: !1,
1164
1164
  style: "width: 100%"
1165
- }, _isSlot$4(x = e.supports.map((x, C) => {
1166
- if (!T.value && C !== 0) return;
1167
- let w = C == 0;
1165
+ }, _isSlot$4(t = e.supports.map((t, r) => {
1166
+ if (!a.value && r !== 0) return;
1167
+ let i = r == 0;
1168
1168
  return withDirectives(createVNode(NInput, {
1169
- key: x.value,
1170
- value: e.modelValue?.[x.value],
1171
- onUpdateValue: (e) => S(e, x.value),
1169
+ key: t.value,
1170
+ value: e.modelValue?.[t.value],
1171
+ onUpdateValue: (e) => n(e, t.value),
1172
1172
  disabled: e.disabled,
1173
1173
  clearable: !0,
1174
- style: w ? N : void 0,
1174
+ style: i ? m : void 0,
1175
1175
  type: e.defaultRows > 1 ? "textarea" : "text",
1176
1176
  rows: e.defaultRows
1177
- }, x[A]), [[
1177
+ }, t[d]), [[
1178
1178
  vTooltip,
1179
- x.label,
1179
+ t.label,
1180
1180
  void 0,
1181
1181
  { left: !0 }
1182
1182
  ]]);
1183
- })) ? x : { default: () => [x] });
1183
+ })) ? t : { default: () => [t] });
1184
1184
  };
1185
1185
  }
1186
1186
  }), DataPagination = /* @__PURE__ */ defineComponent({
@@ -1193,6 +1193,10 @@ const DataLocaleInput = /* @__PURE__ */ defineComponent({
1193
1193
  currentPage: { type: Number },
1194
1194
  pageSize: { type: Number },
1195
1195
  page: { type: Object },
1196
+ resetPageOnSizeChange: {
1197
+ type: Boolean,
1198
+ default: !0
1199
+ },
1196
1200
  pageSizes: {
1197
1201
  type: Array,
1198
1202
  default: () => [
@@ -1204,27 +1208,27 @@ const DataLocaleInput = /* @__PURE__ */ defineComponent({
1204
1208
  }
1205
1209
  },
1206
1210
  emits: { change: () => !0 },
1207
- setup(x, { emit: S }) {
1208
- let { t: C } = useI18n(), w = (e) => S("change", {
1209
- pageSize: x.pageSize ?? x.page?.pageSize ?? 0,
1211
+ setup(t, { emit: n }) {
1212
+ let { t: r } = useI18n(), i = (e) => n("change", {
1213
+ pageSize: t.pageSize ?? t.page?.pageSize ?? 0,
1210
1214
  currentPage: e
1211
- }), T = (e) => S("change", {
1215
+ }), a = (e) => n("change", {
1212
1216
  pageSize: e,
1213
- currentPage: x.currentPage ?? x.page?.currentPage ?? 0
1217
+ currentPage: t.resetPageOnSizeChange ? 1 : t.currentPage ?? t.page?.currentPage ?? 1
1214
1218
  });
1215
1219
  return () => createVNode(NPagination, {
1216
- page: x.currentPage ?? x.page?.currentPage,
1217
- itemCount: x.total,
1218
- pageSize: x.pageSize ?? x.page?.pageSize,
1219
- onUpdatePage: w,
1220
- onUpdatePageSize: T,
1221
- pageSizes: x.pageSizes,
1220
+ page: t.currentPage ?? t.page?.currentPage,
1221
+ itemCount: t.total,
1222
+ pageSize: t.pageSize ?? t.page?.pageSize,
1223
+ onUpdatePage: i,
1224
+ onUpdatePageSize: a,
1225
+ pageSizes: t.pageSizes,
1222
1226
  showQuickJumper: !0,
1223
1227
  showSizePicker: !0,
1224
1228
  style: "justify-content: flex-end"
1225
1229
  }, {
1226
- prefix: () => C("common.page.pagination.prefix", { total: x.total }),
1227
- suffix: () => C("common.page.pagination.suffix")
1230
+ prefix: () => r("common.page.pagination.prefix", { total: t.total }),
1231
+ suffix: () => r("common.page.pagination.suffix")
1228
1232
  });
1229
1233
  }
1230
1234
  });
@@ -1247,28 +1251,28 @@ const DataSelection = /* @__PURE__ */ defineComponent({
1247
1251
  "update:modelValue": () => !0,
1248
1252
  clear: () => !0
1249
1253
  },
1250
- setup(x, { emit: S }) {
1251
- let { t: C } = useI18n();
1254
+ setup(t, { emit: n }) {
1255
+ let { t: r } = useI18n();
1252
1256
  return () => {
1253
1257
  let e;
1254
- return x.modelValue !== "selection" && x.count === 0 ? createVNode("div", null, null) : createVNode("div", null, [createVNode(NFlex, {
1258
+ return t.modelValue !== "selection" && t.count === 0 ? createVNode("div", null, null) : createVNode("div", null, [createVNode(NFlex, {
1255
1259
  align: "center",
1256
1260
  "wrap-item": !1
1257
1261
  }, { default: () => [
1258
- createVNode("span", null, [C("common.page.selection.countText", { count: x.count })]),
1262
+ createVNode("span", null, [r("common.page.selection.countText", { count: t.count })]),
1259
1263
  createVNode(NButton, {
1260
1264
  text: !0,
1261
1265
  type: "primary",
1262
1266
  onClick: () => {
1263
- S("update:modelValue", x.modelValue === "all" ? "selection" : "all");
1267
+ n("update:modelValue", t.modelValue === "all" ? "selection" : "all");
1264
1268
  }
1265
- }, { default: () => [x.modelValue === "all" ? C("common.page.selection.view") : C("common.page.selection.back")] }),
1269
+ }, { default: () => [t.modelValue === "all" ? r("common.page.selection.view") : r("common.page.selection.back")] }),
1266
1270
  createVNode(NButton, {
1267
1271
  text: !0,
1268
1272
  onClick: () => {
1269
- S("clear"), S("update:modelValue", "all");
1273
+ n("clear"), n("update:modelValue", "all");
1270
1274
  }
1271
- }, _isSlot$3(e = C("common.page.selection.clear")) ? e : { default: () => [e] })
1275
+ }, _isSlot$3(e = r("common.page.selection.clear")) ? e : { default: () => [e] })
1272
1276
  ] })]);
1273
1277
  };
1274
1278
  }
@@ -1276,13 +1280,13 @@ const DataSelection = /* @__PURE__ */ defineComponent({
1276
1280
  function _isSlot$2(e) {
1277
1281
  return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !isVNode(e);
1278
1282
  }
1279
- function _map(e, x) {
1283
+ function _map(e, t) {
1280
1284
  return (e ?? []).map((e) => {
1281
- let S = {
1285
+ let n = {
1282
1286
  csvTitle: e.exportTitle,
1283
1287
  ...e,
1284
1288
  title: () => {
1285
- let x = toValue(e.title), S = x && withDirectives(createVNode("div", null, [x]), [[
1289
+ let t = toValue(e.title), n = t && withDirectives(createVNode("div", null, [t]), [[
1286
1290
  vTooltip,
1287
1291
  () => toValue(e.title),
1288
1292
  void 0,
@@ -1293,26 +1297,26 @@ function _map(e, x) {
1293
1297
  wrap: !1,
1294
1298
  inline: !0,
1295
1299
  style: "max-width: 100%"
1296
- }, { default: () => [S, createVNode(NTooltip, null, {
1300
+ }, { default: () => [n, createVNode(NTooltip, null, {
1297
1301
  default: toValue(e.tooltip),
1298
1302
  trigger: () => createVNode(NButton, {
1299
1303
  text: !0,
1300
1304
  style: "font-size: 1.25em; opacity: 0.8"
1301
1305
  }, { default: () => [createVNode(NIcon, null, { default: () => [createVNode(IHelp, null, null)] })] })
1302
- })] }) : S;
1306
+ })] }) : n;
1303
1307
  }
1304
1308
  };
1305
- if (e.children?.length) S.children = _map(e.children, x);
1309
+ if (e.children?.length) n.children = _map(e.children, t);
1306
1310
  else {
1307
- e.hidden !== !0 && (S.width ??= 100, x.value += Number(S.width));
1308
- let C = e.render ?? ((e) => e);
1309
- e.ellipsis !== !1 && (S.ellipsis = !1, S.render = (...x) => {
1310
- let S = C(...x);
1311
- return S && (isVNode(S) || ((function() {
1312
- return S;
1313
- })(), S = createVNode("span", null, [S])), withDirectives(S, [[
1311
+ e.hidden !== !0 && (n.width ??= 100, t.value += Number(n.width));
1312
+ let r = e.render ?? ((e) => e);
1313
+ e.ellipsis !== !1 && (n.ellipsis = !1, n.render = (...t) => {
1314
+ let n = r(...t);
1315
+ return n && (isVNode(n) || ((function() {
1316
+ return n;
1317
+ })(), n = createVNode("span", null, [n])), withDirectives(n, [[
1314
1318
  vTooltip,
1315
- () => e.ellipsisTooltip ? e.ellipsisTooltip(...x) : S,
1319
+ () => e.ellipsisTooltip ? e.ellipsisTooltip(...t) : n,
1316
1320
  void 0,
1317
1321
  {
1318
1322
  auto: !0,
@@ -1320,14 +1324,14 @@ function _map(e, x) {
1320
1324
  [`ell${e.ellipsis}`]: !0
1321
1325
  }
1322
1326
  ]]));
1323
- }, e.ellipsisTooltip === !0 && (S.ellipsisTooltip = C)), Object.assign(S, {
1327
+ }, e.ellipsisTooltip === !0 && (n.ellipsisTooltip = r)), Object.assign(n, {
1324
1328
  resizable: e.resizable !== !1,
1325
1329
  sorter: e.sortable,
1326
1330
  type: ["selection", "expand"].includes(e.type) ? e.type : void 0,
1327
- disabled: e.selectable ? (x) => e.selectable(x) === !1 : void 0
1331
+ disabled: e.selectable ? (t) => e.selectable(t) === !1 : void 0
1328
1332
  });
1329
1333
  }
1330
- return S.key === "$actions" && (S.cellProps ??= () => ({ style: { padding: "0 2px" } })), S;
1334
+ return n.key === "$actions" && (n.cellProps ??= () => ({ style: { padding: "0 2px" } })), n;
1331
1335
  }).filter((e) => e?.hidden !== !0);
1332
1336
  }
1333
1337
  const DataTable = /* @__PURE__ */ defineComponent({
@@ -1371,94 +1375,94 @@ const DataTable = /* @__PURE__ */ defineComponent({
1371
1375
  "custom",
1372
1376
  "highlight"
1373
1377
  ],
1374
- setup(e, { slots: C, emit: w, expose: T }) {
1375
- let { keyField: E } = inject(PAGE_INJECTION), D = useMergedClsPrefix(), O = `${D.value}-datatable`;
1376
- useStyle("-datatable", style, D);
1377
- let A = useTemplateRef("table-ref"), j = ({ sortField: e, sortOrder: x } = {}, S) => {
1378
- e == S?.sortField && x == S?.sortOrder || A.value?.sort(e, x ? x + "end" : !1);
1378
+ setup(e, { slots: r, emit: i, expose: a }) {
1379
+ let { keyField: o } = inject(PAGE_INJECTION), s = useMergedClsPrefix(), l = `${s.value}-datatable`;
1380
+ useStyle("-datatable", style, s);
1381
+ let d = useTemplateRef("table-ref"), f = ({ sortField: e, sortOrder: t } = {}, n) => {
1382
+ e == n?.sortField && t == n?.sortOrder || d.value?.sort(e, t ? t + "end" : !1);
1379
1383
  };
1380
- watch(() => ({ ...e.sorter }), j, { deep: !0 });
1381
- let M = computed(() => {
1382
- let x = e.keyField || E || "key";
1383
- return (e) => e[x];
1384
- }), P = shallowRef({
1384
+ watch(() => ({ ...e.sorter }), f, { deep: !0 });
1385
+ let p = computed(() => {
1386
+ let t = e.keyField || o || "key";
1387
+ return (e) => e[t];
1388
+ }), g = shallowRef({
1385
1389
  cache: [],
1386
1390
  scrollToView(...e) {
1387
1391
  this.cache.push(e);
1388
1392
  }
1389
1393
  });
1390
- until(A).changed().then(() => {
1391
- j(e.sorter);
1392
- let x = P.value.cache;
1393
- P.value = A.value, P.value.scrollToView = (x) => {
1394
- let S = e.data.findIndex((e) => M.value(e) === x);
1395
- if (S === -1) return;
1396
- let C = A.value.$el.querySelector(`.${O}__row-marker:nth-child(${S + 1})`);
1397
- A.value.scrollTo({
1398
- top: C.offsetTop,
1394
+ until(d).changed().then(() => {
1395
+ f(e.sorter);
1396
+ let t = g.value.cache;
1397
+ g.value = d.value, g.value.scrollToView = (t) => {
1398
+ let n = e.data.findIndex((e) => p.value(e) === t);
1399
+ if (n === -1) return;
1400
+ let r = d.value.$el.querySelector(`.${l}__row-marker:nth-child(${n + 1})`);
1401
+ d.value.scrollTo({
1402
+ top: r.offsetTop,
1399
1403
  behavior: "smooth"
1400
1404
  });
1401
1405
  };
1402
- for (let e of x) P.value.scrollToView(...e);
1403
- }), T(toReactive(P));
1404
- let F = ref(0), I = shallowRef([]);
1406
+ for (let e of t) g.value.scrollToView(...e);
1407
+ }), a(toReactive(g));
1408
+ let _ = ref(0), v = shallowRef([]);
1405
1409
  watch(() => e.columns, () => {
1406
- F.value = 0, I.value = _map(e.columns, F);
1410
+ _.value = 0, v.value = _map(e.columns, _);
1407
1411
  }, {
1408
1412
  immediate: !0,
1409
1413
  deep: 1
1410
1414
  });
1411
- let L = ref();
1415
+ let y = ref();
1412
1416
  watch(() => e.highlight, (e) => {
1413
- L.value = typeof e == "boolean" ? null : e ?? null;
1417
+ y.value = typeof e == "boolean" ? null : e ?? null;
1414
1418
  }, { immediate: !0 });
1415
- let R = computed(() => (x, S) => [
1416
- e.rowClassName?.(x, S) || "",
1417
- `${O}__row-marker`,
1418
- L.value != null && M.value(x) === L.value ? `${O}__row-highlight` : ""
1419
- ].join(" ")), V = computed(() => (x, S) => {
1420
- let C = e.rowProps?.(x, S);
1419
+ let b = computed(() => (t, n) => [
1420
+ e.rowClassName?.(t, n) || "",
1421
+ `${l}__row-marker`,
1422
+ y.value != null && p.value(t) === y.value ? `${l}__row-highlight` : ""
1423
+ ].join(" ")), C = computed(() => (t, n) => {
1424
+ let r = e.rowProps?.(t, n);
1421
1425
  return {
1422
- ...C,
1423
- onClick: (S) => {
1424
- let T = M.value(x);
1425
- e.highlight === !0 && (L.value = T), w("highlight", T), C?.onClick?.(S);
1426
+ ...r,
1427
+ onClick: (n) => {
1428
+ let a = p.value(t);
1429
+ e.highlight === !0 && (y.value = a), i("highlight", a), r?.onClick?.(n);
1426
1430
  }
1427
1431
  };
1428
- }), H = (x) => {
1432
+ }), w = (t) => {
1429
1433
  if (e.sorter) {
1430
- let { sortField: S, sortOrder: C } = e.sorter;
1431
- if (x?.columnKey == S && (x?.order ? x.order === C + "end" : !C)) return;
1434
+ let { sortField: n, sortOrder: r } = e.sorter;
1435
+ if (t?.columnKey == n && (t?.order ? t.order === r + "end" : !r)) return;
1432
1436
  }
1433
- w("sort", {
1434
- sortField: x?.order ? x?.columnKey : void 0,
1435
- sortOrder: x?.order ? x.order.replace("end", "") : void 0
1437
+ i("sort", {
1438
+ sortField: t?.order ? t?.columnKey : void 0,
1439
+ sortOrder: t?.order ? t.order.replace("end", "") : void 0
1436
1440
  });
1437
- }, U = (e) => {
1438
- w("select", e);
1439
- }, W = (e, x, S) => {
1440
- w("custom", {
1441
- key: S.key,
1441
+ }, T = (e) => {
1442
+ i("select", e);
1443
+ }, E = (e, t, n) => {
1444
+ i("custom", {
1445
+ key: n.key,
1442
1446
  width: e
1443
1447
  });
1444
1448
  };
1445
1449
  return () => createVNode(NDataTable, {
1446
- class: [O, e.appear === "sticky" ? `${O}--sticky` : ""],
1450
+ class: [l, e.appear === "sticky" ? `${l}--sticky` : ""],
1447
1451
  data: e.data,
1448
- columns: I.value,
1449
- rowKey: M.value,
1452
+ columns: v.value,
1453
+ rowKey: p.value,
1450
1454
  tableLayout: "fixed",
1451
1455
  ref: "table-ref",
1452
- scrollX: F.value,
1453
- rowClassName: R.value,
1454
- rowProps: V.value,
1456
+ scrollX: _.value,
1457
+ rowClassName: b.value,
1458
+ rowProps: C.value,
1455
1459
  checkedRowKeys: e.selectedKeys,
1456
1460
  style: { "--n-tr-highlight-color": e.highlightColor },
1457
1461
  maxHeight: e.maxHeight ?? (e.appear === "sticky" ? "auto" : void 0),
1458
- onUpdateSorter: H,
1459
- onUpdateCheckedRowKeys: U,
1460
- onUnstableColumnResize: W
1461
- }, _isSlot$2(C) ? C : { default: () => [C] });
1462
+ onUpdateSorter: w,
1463
+ onUpdateCheckedRowKeys: T,
1464
+ onUnstableColumnResize: E
1465
+ }, _isSlot$2(r) ? r : { default: () => [r] });
1462
1466
  }
1463
1467
  });
1464
1468
  var style = /* @__PURE__ */ cB("datatable", [cE("row-highlight", [c("& > td", { backgroundColor: "var(--n-tr-highlight-color, var(--n-merged-border-color)) !important" })]), cM("sticky", [
@@ -1480,31 +1484,28 @@ var style = /* @__PURE__ */ cB("datatable", [cE("row-highlight", [c("& > td", {
1480
1484
  overflowX: "auto"
1481
1485
  }),
1482
1486
  c(".n-data-table-td > *", {
1483
- lineHeight: "1",
1484
1487
  verticalAlign: "middle",
1485
1488
  contentVisibility: "auto"
1486
- }),
1487
- c(".n-data-table-td > .n-checkbox--inside-table", { lineHeight: "16px" }),
1488
- c(".n-data-table-td > .n-tooltip-expanded", { lineHeight: "1.25" })
1489
+ })
1489
1490
  ])]);
1490
- function useDataTableDrag(e, { data: x, onSort: S, ...C }) {
1491
- watch([ref(x), e], async ([e, x]) => {
1491
+ function useDataTableDrag(e, { data: t, onSort: n, ...r }) {
1492
+ watch([ref(t), e], async ([e, t]) => {
1492
1493
  if (e.length === 0) return;
1493
1494
  await nextTick();
1494
- let w = unrefElement(x)?.querySelector(".n-data-table-base-table-body .n-data-table-tbody");
1495
- if (!w) return;
1496
- let T = Sortable$1.create(w, {
1495
+ let i = unrefElement(t)?.querySelector(".n-data-table-base-table-body .n-data-table-tbody");
1496
+ if (!i) return;
1497
+ let a = Sortable$1.create(i, {
1497
1498
  animation: 150,
1498
- ...C,
1499
+ ...r,
1499
1500
  onSort(e) {
1500
- S({
1501
+ n({
1501
1502
  from: e.oldIndex,
1502
1503
  to: e.newIndex
1503
1504
  });
1504
1505
  }
1505
1506
  });
1506
1507
  return () => {
1507
- T.destroy();
1508
+ a.destroy();
1508
1509
  };
1509
1510
  }, { immediate: !0 });
1510
1511
  }
@@ -1563,39 +1564,39 @@ const NRadios = /* @__PURE__ */ defineComponent({
1563
1564
  "update:modelValue": () => !0,
1564
1565
  updateModelValue: () => !0
1565
1566
  },
1566
- setup(x, { emit: S }) {
1567
- let { t: C } = useI18n(), w = computed(() => x.default === !1 ? "" : x.default === !0 ? C("common.all") : typeof x.default == "string" ? x.default : x.default?.[x.labelField] ?? C("common.all")), T = computed(() => x.type === "button-primary" ? {
1567
+ setup(t, { emit: n }) {
1568
+ let { t: r } = useI18n(), i = computed(() => t.default === !1 ? "" : t.default === !0 ? r("common.all") : typeof t.default == "string" ? t.default : t.default?.[t.labelField] ?? r("common.all")), a = computed(() => t.type === "button-primary" ? {
1568
1569
  "--n-button-color-active": "var(--color-primary)",
1569
1570
  "--n-button-text-color-active": "var(--color-base)"
1570
- } : {}), E = (e) => {
1571
- S("update:modelValue", e), S("updateModelValue", e);
1571
+ } : {}), o = (e) => {
1572
+ n("update:modelValue", e), n("updateModelValue", e);
1572
1573
  };
1573
1574
  return () => {
1574
- let e = x.type === "button" ? NRadioButton : NRadio, S = createVNode(Fragment, null, [x.default ? createVNode(e, { value: typeof x.default == "object" ? x.default?.[x.valueField] : null }, { default: () => [w.value] }) : void 0, x.options?.map((S) => {
1575
- let C = typeof S[x.labelField] == "string" ? S[x.labelField] : S[x.labelField]?.();
1575
+ let e = t.type === "button" ? NRadioButton : NRadio, n = createVNode(Fragment, null, [t.default ? createVNode(e, { value: typeof t.default == "object" ? t.default?.[t.valueField] : null }, { default: () => [i.value] }) : void 0, t.options?.map((n) => {
1576
+ let r = typeof n[t.labelField] == "string" ? n[t.labelField] : n[t.labelField]?.();
1576
1577
  return createVNode(e, {
1577
- value: S[x.valueField],
1578
- disabled: S[x.disabledField],
1579
- style: x.padding ? {
1580
- paddingLeft: x.padding,
1581
- paddingRight: x.padding
1578
+ value: n[t.valueField],
1579
+ disabled: n[t.disabledField],
1580
+ style: t.padding ? {
1581
+ paddingLeft: t.padding,
1582
+ paddingRight: t.padding
1582
1583
  } : {}
1583
- }, { default: () => [S.tip ? createVNode(NTooltip, null, {
1584
- default: () => S.tip,
1585
- trigger: () => C
1586
- }) : C] });
1584
+ }, { default: () => [n.tip ? createVNode(NTooltip, null, {
1585
+ default: () => n.tip,
1586
+ trigger: () => r
1587
+ }) : r] });
1587
1588
  })]);
1588
1589
  return createVNode(NRadioGroup, {
1589
- style: x.vertical ? {
1590
- ...T.value,
1590
+ style: t.vertical ? {
1591
+ ...a.value,
1591
1592
  padding: "6px 0 0"
1592
- } : T.value,
1593
- value: x.modelValue,
1594
- onUpdateValue: E
1595
- }, { default: () => [x.type === "radio" ? createVNode(NFlex, {
1596
- size: x.vertical ? void 0 : "small",
1597
- vertical: x.vertical
1598
- }, _isSlot$1(S) ? S : { default: () => [S] }) : S] });
1593
+ } : a.value,
1594
+ value: t.modelValue,
1595
+ onUpdateValue: o
1596
+ }, { default: () => [t.type === "radio" ? createVNode(NFlex, {
1597
+ size: t.vertical ? void 0 : "small",
1598
+ vertical: t.vertical
1599
+ }, _isSlot$1(n) ? n : { default: () => [n] }) : n] });
1599
1600
  };
1600
1601
  }
1601
1602
  });
@@ -1666,281 +1667,273 @@ const DtUserDept = /* @__PURE__ */ defineComponent({
1666
1667
  type: Function,
1667
1668
  default: () => []
1668
1669
  },
1669
- valueField: { type: String }
1670
+ valueField: { type: String },
1671
+ renderUserInfo: Function
1670
1672
  },
1671
1673
  emits: ["update:modelValue", "updateModelValue"],
1672
- setup(x, { emit: S, attrs: C }) {
1673
- let { t: w } = useI18n(), { localeRef: T } = useLocale("Popconfirm"), E = computed(() => x.valueField || (x.type === "user" ? "username" : "code")), D = computed(() => {
1674
- if (x.multiple) return x.modelValue || [];
1675
- let e = x.modelValue?.trim();
1674
+ setup(t, { emit: n, attrs: r }) {
1675
+ let { t: i } = useI18n(), { localeRef: a } = useLocale("Popconfirm"), o = computed(() => t.valueField || (t.type === "user" ? "username" : "code")), s = computed(() => {
1676
+ if (t.multiple) return t.modelValue || [];
1677
+ let e = t.modelValue?.trim();
1676
1678
  return e ? [e] : [];
1677
- }), A = /* @__PURE__ */ new Map(), j = computed(() => (A.clear(), x.users.map((e) => (e = reactive(e), e.label = e.nickname + e.username, e.value = e[E.value], e.type = "user", A.set(e[E.value], e), e)))), M = shallowRef([]);
1678
- watch(() => x.depts, (e) => {
1679
+ }), d = /* @__PURE__ */ new Map(), f = computed(() => (d.clear(), t.users.map((e) => (e = reactive(e), e.label = e.nickname + e.username, e.value = e[o.value], e.type = "user", d.set(e[o.value], e), e)))), p = shallowRef([]);
1680
+ watch(() => t.depts, (e) => {
1679
1681
  walkTree(e, (e) => {
1680
- e.label = e.name, e.value = e[E.value], e.type = "dept", e.children?.length || delete e.children;
1681
- }), M.value = flattenTree(e);
1682
+ e.label = e.name, e.value = e[o.value], e.type = "dept", e.children?.length || delete e.children;
1683
+ }), p.value = flattenTree(e);
1682
1684
  }, { immediate: !0 });
1683
- let N = computed(() => [
1684
- ...x.depts,
1685
- ...x.groups.map((e) => ({
1685
+ let m = computed(() => [
1686
+ ...t.depts,
1687
+ ...t.groups.map((e) => ({
1686
1688
  label: e.name,
1687
1689
  value: e.code,
1688
1690
  type: "group"
1689
1691
  })),
1690
- ...j.value
1691
- ]), P = ref([]), F = ref(), V = async (e) => {
1692
- let S = await (e.type === "group" ? x.getUsersByGroup(e.value) : x.getUsersByDept(e.value));
1693
- for (let e of j.value) e.disabled = !0;
1694
- F.value = [...e.type === "dept" ? e.children ?? [] : [], ...S.map((e) => {
1695
- let x = A.get(e[E.value]);
1696
- return x && (x.disabled = !1), {
1692
+ ...f.value
1693
+ ]), g = ref([]), _ = ref(), C = async (e) => {
1694
+ let n = await (e.type === "group" ? t.getUsersByGroup(e.value) : t.getUsersByDept(e.value));
1695
+ for (let e of f.value) e.disabled = !0;
1696
+ _.value = [...e.type === "dept" ? e.children ?? [] : [], ...n.map((e) => {
1697
+ let t = d.get(e[o.value]);
1698
+ return t && (t.disabled = !1), {
1697
1699
  ...e,
1698
1700
  label: e.nickname + e.username,
1699
- value: e[E.value],
1701
+ value: e[o.value],
1700
1702
  type: "user"
1701
1703
  };
1702
1704
  })];
1703
- }, H = /* @__PURE__ */ new WeakMap(), U = (e, S, C) => {
1704
- let T;
1705
- if (x.type === "dept") return createVNode(NTree, {
1706
- data: x.depts,
1705
+ }, w = /* @__PURE__ */ new WeakMap(), T = (e, n, r) => {
1706
+ let a;
1707
+ if (t.type === "dept") return createVNode(NTree, {
1708
+ data: t.depts,
1707
1709
  keyField: "value",
1708
1710
  labelField: "name",
1709
- defaultExpandAll: x.defaultExpandAll,
1710
- checkable: x.multiple,
1711
- selectable: !x.multiple,
1711
+ defaultExpandAll: t.defaultExpandAll,
1712
+ checkable: t.multiple,
1713
+ selectable: !t.multiple,
1712
1714
  multiple: !1,
1713
1715
  blockLine: !0,
1714
1716
  checkOnClick: !0,
1715
- pattern: C,
1716
- filter: (e, x) => x.label.includes(e) || x.value.includes(e),
1717
- checkedKeys: x.multiple ? e : void 0,
1718
- selectedKeys: x.multiple ? void 0 : e,
1717
+ pattern: r,
1718
+ filter: (e, t) => t.label.includes(e) || t.value.includes(e),
1719
+ checkedKeys: t.multiple ? e : void 0,
1720
+ selectedKeys: t.multiple ? void 0 : e,
1719
1721
  onUpdateCheckedKeys: (e) => {
1720
- x.max && e?.length > x.max || S(e);
1722
+ t.max && e?.length > t.max || n(e);
1721
1723
  },
1722
1724
  onUpdateSelectedKeys: (e) => {
1723
- S(e);
1725
+ n(e);
1724
1726
  }
1725
1727
  }, null);
1726
- let E = e ? H.get(e) : /* @__PURE__ */ new Set();
1727
- if (e && !E && (E = new Set(e), H.set(e, E)), F.value === !1) return createVNode(NSpin, { show: !0 }, null);
1728
- let D = F.value || N.value;
1729
- C = C?.trim(), C && (D = D?.filter((e) => e.label.includes(C) || e.value.includes(C)));
1730
- let k = P.value;
1731
- return createVNode(Fragment, null, [createVNode("div", { style: "margin: 12px 16px; display: flex; justify-content: space-between; align-items: center" }, [k.length > 0 ? createVNode(Fragment, null, [createVNode("span", { style: "display: flex; align-items: center" }, [
1732
- k.length >= 2 ? k.at(-2).label : w("common.all"),
1728
+ let o = e ? w.get(e) : /* @__PURE__ */ new Set();
1729
+ if (e && !o && (o = new Set(e), w.set(e, o)), _.value === !1) return createVNode(NSpin, { show: !0 }, null);
1730
+ let s = _.value || m.value;
1731
+ r = r?.trim(), r && (s = s?.filter((e) => e.label.includes(r) || e.value.includes(r)));
1732
+ let u = g.value;
1733
+ return createVNode(Fragment, null, [createVNode("div", { style: "margin: 12px 16px; display: flex; justify-content: space-between; align-items: center" }, [u.length > 0 ? createVNode(Fragment, null, [createVNode("span", { style: "display: flex; align-items: center" }, [
1734
+ u.length >= 2 ? u.at(-2).label : i("common.all"),
1733
1735
  createVNode("span", { style: "padding: 0 4px" }, [createVNode(IRight, null, null)]),
1734
- k.at(-1).label
1736
+ u.at(-1).label
1735
1737
  ]), createVNode(NButton, {
1736
1738
  text: !0,
1737
1739
  type: "warning",
1738
1740
  onClick: () => {
1739
- if (k.pop(), F.value = k.length > 0 ? !1 : void 0, k.length > 0) V(k.at(-1));
1740
- else for (let e of j.value) e.disabled = !1;
1741
+ if (u.pop(), _.value = u.length > 0 ? !1 : void 0, u.length > 0) C(u.at(-1));
1742
+ else for (let e of f.value) e.disabled = !1;
1741
1743
  }
1742
- }, { default: () => [createVNode(NIcon, null, { default: () => [createVNode(ILeft, null, null)] }), w("common.back")] })]) : createVNode("span", null, [w("common.all")])]), D?.length ? createVNode(NList, {
1744
+ }, { default: () => [createVNode(NIcon, null, { default: () => [createVNode(ILeft, null, null)] }), i("common.back")] })]) : createVNode("span", null, [i("common.all")])]), s?.length ? createVNode(NList, {
1743
1745
  showDivider: !1,
1744
1746
  style: "padding: 0 16px"
1745
- }, _isSlot(T = D.map((C) => {
1746
- let w, T;
1747
+ }, _isSlot(a = s.map((r) => {
1748
+ let i, a;
1747
1749
  return createVNode(NListItem, {
1748
- key: C.type + "_" + C.value,
1750
+ key: r.type + "_" + r.value,
1749
1751
  style: "padding: 6px 0"
1750
- }, { default: () => [C.type === "user" ? x.multiple ? createVNode(NCheckbox, {
1751
- checked: E.has(C.value) || !1,
1752
- onUpdateChecked: (w) => {
1753
- if (w && x.max && e.length >= x.max) return;
1754
- let T = [...e || []];
1755
- if (w) T.push(C.value);
1752
+ }, { default: () => [r.type === "user" ? t.multiple ? createVNode(NCheckbox, {
1753
+ checked: o.has(r.value) || !1,
1754
+ onUpdateChecked: (i) => {
1755
+ if (i && t.max && e.length >= t.max) return;
1756
+ let a = [...e || []];
1757
+ if (i) a.push(r.value);
1756
1758
  else {
1757
- let e = T.indexOf(C.value);
1758
- T.splice(e, 1);
1759
+ let e = a.indexOf(r.value);
1760
+ a.splice(e, 1);
1759
1761
  }
1760
- S(T);
1762
+ n(a);
1761
1763
  },
1762
1764
  style: "margin-left: 3px"
1763
- }, _isSlot(w = renderUsers([C], {
1765
+ }, _isSlot(i = renderUsers([r], {
1764
1766
  max: 1,
1765
1767
  size: 24,
1766
1768
  placement: "right",
1767
1769
  tooltip: !1,
1768
- username: !0
1769
- })) ? w : { default: () => [w] }) : createVNode(NRadio, {
1770
- checked: E.has(C.value) || !1,
1770
+ username: !0,
1771
+ renderInfo: t.renderUserInfo
1772
+ })) ? i : { default: () => [i] }) : createVNode(NRadio, {
1773
+ checked: o.has(r.value) || !1,
1771
1774
  onUpdateChecked: (e) => {
1772
- S(e ? [C.value] : []);
1775
+ n(e ? [r.value] : []);
1773
1776
  },
1774
1777
  style: "margin-left: 3px;"
1775
- }, _isSlot(T = renderUsers([C], {
1778
+ }, _isSlot(a = renderUsers([r], {
1776
1779
  max: 1,
1777
1780
  size: 24,
1778
1781
  placement: "right",
1779
1782
  tooltip: !1,
1780
- username: !0
1781
- })) ? T : { default: () => [T] }) : createVNode("div", {
1783
+ username: !0,
1784
+ renderInfo: t.renderUserInfo
1785
+ })) ? a : { default: () => [a] }) : createVNode("div", {
1782
1786
  onClick: () => {
1783
- F.value = !1, P.value.push(C), V(C);
1787
+ _.value = !1, g.value.push(r), C(r);
1784
1788
  },
1785
1789
  style: "cursor: pointer; display: flex; align-items: center; gap: 8px"
1786
1790
  }, [
1787
- C.type === "dept" ? createVNode(NAvatar, {
1791
+ r.type === "dept" ? createVNode(NAvatar, {
1788
1792
  size: 24,
1789
1793
  style: "background-color: red"
1790
1794
  }, { default: () => [createVNode(NIcon, null, { default: () => [createVNode(IDept, null, null)] })] }) : createVNode(NAvatar, {
1791
1795
  size: 24,
1792
1796
  style: "background-color: green"
1793
1797
  }, { default: () => [createVNode(NIcon, null, { default: () => [createVNode(IGroup, null, null)] })] }),
1794
- createVNode("span", { style: "flex: 1 1 auto" }, [C.label]),
1798
+ createVNode("span", { style: "flex: 1 1 auto" }, [r.label]),
1795
1799
  createVNode(NIcon, null, { default: () => [createVNode(IRight, null, null)] })
1796
1800
  ])] });
1797
- })) ? T : { default: () => [T] }) : createVNode(NEmpty, null, null)]);
1798
- }, W = () => createVNode(NEmpty, { description: x.placeholder }, null), G = ({ option: e }) => e.type === "user" ? createVNode("span", null, [e.nickname, createVNode("span", { style: {
1801
+ })) ? a : { default: () => [a] }) : createVNode(NEmpty, null, null)]);
1802
+ }, E = () => createVNode(NEmpty, { description: t.placeholder }, null), D = ({ option: e }) => e.type === "user" ? createVNode("span", null, [e.nickname, createVNode("span", { style: {
1799
1803
  opacity: .4,
1800
1804
  marginLeft: "8px"
1801
- } }, [e.username])]) : createVNode("span", null, [e.label]), K = (e, S, C, w, T) => createVNode(NTransfer, mergeProps(e, {
1802
- key: x.type,
1803
- options: S,
1804
- renderSourceList: ({ onCheck: e, pattern: x }) => U(C, e, x),
1805
- renderTargetList: x.placeholder?.trim() && !x.modelValue?.length ? W : void 0,
1806
- renderTargetLabel: G,
1807
- sourceFilterable: x.filterable,
1808
- size: x.size,
1809
- disabled: x.disabled || void 0,
1810
- value: C,
1811
- filter: (e, x) => x.label.includes(e) || x.value.includes(e),
1805
+ } }, [e.username])]) : createVNode("span", null, [e.label]), k = (e, n, r, i, a) => createVNode(NTransfer, mergeProps(e, {
1806
+ key: t.type,
1807
+ options: n,
1808
+ renderSourceList: ({ onCheck: e, pattern: t }) => T(r, e, t),
1809
+ renderTargetList: t.placeholder?.trim() && !t.modelValue?.length ? E : void 0,
1810
+ renderTargetLabel: D,
1811
+ sourceFilterable: t.filterable,
1812
+ size: t.size,
1813
+ disabled: t.disabled || void 0,
1814
+ value: r,
1815
+ filter: (e, t) => t.label.includes(e) || t.value.includes(e),
1812
1816
  "onUpdate:value": (e) => {
1813
- w?.(e);
1817
+ i?.(e);
1814
1818
  },
1815
1819
  onUpdateValue: (e) => {
1816
- T?.(e);
1820
+ a?.(e);
1817
1821
  }
1818
- }), null), q = ({ option: e, handleClose: S }) => createVNode(NTag, {
1819
- type: x.type === "user" ? "primary" : "info",
1822
+ }), null), A = ({ option: e, handleClose: n }) => createVNode(NTag, {
1823
+ type: t.type === "user" ? "primary" : "info",
1820
1824
  closable: !0,
1821
1825
  onMousedown: (e) => e.preventDefault(),
1822
1826
  onClose: (e) => {
1823
- e.stopPropagation(), S();
1827
+ e.stopPropagation(), n();
1824
1828
  }
1825
- }, { default: () => [e.label] }), J = (e, C = "updateModelValue") => {
1826
- x.multiple ? S(C, e) : S(C, e?.[0]);
1827
- }, Y = ref(), X = !1, Z = useDialog(), Q = () => {
1828
- if (X) return;
1829
- X = !0;
1830
- let e = shallowRef([...D.value || []]);
1831
- Z.create({
1829
+ }, { default: () => [e.label] }), j = (e, r = "updateModelValue") => {
1830
+ t.multiple ? n(r, e) : n(r, e?.[0]);
1831
+ }, M = ref(), N = !1, P = useDialog(), F = () => {
1832
+ if (N) return;
1833
+ N = !0;
1834
+ let e = shallowRef([...s.value || []]);
1835
+ P.create({
1832
1836
  showIcon: !1,
1833
- title: x.placeholder,
1837
+ title: t.placeholder,
1834
1838
  style: { width: "700px" },
1835
- content: () => createVNode("div", { style: { height: "550px" } }, [K({ style: { height: "100%" } }, x.type === "user" ? j.value : M.value, e.value, (x) => e.value = x)]),
1836
- positiveText: T.value.positiveText,
1837
- negativeText: T.value.negativeText,
1839
+ content: () => createVNode("div", { style: { height: "550px" } }, [k({ style: { height: "100%" } }, t.type === "user" ? f.value : p.value, e.value, (t) => e.value = t)]),
1840
+ positiveText: a.value.positiveText,
1841
+ negativeText: a.value.negativeText,
1838
1842
  onPositiveClick() {
1839
- J(e.value, "update:modelValue"), J(e.value, "updateModelValue");
1843
+ j(e.value, "update:modelValue"), j(e.value, "updateModelValue");
1840
1844
  },
1841
1845
  onAfterLeave() {
1842
1846
  nextTick(() => {
1843
- Y.value?.blur(), X = !1;
1847
+ M.value?.blur(), N = !1;
1844
1848
  });
1845
1849
  }
1846
1850
  });
1847
- }, $ = { arrow: () => createVNode(NIcon, null, { default: () => [x.type === "user" ? createVNode(IGroup, null, null) : createVNode(IDept, null, null)] }) };
1851
+ }, I = { arrow: () => createVNode(NIcon, null, { default: () => [t.type === "user" ? createVNode(IGroup, null, null) : createVNode(IDept, null, null)] }) };
1848
1852
  return () => {
1849
- let e = x.type === "user" ? j.value : M.value;
1850
- if (x.selectType === "dropdown" && x.type === "dept") return createVNode(NTreeSelect, {
1853
+ let e = t.type === "user" ? f.value : p.value;
1854
+ if (t.selectType === "dropdown" && t.type === "dept") return createVNode(NTreeSelect, {
1851
1855
  options: e,
1852
1856
  keyField: "value",
1853
- defaultExpandAll: x.defaultExpandAll,
1854
- checkable: x.multiple,
1855
- multiple: x.multiple,
1856
- filter: (e, x) => x.label.includes(e) || x.value.includes(e),
1857
- value: x.modelValue,
1857
+ defaultExpandAll: t.defaultExpandAll,
1858
+ checkable: t.multiple,
1859
+ multiple: t.multiple,
1860
+ filter: (e, t) => t.label.includes(e) || t.value.includes(e),
1861
+ value: t.modelValue,
1858
1862
  onUpdateValue: (e) => {
1859
- x.multiple && x.max && e?.length > x.max || S("updateModelValue", e);
1863
+ t.multiple && t.max && e?.length > t.max || n("updateModelValue", e);
1860
1864
  },
1861
1865
  "onUpdate:value": (e) => {
1862
- x.multiple && x.max && e?.length > x.max || S("update:modelValue", e);
1866
+ t.multiple && t.max && e?.length > t.max || n("update:modelValue", e);
1863
1867
  }
1864
- }, _isSlot($) ? $ : { default: () => [$] });
1865
- if (x.selectType === "transfer") return K(C, e, D.value, (e) => J(e, "update:modelValue"), (e) => J(e, "updateModelValue"));
1866
- let w = x.selectType === "dropdown";
1867
- return createVNode(NSelect, mergeProps(C, {
1868
- key: x.type,
1869
- ref: Y,
1870
- show: w ? void 0 : !1,
1871
- filterable: w ? x.filterable : !1,
1868
+ }, _isSlot(I) ? I : { default: () => [I] });
1869
+ if (t.selectType === "transfer") return k(r, e, s.value, (e) => j(e, "update:modelValue"), (e) => j(e, "updateModelValue"));
1870
+ let i = t.selectType === "dropdown";
1871
+ return createVNode(NSelect, mergeProps(r, {
1872
+ key: t.type,
1873
+ ref: M,
1874
+ show: i ? void 0 : !1,
1875
+ filterable: i ? t.filterable : !1,
1872
1876
  options: e,
1873
- multiple: x.multiple,
1874
- size: x.size,
1875
- placeholder: x.placeholder,
1876
- disabled: x.disabled || void 0,
1877
- value: x.modelValue,
1878
- renderTag: x.multiple ? q : void 0,
1879
- onFocus: w ? void 0 : Q,
1877
+ multiple: t.multiple,
1878
+ size: t.size,
1879
+ placeholder: t.placeholder,
1880
+ disabled: t.disabled || void 0,
1881
+ value: t.modelValue,
1882
+ renderTag: t.multiple ? A : void 0,
1883
+ onFocus: i ? void 0 : F,
1880
1884
  onUpdateValue: (e) => {
1881
- S("updateModelValue", e);
1885
+ n("updateModelValue", e);
1882
1886
  },
1883
1887
  "onUpdate:value": (e) => {
1884
- S("update:modelValue", e);
1888
+ n("update:modelValue", e);
1885
1889
  }
1886
- }), _isSlot($) ? $ : { default: () => [$] });
1890
+ }), _isSlot(I) ? I : { default: () => [I] });
1887
1891
  };
1888
1892
  }
1889
1893
  });
1890
- function renderUser(e, x, { placement: S, size: C, tooltip: w = !0, username: T = !1 }) {
1891
- let E = e.nickname.split(" ").at(-1), D = E;
1892
- return /^[\u4E00-\u9FA5]+$/.test(E) ? D = E.length >= 3 ? E.slice(-2) : E : E.length > 4 && (D = createVNode(NIcon, null, { default: () => [createVNode(IAccount, null, null)] })), createVNode(NPopover, {
1894
+ function renderUser(e, t, { placement: n = "left", size: r = 24, tooltip: i = !0, username: a = !1, renderInfo: o }) {
1895
+ let s = e.nickname.split(" ").at(-1), l = s;
1896
+ /^[\u4E00-\u9FA5]+$/.test(s) ? l = s.length >= 3 ? s.slice(-2) : s : s.length > 4 && (l = createVNode(NIcon, null, { default: () => [createVNode(IAccount, null, null)] }));
1897
+ let u = (e, t) => createVNode(NAvatar, {
1898
+ color: "var(--color-primary)",
1899
+ round: !0,
1900
+ size: e,
1901
+ style: t ? { position: "absolute" } : ""
1902
+ }, _isSlot(l) ? l : { default: () => [l] });
1903
+ return createVNode(NPopover, {
1893
1904
  key: e.username,
1894
1905
  raw: !0,
1895
- placement: S,
1896
- disabled: w === !1
1906
+ placement: n,
1907
+ disabled: i === !1
1897
1908
  }, {
1898
1909
  default: () => createVNode(NCard, {
1899
1910
  style: "width: 200px",
1900
1911
  size: "small"
1901
- }, { default: () => [createVNode(NH4, null, { default: () => [e.nickname] }), createVNode("span", null, [e.username])] }),
1912
+ }, { default: () => [createVNode("div", { style: "display: flex; align-items: center; gap: 12px" }, [u(48), createVNode("div", null, [createVNode("div", { style: "font-size: 16px; font-weight: 500;" }, [e.nickname]), createVNode("div", { style: "font-size: 14px; color: #999" }, [e.username])])]), o?.(e)] }),
1902
1913
  trigger: () => {
1903
- let S = createVNode(NAvatar, {
1904
- color: "var(--color-primary)",
1905
- round: !0,
1906
- size: C,
1907
- style: x ? {
1908
- position: "absolute",
1909
- bottom: -(C - 16) / 2 + "px"
1910
- } : ""
1911
- }, _isSlot(D) ? D : { default: () => [D] });
1912
- return x ? createVNode("div", { style: x ? {
1913
- display: "inline-flex",
1914
- itemsAlign: "center",
1915
- whiteSpace: "nowrap",
1916
- minWidth: C + "px",
1917
- height: C + "px"
1918
- } : "" }, [S, x ? createVNode(Fragment, null, [createVNode("span", { style: { marginLeft: C + 6 + "px" } }, [e.nickname]), T ? createVNode("span", { style: {
1919
- marginLeft: "8px",
1920
- opacity: .4
1921
- } }, [e.username]) : void 0]) : void 0]) : S;
1914
+ let n = u(r, t);
1915
+ return t ? createVNode("span", null, [n, createVNode("div", { style: `overflow: hidden; white-space: nowrap; text-overflow: ellipsis; min-width: ${r}px` }, [createVNode("span", { style: `margin-left: ${r + 6}px` }, [e.nickname]), a ? createVNode("span", { style: "margin-left: 8px; opacity: 0.4" }, [e.username]) : void 0])]) : n;
1922
1916
  }
1923
1917
  });
1924
1918
  }
1925
- function renderUsers(e, x = {}) {
1926
- x.size ||= 24, x.max ||= 4;
1927
- let { max: S, size: C } = x;
1928
- return e.length <= 1 ? createVNode("span", { style: "position: relative" }, [e.map((e) => renderUser(e, !0, x))]) : createVNode("span", { style: {
1919
+ function renderUsers(e, t = {}) {
1920
+ let { max: n = 4, size: r = 24 } = t;
1921
+ return e.length <= 1 ? e[0] ? renderUser(e[0], !0, t) : null : createVNode("span", { style: {
1929
1922
  display: "inline-block",
1930
- height: C + "px"
1923
+ height: r + "px"
1931
1924
  } }, [createVNode(NAvatarGroup, {
1932
1925
  options: e,
1933
- size: C,
1934
- max: S || 4,
1926
+ size: r,
1927
+ max: n || 4,
1935
1928
  style: "top: -2px"
1936
1929
  }, {
1937
- avatar: ({ option: e }) => renderUser(e, !1, x),
1938
- rest: ({ options: e, rest: x }) => createVNode(NDropdown, {
1930
+ avatar: ({ option: e }) => renderUser(e, !1, t),
1931
+ rest: ({ options: e, rest: t }) => createVNode(NDropdown, {
1939
1932
  options: e,
1940
1933
  keyField: "username",
1941
1934
  labelField: "nickname",
1942
- renderOption: ({ option: x }) => renderUser(x, !1, e)
1943
- }, { default: () => [createVNode(NAvatar, null, { default: () => [createTextVNode("+"), x] })] })
1935
+ renderOption: ({ option: t }) => renderUser(t, !1, e)
1936
+ }, { default: () => [createVNode(NAvatar, null, { default: () => [createTextVNode("+"), t] })] })
1944
1937
  })]);
1945
1938
  }
1946
1939
  const DtDeptRender = /* @__PURE__ */ defineComponent({
@@ -1951,18 +1944,18 @@ const DtDeptRender = /* @__PURE__ */ defineComponent({
1951
1944
  getDeptsByCode: Function
1952
1945
  },
1953
1946
  setup(e) {
1954
- let x = ref([]), S = {};
1955
- return watch([() => e.modelValue, () => e.multiple], ([C, w]) => {
1956
- x.value = [];
1957
- let T = C ? w ? Array.isArray(C) ? C : C.trim() ? C.trim().split(",") : [] : [C] : [], E = [];
1958
- for (let [e, C] of T.entries()) S[C] || (S[C] = reactive({
1959
- code: C,
1960
- name: C
1961
- }), E.push(C)), x.value[e] = S[C];
1962
- E.length > 0 && e.getDeptsByCode(E).then((e) => {
1963
- for (let x of e) Object.assign(S[x.code], x);
1947
+ let t = ref([]), n = {};
1948
+ return watch([() => e.modelValue, () => e.multiple], ([r, i]) => {
1949
+ t.value = [];
1950
+ let a = r ? i ? Array.isArray(r) ? r : r.trim() ? r.trim().split(",") : [] : [r] : [], o = [];
1951
+ for (let [e, r] of a.entries()) n[r] || (n[r] = reactive({
1952
+ code: r,
1953
+ name: r
1954
+ }), o.push(r)), t.value[e] = n[r];
1955
+ o.length > 0 && e.getDeptsByCode(o).then((e) => {
1956
+ for (let t of e) Object.assign(n[t.code], t);
1964
1957
  });
1965
- }, { immediate: !0 }), () => x.value.map((e) => createVNode(NTag, { key: e.code }, { default: () => [e.name] }));
1958
+ }, { immediate: !0 }), () => t.value.map((e) => createVNode(NTag, { key: e.code }, { default: () => [e.name] }));
1966
1959
  }
1967
1960
  }), DtUserRender = /* @__PURE__ */ defineComponent({
1968
1961
  name: "UserRender",
@@ -1972,21 +1965,22 @@ const DtDeptRender = /* @__PURE__ */ defineComponent({
1972
1965
  max: Number,
1973
1966
  size: Number,
1974
1967
  placement: String,
1975
- getUsersByUsername: Function
1968
+ getUsersByUsername: Function,
1969
+ renderInfo: Function
1976
1970
  },
1977
1971
  setup(e) {
1978
- let x = ref([]), S = {};
1979
- return watch([() => e.modelValue, () => e.multiple], ([C, w]) => {
1980
- x.value = [];
1981
- let T = C ? w ? Array.isArray(C) ? C : C.trim() ? C.trim().split(",") : [] : [C] : [], E = [];
1982
- for (let [e, C] of T.entries()) S[C] || (S[C] = reactive({
1983
- code: C,
1984
- name: C
1985
- }), E.push(C)), x.value[e] = S[C];
1986
- E.length > 0 && e.getUsersByUsername(E).then((e) => {
1987
- for (let x of e) Object.assign(S[x.code], x);
1972
+ let t = ref([]), n = {};
1973
+ return watch([() => e.value, () => e.multiple], ([r, i]) => {
1974
+ t.value = [];
1975
+ let a = r ? i ? Array.isArray(r) ? r : r.trim() ? r.trim().split(",") : [] : [r] : [], o = [];
1976
+ for (let [e, r] of a.entries()) n[r] || (n[r] = reactive({
1977
+ username: r,
1978
+ nickname: r
1979
+ }), o.push(r)), t.value[e] = n[r];
1980
+ o.length > 0 && e.getUsersByUsername(o).then((e) => {
1981
+ for (let t of e) Object.assign(n[t.username], t);
1988
1982
  });
1989
- }, { immediate: !0 }), () => renderUsers(x.value, e);
1983
+ }, { immediate: !0 }), () => renderUsers(t.value, e);
1990
1984
  }
1991
1985
  }), StateButtonProps = {
1992
1986
  disabled: {
@@ -2020,15 +2014,15 @@ const DtDeptRender = /* @__PURE__ */ defineComponent({
2020
2014
  }, NStateButton = /* @__PURE__ */ defineComponent({
2021
2015
  name: "StateButton",
2022
2016
  props: StateButtonProps,
2023
- setup(e, { slots: x }) {
2017
+ setup(e, { slots: t }) {
2024
2018
  return () => {
2025
- let { type: S, disabled: C, succeeded: w, successText: T, failureText: E } = e;
2019
+ let { type: n, disabled: r, succeeded: i, successText: a, failureText: o } = e;
2026
2020
  return createVNode(NButton, {
2027
- type: w ? "success" : w === !1 ? "error" : S,
2028
- disabled: typeof w == "boolean" ? !0 : C
2021
+ type: i ? "success" : i === !1 ? "error" : n,
2022
+ disabled: typeof i == "boolean" ? !0 : r
2029
2023
  }, {
2030
- default: () => (w ? x.success ? x.success() : T : w === !1 ? x.failure ? x.failure() : E : x.default?.()) ?? x.default(),
2031
- icon: () => w ? x.successIcon ? x.successIcon() : createVNode(NIcon, null, { default: () => [createVNode(ICheck, null, null)] }) : w === !1 ? x.failureIcon ? x.failureIcon() : createVNode(NIcon, null, { default: () => [createVNode(IClose, null, null)] }) : x.icon?.()
2024
+ default: () => (i ? t.success ? t.success() : a : i === !1 ? t.failure ? t.failure() : o : t.default?.()) ?? t.default(),
2025
+ icon: () => i ? t.successIcon ? t.successIcon() : createVNode(NIcon, null, { default: () => [createVNode(ICheck, null, null)] }) : i === !1 ? t.failureIcon ? t.failureIcon() : createVNode(NIcon, null, { default: () => [createVNode(IClose, null, null)] }) : t.icon?.()
2032
2026
  });
2033
2027
  };
2034
2028
  }