@xinlian-frontend/lui 0.0.1-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/README.md +1371 -0
  2. package/assets/style.css +1 -0
  3. package/components/ApprovalSteps/index.d.ts +11 -0
  4. package/components/ApprovalSteps/index.vue.d.ts +10 -0
  5. package/components/ApprovalSteps/privite-type.d.ts +381 -0
  6. package/components/ApprovalSteps/type.d.ts +61 -0
  7. package/components/FilePreview/file-preview.vue.d.ts +9 -0
  8. package/components/FilePreview/index.d.ts +11 -0
  9. package/components/button/button.vue.d.ts +3 -0
  10. package/components/button/index.d.ts +4 -0
  11. package/components/button/type.d.ts +1 -0
  12. package/components/detail-layout/detail-layout.vue.d.ts +44 -0
  13. package/components/detail-layout/index.d.ts +2 -0
  14. package/components/detail-layout/type.d.ts +9 -0
  15. package/components/drawer/index.d.ts +107 -0
  16. package/components/drawer/index.vue.d.ts +51 -0
  17. package/components/drawer/type.d.ts +1 -0
  18. package/components/error-page/404.vue.d.ts +3 -0
  19. package/components/error-page/index.d.ts +4 -0
  20. package/components/filter-panel/filter-panel.vue.d.ts +36 -0
  21. package/components/filter-panel/index.d.ts +79 -0
  22. package/components/filter-panel/type.d.ts +28 -0
  23. package/components/fixed-footer/fixed-footer.vue.d.ts +13 -0
  24. package/components/fixed-footer/index.d.ts +2 -0
  25. package/components/form-footer/form-footer.vue.d.ts +13 -0
  26. package/components/form-footer/index.d.ts +15 -0
  27. package/components/form-footer/type.d.ts +36 -0
  28. package/components/form-section-page/form-section-page.vue.d.ts +13 -0
  29. package/components/form-section-page/index.d.ts +3 -0
  30. package/components/form-submit-page/form-submit-page-card.vue.d.ts +22 -0
  31. package/components/form-submit-page/form-submit-page.vue.d.ts +74 -0
  32. package/components/form-submit-page/index.d.ts +4 -0
  33. package/components/form-submit-page/type.d.ts +6 -0
  34. package/components/info-layout/index.d.ts +50 -0
  35. package/components/info-layout/info-layout.vue.d.ts +28 -0
  36. package/components/info-layout/type.d.ts +6 -0
  37. package/components/modal/index.d.ts +44 -0
  38. package/components/modal/index.vue.d.ts +25 -0
  39. package/components/page-table/index.d.ts +204 -0
  40. package/components/page-table/page-table.vue.d.ts +95 -0
  41. package/components/page-table/setting.vue.d.ts +10 -0
  42. package/components/page-table/type.d.ts +19 -0
  43. package/components/role-tree/index.d.ts +23 -0
  44. package/components/role-tree/role-tree-item.vue.d.ts +17 -0
  45. package/components/role-tree/role-tree.vue.d.ts +21 -0
  46. package/components/role-tree/type.d.ts +13 -0
  47. package/components/second-bar/SecondBar.vue.d.ts +16 -0
  48. package/components/second-bar/index.d.ts +22 -0
  49. package/components/section-block/index.d.ts +2 -0
  50. package/components/section-block/section-block.vue.d.ts +31 -0
  51. package/components/sign-status-flow/index.d.ts +12 -0
  52. package/components/sign-status-flow/sign-status-flow.vue.d.ts +9 -0
  53. package/components/sign-status-flow/type.d.ts +8 -0
  54. package/components/upload-file/constant.d.ts +18 -0
  55. package/components/upload-file/index.d.ts +170 -0
  56. package/components/upload-file/service.d.ts +4 -0
  57. package/components/upload-file/type.d.ts +8 -0
  58. package/components/upload-file/upload-file.vue.d.ts +48 -0
  59. package/components/upload-file/upload-image.vue.d.ts +46 -0
  60. package/exported-components.d.ts +19 -0
  61. package/index.d.ts +2 -0
  62. package/l-ui.es.js +3869 -0
  63. package/package.json +32 -0
  64. package/type.d.ts +10 -0
  65. package/utils/index.d.ts +3 -0
  66. package/vue-office-docx.js +5857 -0
  67. package/vue-office-excel.js +64323 -0
  68. package/vue-office-pdf.js +2012 -0
package/l-ui.es.js ADDED
@@ -0,0 +1,3869 @@
1
+ import { defineComponent as ee, ref as L, watch as Oe, watchEffect as Hn, computed as ue, openBlock as f, createBlock as B, unref as v, mergeProps as xe, isRef as dn, createSlots as He, withCtx as C, createElementVNode as I, renderSlot as z, normalizeStyle as cn, resolveDynamicComponent as jn, createElementBlock as y, toDisplayString as Y, resolveComponent as pe, Teleport as fn, Fragment as X, renderList as oe, createCommentVNode as R, createVNode as N, createTextVNode as W, nextTick as je, normalizeClass as Z, onMounted as nt, onActivated as Kn, onDeactivated as Xn, useCssVars as pn, withModifiers as hn, withKeys as Wn, onUnmounted as Gn, normalizeProps as Pt, guardReactiveProps as Nt, onBeforeUnmount as qn, withDirectives as Jn, vShow as Qn, useAttrs as Zn, mergeDefaults as mn } from "vue";
2
+ import { FileTextOutlined as eo, RedoOutlined as gn, FullscreenExitOutlined as to, FullscreenOutlined as no, CloseOutlined as oo, SearchOutlined as ao, MoreOutlined as lo } from "@ant-design/icons-vue";
3
+ import { Modal as io, Image as ro, Empty as vn, Spin as Vt, PageHeader as so, Descriptions as uo, DescriptionsItem as co, Card as yn, Tabs as bn, TabPane as _n, Drawer as fo, Result as po, Button as ie, Form as wn, FormItem as ho, Input as mo, Select as go, SelectOption as vo, RangePicker as Wt, Alert as yo, Table as kn, message as Sn, theme as bo, ConfigProvider as _o, Tooltip as lt, Pagination as wo, Checkbox as Gt, CheckboxGroup as ko, Tag as So, Upload as At } from "ant-design-vue";
4
+ import { q as To } from "./vue-office-docx.js";
5
+ import { V as Eo } from "./vue-office-excel.js";
6
+ import { J as xo } from "./vue-office-pdf.js";
7
+ import { useVModel as tt, useDraggable as $o, useFullscreen as Co, useDebounceFn as qt, useDateFormat as Jt } from "@vueuse/core";
8
+ import { useRouter as Do } from "vue-router";
9
+ function he(e, t) {
10
+ return e.install = (n) => {
11
+ for (const o of [e, ...Object.values({})])
12
+ n.component(o.name, o);
13
+ }, e;
14
+ }
15
+ const Io = { class: "l-modal" }, Po = { key: 1 }, No = /* @__PURE__ */ ee({
16
+ name: "LModal",
17
+ __name: "index",
18
+ props: {
19
+ modelValue: { type: Boolean },
20
+ title: {}
21
+ },
22
+ emits: ["update:modelValue"],
23
+ setup(e, { emit: t }) {
24
+ const n = e, o = t, a = L(), l = tt(n, "modelValue", o), { x: r, y: i, isDragging: s } = $o(a), u = L(0), p = L(0), d = L(!1), E = L(0), w = L(0), S = L(0), $ = L(0), g = L({ left: 0, right: 0, top: 0, bottom: 0 });
25
+ Oe([r, i], () => {
26
+ var _;
27
+ if (!d.value) {
28
+ u.value = r.value, p.value = i.value;
29
+ const P = document.body.getBoundingClientRect(), c = (_ = a.value) == null ? void 0 : _.getBoundingClientRect();
30
+ g.value.right = P.width - c.width, g.value.bottom = P.height - c.height, S.value = E.value, $.value = w.value;
31
+ }
32
+ d.value = !0;
33
+ }), Oe(s, () => {
34
+ s || (d.value = !1);
35
+ }), Hn(() => {
36
+ d.value && (E.value = S.value + Math.min(Math.max(g.value.left, r.value), g.value.right) - u.value, w.value = $.value + Math.min(Math.max(g.value.top, i.value), g.value.bottom) - p.value);
37
+ });
38
+ const b = ue(() => ({
39
+ transform: `translate(${E.value}px, ${w.value}px)`
40
+ }));
41
+ return (_, P) => (f(), B(v(io), xe({
42
+ open: v(l),
43
+ "onUpdate:open": P[0] || (P[0] = (c) => dn(l) ? l.value = c : null),
44
+ "wrap-style": { overflow: "hidden" }
45
+ }, _.$attrs, {
46
+ "wrap-class-name": "l-modal",
47
+ "cancel-text": "取消",
48
+ "ok-text": "确定"
49
+ }), He({
50
+ title: C(() => [
51
+ I("div", {
52
+ ref_key: "modalTitleRef",
53
+ ref: a,
54
+ style: { width: "100%", cursor: "move" }
55
+ }, [
56
+ _.$slots.title ? z(_.$slots, "title", { key: 0 }, void 0, !0) : (f(), y("span", Po, Y(e.title), 1))
57
+ ], 512)
58
+ ]),
59
+ modalRender: C(({ originVNode: c }) => [
60
+ I("div", {
61
+ style: cn(b.value)
62
+ }, [
63
+ (f(), B(jn(c)))
64
+ ], 4)
65
+ ]),
66
+ default: C(() => [
67
+ I("div", Io, [
68
+ z(_.$slots, "default", {}, void 0, !0)
69
+ ])
70
+ ]),
71
+ _: 2
72
+ }, [
73
+ _.$slots.footer ? {
74
+ name: "footer",
75
+ fn: C(() => [
76
+ z(_.$slots, "footer", {}, void 0, !0)
77
+ ]),
78
+ key: "0"
79
+ } : void 0
80
+ ]), 1040, ["open"]));
81
+ }
82
+ }), ae = (e, t) => {
83
+ const n = e.__vccOpts || e;
84
+ for (const [o, a] of t)
85
+ n[o] = a;
86
+ return n;
87
+ }, Ao = /* @__PURE__ */ ae(No, [["__scopeId", "data-v-f0bb5f5e"]]), Ot = he(Ao), Oo = { class: "file-preview-wrapper" }, Fo = ["src"], Ro = {
88
+ key: 4,
89
+ class: "no-preview"
90
+ }, Lo = /* @__PURE__ */ ee({
91
+ __name: "file-preview",
92
+ props: {
93
+ modalBodyMaxHeight: {}
94
+ },
95
+ setup(e, { expose: t }) {
96
+ const n = e, o = L(!1), a = L(""), l = L(""), r = L([]), i = L(!1), s = L(!1), u = ["png", "jpg", "jpeg", "gif", "bmp", "webp"], p = ["mp4", "webm", "ogg", "avi", "mov", "wmv", "flv", "mkv"], d = (c) => u.includes(c), E = ue(() => {
97
+ const { modalBodyMaxHeight: c } = n;
98
+ if (!(c == null || c === ""))
99
+ return typeof c == "number" ? `${c}px` : c;
100
+ }), w = ue(() => {
101
+ if (E.value)
102
+ return {
103
+ maxHeight: E.value
104
+ };
105
+ }), S = (c) => p.includes(c);
106
+ function $(c) {
107
+ var h;
108
+ if (!c) return "";
109
+ const D = ((h = c.split("?")[0]) == null ? void 0 : h.split("#")[0]) ?? "", m = D.lastIndexOf(".");
110
+ return m === -1 ? "" : D.slice(m + 1).toLowerCase();
111
+ }
112
+ function g(c, D) {
113
+ const m = (D || $(c)).toLowerCase();
114
+ l.value = m, a.value = c, d(m) ? (r.value = [c], i.value = !0, je(() => {
115
+ s.value = !0;
116
+ }), o.value = !1) : (r.value = [], i.value = !1, s.value = !1, o.value = !0);
117
+ }
118
+ function b() {
119
+ console.log("close"), o.value = !1, a.value = "", l.value = "";
120
+ }
121
+ function _() {
122
+ a.value && window.open(a.value, "_blank");
123
+ }
124
+ function P() {
125
+ i.value = !1, s.value = !1, r.value = [], a.value = "", l.value = "";
126
+ }
127
+ return t({
128
+ showDialog: g
129
+ }), (c, D) => {
130
+ const m = pe("a-image"), h = pe("a-button");
131
+ return f(), y("div", Oo, [
132
+ (f(), B(fn, { to: "body" }, [
133
+ i.value ? (f(), B(v(ro).PreviewGroup, {
134
+ key: 0,
135
+ preview: {
136
+ visible: s.value,
137
+ onVisibleChange: (T) => {
138
+ s.value = T, T || P();
139
+ }
140
+ }
141
+ }, {
142
+ default: C(() => [
143
+ (f(!0), y(X, null, oe(r.value, (T, k) => (f(), B(m, {
144
+ key: `${T}-${k}`,
145
+ src: T,
146
+ preview: { visible: s.value },
147
+ style: { position: "fixed", top: "-9999px", left: "-9999px", width: "1px", height: "1px", opacity: "0", "pointer-events": "none", "z-index": "-1" }
148
+ }, null, 8, ["src", "preview"]))), 128))
149
+ ]),
150
+ _: 1
151
+ }, 8, ["preview"])) : R("", !0)
152
+ ])),
153
+ N(v(Ot), {
154
+ modelValue: o.value,
155
+ "onUpdate:modelValue": D[0] || (D[0] = (T) => o.value = T),
156
+ title: "文件预览",
157
+ "mask-closable": !1,
158
+ width: 1e3,
159
+ "body-style": w.value,
160
+ onOk: b,
161
+ onCancel: b
162
+ }, {
163
+ footer: C(() => [
164
+ N(h, {
165
+ type: "primary",
166
+ onClick: _
167
+ }, {
168
+ default: C(() => [...D[1] || (D[1] = [
169
+ W("下载", -1)
170
+ ])]),
171
+ _: 1
172
+ }),
173
+ N(h, { onClick: b }, {
174
+ default: C(() => [...D[2] || (D[2] = [
175
+ W("关闭", -1)
176
+ ])]),
177
+ _: 1
178
+ })
179
+ ]),
180
+ default: C(() => [
181
+ l.value === "pdf" ? (f(), B(v(xo), {
182
+ key: 0,
183
+ src: a.value
184
+ }, null, 8, ["src"])) : ["doc", "docx"].includes(l.value) ? (f(), B(v(To), {
185
+ key: 1,
186
+ src: a.value,
187
+ style: { border: "none", "box-shadow": "none" }
188
+ }, null, 8, ["src"])) : ["xls", "xlsx"].includes(l.value) ? (f(), B(v(Eo), {
189
+ key: 2,
190
+ src: a.value,
191
+ style: { border: "none", "box-shadow": "none" }
192
+ }, null, 8, ["src"])) : S(l.value) ? (f(), y("video", {
193
+ key: 3,
194
+ src: a.value,
195
+ controls: "",
196
+ style: { width: "100%" }
197
+ }, " 您的浏览器不支持视频播放 ", 8, Fo)) : (f(), y("div", Ro, "暂不支持预览该文件类型:" + Y(l.value || "未知类型"), 1))
198
+ ]),
199
+ _: 1
200
+ }, 8, ["modelValue", "body-style"])
201
+ ]);
202
+ };
203
+ }
204
+ }), Ut = /* @__PURE__ */ ae(Lo, [["__scopeId", "data-v-943cb84d"]]), Mo = he(Ut), Bo = {
205
+ PENDING: "待审批",
206
+ RUNNING: "审批中",
207
+ PASS: "已通过",
208
+ REFUSE: "已驳回",
209
+ REVOKED: "已撤销",
210
+ DELETED: "已删除"
211
+ };
212
+ var J = /* @__PURE__ */ ((e) => (e.AfterAdd = "afterAdd", e.Agree = "agree", e.BeforeAdd = "beforeAdd", e.Cancel = "cancel", e.Candidate = "candidate", e.Cc = "cc", e.Comment = "comment", e.Complete = "complete", e.Delegate = "delegate", e.Fallback = "fallback", e.Forward = "forward", e.Pass = "pass", e.Reject = "reject", e.Revise = "revise", e.Revoke = "revoke", e.Startup = "startup", e.Terminate = "terminate", e.Warning = "warning", e.Withdraw = "withdraw", e))(J || {});
213
+ const Yo = { class: "l-approval-steps" }, Vo = { class: "step-group__rail" }, Uo = { class: "step-group__body" }, zo = { class: "parent-head" }, Ho = { class: "parent-head__main" }, jo = { class: "parent-head__title" }, Ko = {
214
+ key: 0,
215
+ class: "parent-head__time"
216
+ }, Xo = {
217
+ key: 0,
218
+ class: "parent-desc"
219
+ }, Wo = {
220
+ key: 1,
221
+ class: "parent-desc"
222
+ }, Go = { class: "child-row__marker" }, qo = { class: "child-row__panel" }, Jo = { class: "child-head" }, Qo = { class: "child-head__main" }, Zo = { class: "child-head__name" }, ea = {
223
+ key: 0,
224
+ class: "child-head__dept"
225
+ }, ta = {
226
+ key: 0,
227
+ class: "child-head__time"
228
+ }, na = {
229
+ key: 0,
230
+ class: "child-remark"
231
+ }, oa = {
232
+ key: 1,
233
+ class: "child-files"
234
+ }, aa = ["onClick"], la = { class: "child-file-card__text" }, ia = /* @__PURE__ */ ee({
235
+ name: "LApprovalSteps",
236
+ __name: "index",
237
+ props: {
238
+ nodes: { default: () => [] }
239
+ },
240
+ setup(e) {
241
+ const t = e, n = {
242
+ [J.Agree]: "同意",
243
+ [J.Pass]: "通过",
244
+ [J.Reject]: "驳回",
245
+ [J.Complete]: "完成",
246
+ [J.Cancel]: "取消",
247
+ [J.Revoke]: "撤回",
248
+ [J.Withdraw]: "撤回",
249
+ [J.Terminate]: "终止",
250
+ [J.Comment]: "评论",
251
+ [J.Cc]: "抄送",
252
+ [J.Delegate]: "委托",
253
+ [J.Forward]: "转办",
254
+ [J.Fallback]: "退回",
255
+ [J.Revise]: "修订",
256
+ [J.Startup]: "发起流程"
257
+ }, o = L();
258
+ function a(c) {
259
+ var D;
260
+ (D = o.value) == null || D.showDialog(c.url);
261
+ }
262
+ function l(c) {
263
+ var m, h;
264
+ return (((m = c.approvalRoleName) == null ? void 0 : m.trim()) || ((h = c.nodeName) == null ? void 0 : h.trim()) || "审").charAt(0);
265
+ }
266
+ function r(c) {
267
+ var D, m;
268
+ return ((D = c.enterpriseName) == null ? void 0 : D.trim()) || ((m = c.nodeName) == null ? void 0 : m.trim()) || "-";
269
+ }
270
+ function i(c) {
271
+ return c.updateTime || c.createTime || "";
272
+ }
273
+ function s(c) {
274
+ const m = (t.nodes[c] || {}).nodeStatus || "";
275
+ return m === "PENDING" ? "is-dotted" : m === "PASS" ? "is-solid" : m === "RUNNING" ? "is-solid-to-dotted" : m === "REFUSE" || m === "REVOKED" || m === "DELETED" ? "is-solid" : "is-pending";
276
+ }
277
+ function u(c) {
278
+ const D = c.nodeStatus || "";
279
+ return D === "PENDING" ? "is-pending" : D === "RUNNING" ? "is-active" : D === "PASS" || D === "REVOKED" || D === "DELETED" || D === "REFUSE" ? "is-done" : "is-pending";
280
+ }
281
+ function p(c) {
282
+ const D = c.nodeStatus || "";
283
+ return D === "PASS" ? "is-success" : D === "RUNNING" ? "is-processing" : D === "REFUSE" ? "is-danger" : "is-pending";
284
+ }
285
+ function d(c, D) {
286
+ if (D) return { label: "审批中", kind: "processing" };
287
+ if (c == null) return { label: "待审批", kind: "pending" };
288
+ const m = n[c] || String(c);
289
+ return c === J.Reject || c === J.Terminate || c === J.Cancel ? { label: m, kind: "danger" } : c === J.Agree || c === J.Pass || c === J.Complete ? { label: m, kind: "success" } : { label: m, kind: "success" };
290
+ }
291
+ function E(c) {
292
+ var D, m;
293
+ return ((m = (D = c == null ? void 0 : c.deptInfo) == null ? void 0 : D.name) == null ? void 0 : m.trim()) || "";
294
+ }
295
+ function w(c) {
296
+ return c ? [...c.files ?? [], ...c.images ?? []] : [];
297
+ }
298
+ function S(c) {
299
+ var H, j, A, K, re;
300
+ const D = ((j = (H = c.source) == null ? void 0 : H.name) == null ? void 0 : j.trim()) || ((K = (A = c.target) == null ? void 0 : A.name) == null ? void 0 : K.trim()) || "-", m = E(c.source) || E(c.target) || "", { label: h, kind: T } = d(c.result, c.isFuture), k = c.comment;
301
+ return {
302
+ name: D,
303
+ dept: m,
304
+ statusLabel: h,
305
+ statusKind: T,
306
+ remark: (re = k == null ? void 0 : k.text) == null ? void 0 : re.trim(),
307
+ attachments: w(k),
308
+ time: c.endTime || c.startTime
309
+ };
310
+ }
311
+ function $(c) {
312
+ var K, re, Ie, be;
313
+ const D = c.map((Se) => {
314
+ var _e, Fe;
315
+ return ((Fe = (_e = Se.assignee) == null ? void 0 : _e.name) == null ? void 0 : Fe.trim()) || "-";
316
+ }).join(" / "), m = c[0], h = ((Ie = (re = (K = m.depts) == null ? void 0 : K[0]) == null ? void 0 : re.name) == null ? void 0 : Ie.trim()) || E(m.assignee) || "", { label: T, kind: k } = d(m.result, m.isFuture), H = m.comment, j = [...new Set(c.map((Se) => {
317
+ var _e, Fe;
318
+ return (Fe = (_e = Se.comment) == null ? void 0 : _e.text) == null ? void 0 : Fe.trim();
319
+ }).filter(Boolean))], A = c.flatMap((Se) => w(Se.comment));
320
+ return {
321
+ name: D,
322
+ dept: h,
323
+ statusLabel: T,
324
+ statusKind: k,
325
+ remark: j.join("; ") || ((be = H == null ? void 0 : H.text) == null ? void 0 : be.trim()),
326
+ attachments: A,
327
+ time: m.endTime || m.createTime
328
+ };
329
+ }
330
+ function g(c) {
331
+ const D = c.subInstRecordList ?? [], m = [];
332
+ for (const h of D)
333
+ m.push(...b(h));
334
+ return m;
335
+ }
336
+ function b(c) {
337
+ const D = c.recordItems;
338
+ if (D != null && D.length) return D.map(S);
339
+ const m = c.actualUsers;
340
+ return m != null && m.length ? [$(m)] : [];
341
+ }
342
+ function _(c, D) {
343
+ return c.id ?? c.subInstId ?? D;
344
+ }
345
+ const P = ue(() => t.nodes.map((c, D) => {
346
+ if (D !== t.nodes.length - 1 || c.nodeStatus === "PENDING") return null;
347
+ const m = g(c);
348
+ return m.length === 0 ? null : `${36 + m.length * 16}px`;
349
+ }));
350
+ return (c, D) => {
351
+ var m;
352
+ return f(), y("div", Yo, [
353
+ (m = e.nodes) != null && m.length ? (f(!0), y(X, { key: 0 }, oe(e.nodes, (h, T) => (f(), y("div", {
354
+ key: _(h, T),
355
+ class: "step-group"
356
+ }, [
357
+ I("div", Vo, [
358
+ T > 0 ? (f(), y("div", {
359
+ key: 0,
360
+ class: Z(["rail-segment", s(T)])
361
+ }, null, 2)) : R("", !0),
362
+ I("div", {
363
+ class: Z(["rail-node", u(h)])
364
+ }, Y(l(h)), 3),
365
+ T < e.nodes.length - 1 || T === e.nodes.length - 1 && h.nodeStatus !== "PENDING" && g(h).length > 0 ? (f(), y("div", {
366
+ key: 1,
367
+ class: Z(["rail-segment rail-segment--after", [s(T), P.value[T] ? "rail-segment--fixed-height" : ""]]),
368
+ style: cn(P.value[T] ? { height: P.value[T] } : {})
369
+ }, null, 6)) : R("", !0)
370
+ ]),
371
+ I("div", Uo, [
372
+ I("div", zo, [
373
+ I("div", Ho, [
374
+ I("span", jo, Y(r(h)), 1),
375
+ I("span", {
376
+ class: Z(["parent-head__tag", p(h)])
377
+ }, Y(v(Bo)[h.nodeStatus] || "待审批"), 3)
378
+ ]),
379
+ i(h) ? (f(), y("span", Ko, Y(i(h)), 1)) : R("", !0)
380
+ ]),
381
+ h.nodeStatusDesc ? (f(), y("p", Xo, Y(h.nodeStatusDesc), 1)) : h.remark ? (f(), y("p", Wo, Y(h.remark), 1)) : R("", !0),
382
+ (f(!0), y(X, null, oe(g(h), (k, H) => {
383
+ var j;
384
+ return f(), y("div", {
385
+ key: H,
386
+ class: "child-row"
387
+ }, [
388
+ I("div", Go, [
389
+ I("span", {
390
+ class: Z(["child-row__branch", {
391
+ "is-solid": k.statusKind === "success" || k.statusKind === "danger",
392
+ "is-dotted": k.statusKind === "pending" && s(T) === "is-dotted"
393
+ }])
394
+ }, null, 2),
395
+ I("span", {
396
+ class: Z(["child-row__dot", {
397
+ "is-before": k.statusKind === "pending" && s(T) === "is-dotted"
398
+ }])
399
+ }, null, 2)
400
+ ]),
401
+ I("div", qo, [
402
+ I("div", Jo, [
403
+ I("div", Qo, [
404
+ I("span", Zo, Y(k.name), 1),
405
+ k.dept ? (f(), y("span", ea, Y(k.dept), 1)) : R("", !0),
406
+ I("span", {
407
+ class: Z(["child-head__tag", {
408
+ "is-success": k.statusKind === "success",
409
+ "is-processing": k.statusKind === "processing",
410
+ "is-pending": k.statusKind === "pending",
411
+ "is-danger": k.statusKind === "danger"
412
+ }])
413
+ }, Y(k.statusLabel), 3)
414
+ ]),
415
+ k.time ? (f(), y("span", ta, Y(k.time), 1)) : R("", !0)
416
+ ]),
417
+ k.remark ? (f(), y("div", na, Y(k.remark || "暂无评论"), 1)) : R("", !0),
418
+ (j = k.attachments) != null && j.length ? (f(), y("div", oa, [
419
+ (f(!0), y(X, null, oe(k.attachments, (A, K) => (f(), y("div", {
420
+ key: K,
421
+ class: "child-file-card",
422
+ onClick: (re) => a(A)
423
+ }, [
424
+ N(v(eo), { class: "child-file-card__icon" }),
425
+ I("span", la, Y(A.name), 1)
426
+ ], 8, aa))), 128))
427
+ ])) : R("", !0)
428
+ ])
429
+ ]);
430
+ }), 128))
431
+ ])
432
+ ]))), 128)) : (f(), B(v(vn), {
433
+ key: 1,
434
+ description: "暂无流程日志"
435
+ })),
436
+ N(v(Mo), {
437
+ ref_key: "filePreviewRef",
438
+ ref: o
439
+ }, null, 512)
440
+ ]);
441
+ };
442
+ }
443
+ }), ra = /* @__PURE__ */ ae(ia, [["__scopeId", "data-v-897fc289"]]), qi = he(ra), sa = { class: "l-fixed-footer" }, ua = /* @__PURE__ */ ee({
444
+ name: "LFixedFooter",
445
+ __name: "fixed-footer",
446
+ setup(e) {
447
+ const t = L(), n = L(!0);
448
+ return nt(() => {
449
+ t.value = document.querySelector("#smartAdminMain");
450
+ }), Kn(() => {
451
+ n.value = !0;
452
+ }), Xn(() => {
453
+ n.value = !1;
454
+ }), (o, a) => t.value && n.value ? (f(), B(fn, {
455
+ key: 0,
456
+ to: t.value
457
+ }, [
458
+ I("div", sa, [
459
+ z(o.$slots, "footer", {}, void 0, !0)
460
+ ])
461
+ ], 8, ["to"])) : R("", !0);
462
+ }
463
+ }), da = /* @__PURE__ */ ae(ua, [["__scopeId", "data-v-65057ac3"]]), ca = {
464
+ key: 0,
465
+ class: "l-detail-layout__header"
466
+ }, fa = /* @__PURE__ */ ee({
467
+ name: "LDetailLayout",
468
+ __name: "detail-layout",
469
+ props: {
470
+ title: {},
471
+ descriptions: {},
472
+ headerColumn: { default: 3 },
473
+ tabs: {},
474
+ defaultActiveKey: { default: "" },
475
+ tabSize: { default: "small" },
476
+ loading: { type: Boolean, default: !1 },
477
+ loadingTip: { default: "加载中..." }
478
+ },
479
+ emits: ["tabChange"],
480
+ setup(e, { emit: t }) {
481
+ const n = e, o = t, a = ue({
482
+ get: () => n.defaultActiveKey || (n.tabs.length > 0 ? n.tabs[0].key : ""),
483
+ set: (i) => {
484
+ o("tabChange", i);
485
+ }
486
+ });
487
+ function l(i) {
488
+ const s = String(i);
489
+ a.value = s, o("tabChange", s);
490
+ }
491
+ function r(i) {
492
+ return i == null || i === "" ? "--" : String(i);
493
+ }
494
+ return (i, s) => (f(), B(v(Vt), {
495
+ spinning: e.loading,
496
+ tip: e.loadingTip
497
+ }, {
498
+ default: C(() => {
499
+ var u;
500
+ return [
501
+ (u = e.descriptions) != null && u.length ? (f(), y("div", ca, [
502
+ N(v(so), { title: e.title }, He({
503
+ default: C(() => [
504
+ I("div", null, [
505
+ N(v(uo), {
506
+ size: "small",
507
+ column: e.headerColumn
508
+ }, {
509
+ default: C(() => [
510
+ (f(!0), y(X, null, oe(e.descriptions, (p, d) => (f(), B(v(co), {
511
+ key: d,
512
+ label: p.label,
513
+ span: p.span ?? 1
514
+ }, {
515
+ default: C(() => [
516
+ i.$slots[`description-${p.label}`] ? z(i.$slots, `description-${p.label}`, {
517
+ key: 0,
518
+ item: p
519
+ }, void 0, !0) : (f(), y(X, { key: 1 }, [
520
+ W(Y(r(p.value)), 1)
521
+ ], 64))
522
+ ]),
523
+ _: 2
524
+ }, 1032, ["label", "span"]))), 128))
525
+ ]),
526
+ _: 3
527
+ }, 8, ["column"])
528
+ ])
529
+ ]),
530
+ _: 2
531
+ }, [
532
+ i.$slots.extra ? {
533
+ name: "extra",
534
+ fn: C(() => [
535
+ z(i.$slots, "extra", {}, void 0, !0)
536
+ ]),
537
+ key: "0"
538
+ } : void 0
539
+ ]), 1032, ["title"])
540
+ ])) : R("", !0),
541
+ i.$slots.afterHeader ? z(i.$slots, "afterHeader", { key: 1 }, void 0, !0) : R("", !0),
542
+ s[1] || (s[1] = I("br", null, null, -1)),
543
+ s[2] || (s[2] = I("br", null, null, -1)),
544
+ N(v(yn), {
545
+ class: Z(["l-detail-layout__tabs-card", { "mb-100px": i.$slots.footer }]),
546
+ size: e.tabSize
547
+ }, {
548
+ default: C(() => [
549
+ N(v(bn), {
550
+ "active-key": a.value,
551
+ "onUpdate:activeKey": s[0] || (s[0] = (p) => a.value = p),
552
+ onChange: l
553
+ }, {
554
+ default: C(() => [
555
+ (f(!0), y(X, null, oe(e.tabs, (p) => (f(), B(v(_n), {
556
+ key: p.key,
557
+ tab: p.label
558
+ }, {
559
+ default: C(() => [
560
+ z(i.$slots, `tab-${p.key}`, {}, void 0, !0)
561
+ ]),
562
+ _: 2
563
+ }, 1032, ["tab"]))), 128))
564
+ ]),
565
+ _: 3
566
+ }, 8, ["active-key"])
567
+ ]),
568
+ _: 3
569
+ }, 8, ["class", "size"]),
570
+ i.$slots.footer ? (f(), B(v(da), { key: 2 }, {
571
+ footer: C(() => [
572
+ z(i.$slots, "footer", {}, void 0, !0)
573
+ ]),
574
+ _: 3
575
+ })) : R("", !0)
576
+ ];
577
+ }),
578
+ _: 3
579
+ }, 8, ["spinning", "tip"]));
580
+ }
581
+ }), Ji = /* @__PURE__ */ ae(fa, [["__scopeId", "data-v-48c58d06"]]), pa = {
582
+ key: 0,
583
+ class: "loading"
584
+ }, ha = { class: "extra" }, ma = { class: "title" }, ga = /* @__PURE__ */ ee({
585
+ name: "LDrawer",
586
+ __name: "index",
587
+ props: {
588
+ mask: { type: Boolean, default: !0 },
589
+ placement: { default: "right" },
590
+ width: { default: "75%" },
591
+ title: {},
592
+ loading: { type: Boolean },
593
+ disabledNext: { type: Boolean },
594
+ disabledPrev: { type: Boolean },
595
+ showRefresh: { type: Boolean },
596
+ page: { type: Boolean }
597
+ },
598
+ emits: ["prev", "next", "refresh", "close"],
599
+ setup(e, { expose: t, emit: n }) {
600
+ const o = e, a = n, l = L(!1), r = L(o.width), i = L(!1);
601
+ function s() {
602
+ i.value = !1, a("close");
603
+ }
604
+ return t({
605
+ open() {
606
+ i.value = !0;
607
+ },
608
+ close: s,
609
+ visable: i
610
+ }), (u, p) => (f(), B(v(fo), xe({
611
+ open: i.value,
612
+ "onUpdate:open": p[3] || (p[3] = (d) => i.value = d),
613
+ placement: e.placement,
614
+ push: { distance: 0 },
615
+ width: r.value,
616
+ closable: !1,
617
+ style: { "background-color": "#f5f5f5" },
618
+ "root-class-name": `l-drawer l-drawer${e.mask ? "" : " l-hide-mask"}`
619
+ }, u.$attrs, { onClose: s }), He({
620
+ extra: C(() => [
621
+ I("div", ha, [
622
+ z(u.$slots, "extra", {}, void 0, !0),
623
+ e.showRefresh ? (f(), B(v(gn), {
624
+ key: 0,
625
+ class: "icon",
626
+ type: "md-refresh",
627
+ onClick: p[0] || (p[0] = (d) => u.$emit("refresh"))
628
+ })) : R("", !0),
629
+ l.value ? (f(), B(v(to), {
630
+ key: 1,
631
+ class: "icon",
632
+ onClick: p[1] || (p[1] = () => {
633
+ r.value = e.width, l.value = !1;
634
+ })
635
+ })) : (f(), B(v(no), {
636
+ key: 2,
637
+ class: "icon",
638
+ onClick: p[2] || (p[2] = () => {
639
+ r.value = "100%", l.value = !0;
640
+ })
641
+ })),
642
+ N(v(oo), {
643
+ class: "icon",
644
+ onClick: s
645
+ })
646
+ ])
647
+ ]),
648
+ default: C(() => [
649
+ e.loading ? (f(), y("div", pa, [
650
+ N(v(Vt))
651
+ ])) : z(u.$slots, "default", { key: 1 }, void 0, !0),
652
+ u.$slots.title ? z(u.$slots, "title", { key: 2 }, void 0, !0) : R("", !0)
653
+ ]),
654
+ _: 2
655
+ }, [
656
+ u.$slots.footer ? {
657
+ name: "footer",
658
+ fn: C(() => [
659
+ z(u.$slots, "footer", {}, void 0, !0)
660
+ ]),
661
+ key: "0"
662
+ } : void 0,
663
+ u.$slots.title ? void 0 : {
664
+ name: "title",
665
+ fn: C(() => [
666
+ I("div", ma, [
667
+ W(Y(e.title) + " ", 1),
668
+ z(u.$slots, "title-extra", {}, void 0, !0)
669
+ ])
670
+ ]),
671
+ key: "1"
672
+ }
673
+ ]), 1040, ["open", "placement", "width", "root-class-name"]));
674
+ }
675
+ }), va = /* @__PURE__ */ ae(ga, [["__scopeId", "data-v-65c0ec46"]]), Qi = he(va), ya = /* @__PURE__ */ ee({
676
+ name: "LPageNotFound",
677
+ __name: "404",
678
+ setup(e) {
679
+ const t = Do();
680
+ function n() {
681
+ t.push({ path: "/" });
682
+ }
683
+ return (o, a) => (f(), B(v(po), {
684
+ status: "404",
685
+ title: "对不起,您访问的内容不存在!"
686
+ }, {
687
+ extra: C(() => [
688
+ N(v(ie), {
689
+ type: "primary",
690
+ onClick: n
691
+ }, {
692
+ default: C(() => [...a[0] || (a[0] = [
693
+ W("返回首页", -1)
694
+ ])]),
695
+ _: 1
696
+ })
697
+ ]),
698
+ _: 1
699
+ }));
700
+ }
701
+ }), Zi = he(ya), ba = ["title"], _a = { class: "l-filter-panel__actions" }, wa = /* @__PURE__ */ ee({
702
+ name: "LFilterPanel",
703
+ __name: "filter-panel",
704
+ props: {
705
+ modelValue: {},
706
+ filterItems: { default: () => [] },
707
+ labelWidth: { default: "80px" },
708
+ collapsible: { type: Boolean, default: !1 },
709
+ card: { type: Boolean, default: !0 },
710
+ collapsedRows: { default: 1 },
711
+ searchText: { default: "查询" },
712
+ resetText: { default: "重置" },
713
+ expandText: { default: "展开" },
714
+ collapseText: { default: "收起" }
715
+ },
716
+ emits: ["update:modelValue", "search", "reset", "toggle"],
717
+ setup(e, { emit: t }) {
718
+ pn((S) => ({
719
+ v6d3848de: S.labelWidth
720
+ }));
721
+ const n = e, o = t, a = {
722
+ date: "YYYY-MM-DD",
723
+ daterange: "YYYY-MM-DD",
724
+ datetime: "YYYY-MM-DD HH:mm:ss",
725
+ datetimerange: "YYYY-MM-DD HH:mm:ss"
726
+ }, l = tt(n, "modelValue", o), r = L(!1), i = ue(
727
+ () => typeof n.labelWidth == "number" ? `${n.labelWidth}px` : n.labelWidth
728
+ ), s = L(), u = ue(() => r.value ? n.collapseText : n.expandText);
729
+ function p() {
730
+ Object.keys(l.value).forEach((S) => {
731
+ l.value[S] === "" && (l.value[S] = void 0);
732
+ }), o("search");
733
+ }
734
+ const d = ue(() => n.filterItems.filter((S) => !S.hide));
735
+ function E() {
736
+ var S;
737
+ (S = s.value) == null || S.resetFields(), je(() => {
738
+ o("reset");
739
+ });
740
+ }
741
+ function w() {
742
+ r.value = !r.value, o("toggle", r.value);
743
+ }
744
+ return (S, $) => (f(), y("section", {
745
+ class: Z(["l-filter-panel", { card: e.card }]),
746
+ style: { "padding-left": "0px" }
747
+ }, [
748
+ I("div", {
749
+ class: Z(["l-filter-panel__content", { hide: !r.value }])
750
+ }, [
751
+ N(v(wn), {
752
+ ref_key: "formRef",
753
+ ref: s,
754
+ class: "l-filter-panel__form",
755
+ model: v(l),
756
+ "label-width": i.value,
757
+ "label-position": "left",
758
+ onSubmit: $[3] || ($[3] = hn(() => {
759
+ }, ["prevent"]))
760
+ }, {
761
+ default: C(() => [
762
+ (f(!0), y(X, null, oe(d.value, (g) => (f(), B(v(ho), {
763
+ key: g.key,
764
+ name: g.key,
765
+ class: "l-filter-panel__form-item"
766
+ }, {
767
+ label: C(() => [
768
+ I("div", {
769
+ class: "label-overflow",
770
+ title: g.label
771
+ }, Y(g.label), 9, ba)
772
+ ]),
773
+ default: C(() => [
774
+ S.$slots[`filter-${g.key}`] ? z(S.$slots, `filter-${g.key}`, {
775
+ key: 0,
776
+ item: g
777
+ }, void 0, !0) : g.type === "input" || !g.type ? (f(), B(v(mo), {
778
+ key: 1,
779
+ value: v(l)[g.key],
780
+ "onUpdate:value": (b) => v(l)[g.key] = b,
781
+ "allow-clear": "",
782
+ placeholder: g.placeholder || "请输入",
783
+ onKeyup: $[0] || ($[0] = Wn((b) => p(), ["enter"])),
784
+ onChange: (b) => !v(l)[g.key] && p()
785
+ }, null, 8, ["value", "onUpdate:value", "placeholder", "onChange"])) : g.type === "select" ? (f(), B(v(go), {
786
+ key: 2,
787
+ value: v(l)[g.key],
788
+ "onUpdate:value": (b) => v(l)[g.key] = b,
789
+ "allow-clear": "",
790
+ "show-search": "",
791
+ placeholder: g.placeholder || "请选择",
792
+ mode: g.multiple ? "multiple" : void 0,
793
+ "option-filter-prop": "label",
794
+ onChange: () => {
795
+ var b;
796
+ (b = g.change) == null || b.call(g), p();
797
+ }
798
+ }, {
799
+ default: C(() => [
800
+ (f(!0), y(X, null, oe(g.options, (b) => (f(), B(v(vo), {
801
+ key: b.value,
802
+ label: b.label,
803
+ value: b.value
804
+ }, {
805
+ default: C(() => [
806
+ W(Y(b.label), 1)
807
+ ]),
808
+ _: 2
809
+ }, 1032, ["label", "value"]))), 128))
810
+ ]),
811
+ _: 2
812
+ }, 1032, ["value", "onUpdate:value", "placeholder", "mode", "onChange"])) : g.type === "daterange" ? (f(), B(v(Wt), {
813
+ key: 3,
814
+ value: v(l)[g.key],
815
+ "onUpdate:value": (b) => v(l)[g.key] = b,
816
+ "allow-clear": "",
817
+ type: g.type,
818
+ placeholder: [g.startPlaceholder || "开始日期", g.endPlaceholder || "结束日期"],
819
+ "value-format": a[g.type],
820
+ style: { width: "100%" },
821
+ onChange: $[1] || ($[1] = (b) => p())
822
+ }, null, 8, ["value", "onUpdate:value", "type", "placeholder", "value-format"])) : g.type === "datetimerange" ? (f(), B(v(Wt), {
823
+ key: 4,
824
+ value: v(l)[g.key],
825
+ "onUpdate:value": (b) => v(l)[g.key] = b,
826
+ "allow-clear": "",
827
+ type: g.type,
828
+ placeholder: [g.startPlaceholder || "开始日期", g.endPlaceholder || "结束日期"],
829
+ "value-format": a[g.type],
830
+ "show-time": "",
831
+ style: { width: "100%" },
832
+ onChange: $[2] || ($[2] = (b) => p())
833
+ }, null, 8, ["value", "onUpdate:value", "type", "placeholder", "value-format"])) : R("", !0)
834
+ ]),
835
+ _: 2
836
+ }, 1032, ["name"]))), 128))
837
+ ]),
838
+ _: 3
839
+ }, 8, ["model", "label-width"])
840
+ ], 2),
841
+ I("div", _a, [
842
+ N(v(ie), {
843
+ type: "primary",
844
+ onClick: p
845
+ }, {
846
+ default: C(() => [
847
+ N(v(ao)),
848
+ W(" " + Y(n.searchText), 1)
849
+ ]),
850
+ _: 1
851
+ }),
852
+ N(v(ie), { onClick: E }, {
853
+ default: C(() => [
854
+ N(v(gn)),
855
+ W(" " + Y(n.resetText), 1)
856
+ ]),
857
+ _: 1
858
+ }),
859
+ d.value.length > 3 ? (f(), B(v(ie), {
860
+ key: 0,
861
+ link: "",
862
+ onClick: w
863
+ }, {
864
+ default: C(() => [
865
+ N(v(lo)),
866
+ W(" " + Y(u.value), 1)
867
+ ]),
868
+ _: 1
869
+ })) : R("", !0)
870
+ ])
871
+ ], 2));
872
+ }
873
+ }), ka = /* @__PURE__ */ ae(wa, [["__scopeId", "data-v-7b9f532e"]]), Sa = he(ka), Ta = { class: "l-form-submit-page-wrap" }, Ea = { class: "pb-74px" }, xa = { class: "l-form-section-page__main" }, $a = ["id"], Ca = { class: "l-form-section-page__title" }, Da = { class: "l-form-section-page__title-text" }, Ia = {
874
+ key: 0,
875
+ class: "l-form-section-page__desc"
876
+ }, Pa = { class: "l-form-section-page__body" }, Na = {
877
+ key: 0,
878
+ class: "l-form-section-page__anchor"
879
+ }, Aa = { class: "l-form-section-page__anchor-inner" }, Oa = ["onClick"], Fa = "l-form-submit-page-layout-variant", Ra = "l-form-section-page__card-", La = /* @__PURE__ */ ee({
880
+ name: "LFormSubmitPage",
881
+ __name: "form-submit-page",
882
+ props: {
883
+ model: {},
884
+ rules: {},
885
+ layout: { default: "horizontal" },
886
+ variant: { default: "section" },
887
+ showLayoutSwitch: { type: Boolean, default: !0 },
888
+ sections: {},
889
+ showRightNav: { type: Boolean, default: !0 },
890
+ showSave: { type: Boolean, default: !0 },
891
+ showSubmit: { type: Boolean, default: !0 },
892
+ submitLoading: { type: Boolean, default: !1 },
893
+ saveLoading: { type: Boolean, default: !1 },
894
+ cancelText: { default: "取消" },
895
+ saveText: { default: "保存" },
896
+ submitText: { default: "提交" }
897
+ },
898
+ emits: ["cancel", "save", "submit", "update:variant"],
899
+ setup(e, { expose: t }) {
900
+ const n = e;
901
+ function o() {
902
+ const h = localStorage.getItem(Fa);
903
+ if (h === "card" || h === "section") return h;
904
+ }
905
+ const a = L(
906
+ n.showLayoutSwitch ? o() ?? n.variant : n.variant
907
+ );
908
+ Oe(
909
+ () => n.variant,
910
+ (h) => {
911
+ n.showLayoutSwitch || (a.value = h);
912
+ },
913
+ { immediate: !0 }
914
+ );
915
+ const l = ue(
916
+ () => n.showLayoutSwitch ? a.value : n.variant
917
+ ), r = ue(() => l.value === "section"), i = ue(() => {
918
+ var h;
919
+ return !!((h = n.sections) != null && h.length);
920
+ }), s = ue(() => r.value ? { span: 3 } : { span: 6 }), u = ue(() => r.value ? { span: 13 } : { span: 10 }), p = L(), d = L(), E = L("");
921
+ function w(h) {
922
+ if (!h) return !1;
923
+ if (h === window) {
924
+ const k = window.scrollY || document.documentElement.scrollTop || document.body.scrollTop || 0, H = window.innerHeight, j = document.documentElement.scrollHeight || document.body.scrollHeight || 0;
925
+ return k + H >= j - 10;
926
+ }
927
+ const T = h;
928
+ return T.scrollTop + T.clientHeight >= T.scrollHeight - 10;
929
+ }
930
+ function S(h) {
931
+ return `${Ra}${h}`;
932
+ }
933
+ function $(h) {
934
+ if (!h) return null;
935
+ let T = h.parentElement;
936
+ for (; T && T !== document.body; ) {
937
+ const { overflowY: k } = getComputedStyle(T);
938
+ if (k === "auto" || k === "scroll" || k === "overlay") return T;
939
+ T = T.parentElement;
940
+ }
941
+ return window;
942
+ }
943
+ function g(h) {
944
+ var T;
945
+ E.value = h, (T = document.getElementById(S(h))) == null || T.scrollIntoView({ behavior: "smooth", block: "start" });
946
+ }
947
+ function b() {
948
+ const h = n.sections;
949
+ if (!(h != null && h.length)) return;
950
+ if (w(P)) {
951
+ E.value = h[h.length - 1].key;
952
+ return;
953
+ }
954
+ let T = -1;
955
+ h.forEach((k, H) => {
956
+ const j = document.getElementById(S(k.key));
957
+ if (!j) return;
958
+ j.getBoundingClientRect().top >= 0 && T === -1 && (T = H);
959
+ }), T === -1 ? E.value = h[h.length - 1].key : E.value = h[T].key;
960
+ }
961
+ let _, P = null;
962
+ function c() {
963
+ _ && cancelAnimationFrame(_), _ = requestAnimationFrame(b);
964
+ }
965
+ function D() {
966
+ P = $(d.value ?? null), P == null || P.addEventListener("scroll", c, { passive: !0 });
967
+ }
968
+ function m() {
969
+ P == null || P.removeEventListener("scroll", c), P = null;
970
+ }
971
+ return nt(() => {
972
+ var h;
973
+ r.value && ((h = n.sections) != null && h.length) && (E.value = n.sections[0].key, je(() => {
974
+ b(), D();
975
+ }));
976
+ }), Gn(() => {
977
+ r.value && (m(), _ && cancelAnimationFrame(_));
978
+ }), Oe(
979
+ () => [l.value, n.sections],
980
+ ([h, T]) => {
981
+ h === "section" && (T != null && T.length) && (E.value = T[0].key, je(b));
982
+ },
983
+ { immediate: !0 }
984
+ ), t({
985
+ get formRef() {
986
+ return p.value;
987
+ },
988
+ /**
989
+ * 手动滚动到第一个校验错误的表单项
990
+ * 解决 scroll-to-first-error 在复杂布局下失效的问题
991
+ */
992
+ scrollToFirstError() {
993
+ var T;
994
+ if (!p.value) return;
995
+ const h = (T = p.value.$el) == null ? void 0 : T.querySelector(".ant-form-item-has-error");
996
+ if (h) {
997
+ const k = $(d.value) || window, H = h.getBoundingClientRect();
998
+ let j = 0;
999
+ if (k === window)
1000
+ j = window.scrollY + H.top - 100, window.scrollTo({ top: j, behavior: "smooth" });
1001
+ else {
1002
+ const A = k.getBoundingClientRect();
1003
+ j = k.scrollTop + H.top - A.top - 100, k.scrollTo({ top: j, behavior: "smooth" });
1004
+ }
1005
+ }
1006
+ }
1007
+ }), (h, T) => (f(), y("div", Ta, [
1008
+ I("div", Ea, [
1009
+ I("div", {
1010
+ ref_key: "rootRef",
1011
+ ref: d,
1012
+ class: "l-form-section-page"
1013
+ }, [
1014
+ I("div", xa, [
1015
+ N(v(wn), xe({
1016
+ ref_key: "formRef",
1017
+ ref: p,
1018
+ model: e.model,
1019
+ rules: e.rules,
1020
+ "label-col": s.value,
1021
+ "wrapper-col": u.value,
1022
+ layout: e.layout
1023
+ }, h.$attrs, { "scroll-to-first-error": "" }), {
1024
+ default: C(() => [
1025
+ i.value ? (f(!0), y(X, { key: 0 }, oe(e.sections, (k) => (f(), y("div", {
1026
+ id: S(k.key),
1027
+ key: k.key,
1028
+ class: "l-form-section-page__card"
1029
+ }, [
1030
+ I("div", Ca, [
1031
+ T[0] || (T[0] = I("span", { class: "l-form-section-page__bar" }, null, -1)),
1032
+ I("span", Da, Y(k.title), 1),
1033
+ k.desc ? (f(), y("span", Ia, Y(k.desc), 1)) : R("", !0)
1034
+ ]),
1035
+ I("div", Pa, [
1036
+ z(h.$slots, `card-${k.key}`, {}, void 0, !0)
1037
+ ])
1038
+ ], 8, $a))), 128)) : z(h.$slots, "default", { key: 1 }, void 0, !0)
1039
+ ]),
1040
+ _: 3
1041
+ }, 16, ["model", "rules", "label-col", "wrapper-col", "layout"])
1042
+ ]),
1043
+ i.value && e.showRightNav ? (f(), y("aside", Na, [
1044
+ I("div", Aa, [
1045
+ (f(!0), y(X, null, oe(e.sections, (k) => (f(), y("a", {
1046
+ key: k.key,
1047
+ class: Z(["l-form-section-page__anchor-item", { "is-active": E.value === k.key }]),
1048
+ onClick: hn((H) => g(k.key), ["prevent"])
1049
+ }, Y(k.title), 11, Oa))), 128))
1050
+ ])
1051
+ ])) : R("", !0)
1052
+ ], 512)
1053
+ ])
1054
+ ]));
1055
+ }
1056
+ }), Ma = /* @__PURE__ */ ae(La, [["__scopeId", "data-v-d4feb35e"]]), Ba = /* @__PURE__ */ ee({
1057
+ name: "LFormSectionPage",
1058
+ __name: "form-section-page",
1059
+ setup(e) {
1060
+ return (t, n) => (f(), B(Ma, xe({ variant: "section" }, t.$attrs), He({ _: 2 }, [
1061
+ oe(t.$slots, (o, a) => ({
1062
+ name: a,
1063
+ fn: C((l) => [
1064
+ z(t.$slots, a, Pt(Nt(l || {})), void 0, !0)
1065
+ ])
1066
+ }))
1067
+ ]), 1040));
1068
+ }
1069
+ }), Ya = /* @__PURE__ */ ae(Ba, [["__scopeId", "data-v-5bec1cd0"]]), er = he(Ya), Va = /* @__PURE__ */ ee({
1070
+ name: "LFormSubmitPageCard",
1071
+ __name: "form-submit-page-card",
1072
+ props: {
1073
+ title: { default: "" },
1074
+ cardClass: { default: "mb-4" }
1075
+ },
1076
+ setup(e) {
1077
+ return (t, n) => (f(), B(v(yn), {
1078
+ title: e.title,
1079
+ class: Z(["l-card", e.cardClass])
1080
+ }, {
1081
+ default: C(() => [
1082
+ z(t.$slots, "default", {}, void 0, !0)
1083
+ ]),
1084
+ _: 3
1085
+ }, 8, ["title", "class"]));
1086
+ }
1087
+ }), tr = /* @__PURE__ */ ae(Va, [["__scopeId", "data-v-caf69e1c"]]), Ua = { class: "l-info-layout" }, za = ["id"], Ha = { class: "title-top" }, ja = {
1088
+ key: 0,
1089
+ class: "text"
1090
+ }, Ka = {
1091
+ key: 1,
1092
+ class: "text"
1093
+ }, Xa = {
1094
+ key: 0,
1095
+ class: "info"
1096
+ }, Wa = { class: "footer" }, Ga = {
1097
+ key: 0,
1098
+ class: "menu"
1099
+ }, qa = /* @__PURE__ */ ee({
1100
+ name: "LInfoLayout",
1101
+ __name: "info-layout",
1102
+ props: {
1103
+ items: {},
1104
+ showMenu: { type: Boolean, default: !0 }
1105
+ },
1106
+ emits: ["update:items"],
1107
+ setup(e, { emit: t }) {
1108
+ const n = e, o = t, a = L(n.items[0].value), l = tt(n, "items", o), r = L(null);
1109
+ let i = !1, s;
1110
+ function u() {
1111
+ var w;
1112
+ i = !0, (w = document.getElementById(`lINfo${a.value}`)) == null || w.scrollIntoView({ behavior: "smooth" }), s && window.clearTimeout(s), s = window.setTimeout(() => {
1113
+ i = !1;
1114
+ }, 400);
1115
+ }
1116
+ function p(w, S) {
1117
+ let $ = 0, g = w;
1118
+ for (; g && g !== S; )
1119
+ $ += g.offsetTop, g = g.offsetParent;
1120
+ return $;
1121
+ }
1122
+ function d() {
1123
+ if (i)
1124
+ return;
1125
+ const w = r.value;
1126
+ if (!w)
1127
+ return;
1128
+ const S = w.scrollTop, $ = l.value.filter((P) => !P.hide);
1129
+ let g = $[0];
1130
+ w.scrollTop + w.clientHeight >= w.scrollHeight - 10 ? g = $[$.length - 1] : $.forEach((P) => {
1131
+ const c = document.getElementById(`lINfo${P.value}`);
1132
+ if (!c)
1133
+ return;
1134
+ p(c, w) - 100 <= S && (g = P);
1135
+ }), g && g.value !== a.value && (a.value = g.value);
1136
+ }
1137
+ function E() {
1138
+ d();
1139
+ }
1140
+ return nt(() => {
1141
+ var w;
1142
+ (w = r.value) == null || w.addEventListener("scroll", E, { passive: !0 });
1143
+ }), qn(() => {
1144
+ var w;
1145
+ (w = r.value) == null || w.removeEventListener("scroll", E);
1146
+ }), (w, S) => (f(), y("div", Ua, [
1147
+ I("div", {
1148
+ ref_key: "contentRef",
1149
+ ref: r,
1150
+ class: "content"
1151
+ }, [
1152
+ (f(!0), y(X, null, oe(v(l).filter(($) => !$.hide), ($, g) => (f(), y("div", {
1153
+ id: `lINfo${$.value}`,
1154
+ key: g,
1155
+ class: "item"
1156
+ }, [
1157
+ I("div", Ha, [
1158
+ w.$slots[`title-${$.value}`] ? (f(), y("div", ja, [
1159
+ z(w.$slots, `title-${$.value}`, {}, void 0, !0)
1160
+ ])) : (f(), y("div", Ka, Y($.label), 1))
1161
+ ]),
1162
+ $.show ? (f(), y("div", Xa, [
1163
+ z(w.$slots, $.value, {}, void 0, !0)
1164
+ ])) : R("", !0)
1165
+ ], 8, za))), 128)),
1166
+ I("div", Wa, [
1167
+ z(w.$slots, "footer", {}, void 0, !0)
1168
+ ])
1169
+ ], 512),
1170
+ e.showMenu ? (f(), y("div", Ga, [
1171
+ N(v(bn), {
1172
+ "active-key": a.value,
1173
+ "onUpdate:activeKey": S[0] || (S[0] = ($) => a.value = $),
1174
+ "tab-position": "right",
1175
+ style: { height: "200px" },
1176
+ onTabChange: u
1177
+ }, {
1178
+ default: C(() => [
1179
+ (f(!0), y(X, null, oe(e.items.filter(($) => !$.hide), ($, g) => (f(), B(v(_n), {
1180
+ key: g,
1181
+ label: $.label,
1182
+ name: $.value
1183
+ }, null, 8, ["label", "name"]))), 128))
1184
+ ]),
1185
+ _: 1
1186
+ }, 8, ["active-key"])
1187
+ ])) : R("", !0)
1188
+ ]));
1189
+ }
1190
+ }), Ja = /* @__PURE__ */ ae(qa, [["__scopeId", "data-v-073ecdc0"]]), nr = he(Ja);
1191
+ function Qt(e, t) {
1192
+ var r, i;
1193
+ const o = `; ${e}`.split(`; ${t}=`);
1194
+ if (o.length === 2) return (i = (r = o.pop()) == null ? void 0 : r.split(";").shift()) == null ? void 0 : i.trim();
1195
+ const a = t.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), l = e.match(new RegExp(`(?:^|;\\s*)${a}=([^;]*)`));
1196
+ return l ? l[1].trim() : void 0;
1197
+ }
1198
+ function Qa(e, t = ".le365.com.cn") {
1199
+ const n = Qt(document.cookie, e);
1200
+ if (n != null) return n;
1201
+ const o = `${e}@${t.replace(/^\./, "")}`;
1202
+ return Qt(document.cookie, o);
1203
+ }
1204
+ const Tn = "Admin-Token";
1205
+ function Za(e = Tn) {
1206
+ return {
1207
+ Authorization: `Bearer ${el(e)}`,
1208
+ clientid: void 0
1209
+ };
1210
+ }
1211
+ function el(e = Tn) {
1212
+ return Qa(e);
1213
+ }
1214
+ function tl(e, t) {
1215
+ if (e == null)
1216
+ return "--";
1217
+ const n = Number(e);
1218
+ return Number.isNaN(n) ? "--" : n.toFixed(2).replace(/\B(?=(\d{3})+(?!\d))/g, ",");
1219
+ }
1220
+ const nl = {
1221
+ // Options.jsx
1222
+ items_per_page: "条/页",
1223
+ jump_to: "跳至",
1224
+ jump_to_confirm: "确定",
1225
+ page: "页",
1226
+ // Pagination.jsx
1227
+ prev_page: "上一页",
1228
+ next_page: "下一页",
1229
+ prev_5: "向前 5 页",
1230
+ next_5: "向后 5 页",
1231
+ prev_3: "向前 3 页",
1232
+ next_3: "向后 3 页"
1233
+ };
1234
+ function ht() {
1235
+ return ht = Object.assign ? Object.assign.bind() : function(e) {
1236
+ for (var t = 1; t < arguments.length; t++) {
1237
+ var n = arguments[t];
1238
+ for (var o in n) ({}).hasOwnProperty.call(n, o) && (e[o] = n[o]);
1239
+ }
1240
+ return e;
1241
+ }, ht.apply(null, arguments);
1242
+ }
1243
+ const ol = {
1244
+ locale: "zh_CN",
1245
+ today: "今天",
1246
+ now: "此刻",
1247
+ backToToday: "返回今天",
1248
+ ok: "确定",
1249
+ timeSelect: "选择时间",
1250
+ dateSelect: "选择日期",
1251
+ weekSelect: "选择周",
1252
+ clear: "清除",
1253
+ month: "月",
1254
+ year: "年",
1255
+ previousMonth: "上个月 (翻页上键)",
1256
+ nextMonth: "下个月 (翻页下键)",
1257
+ monthSelect: "选择月份",
1258
+ yearSelect: "选择年份",
1259
+ decadeSelect: "选择年代",
1260
+ yearFormat: "YYYY年",
1261
+ dayFormat: "D日",
1262
+ dateFormat: "YYYY年M月D日",
1263
+ dateTimeFormat: "YYYY年M月D日 HH时mm分ss秒",
1264
+ previousYear: "上一年 (Control键加左方向键)",
1265
+ nextYear: "下一年 (Control键加右方向键)",
1266
+ previousDecade: "上一年代",
1267
+ nextDecade: "下一年代",
1268
+ previousCentury: "上一世纪",
1269
+ nextCentury: "下一世纪"
1270
+ }, En = {
1271
+ placeholder: "请选择时间",
1272
+ rangePlaceholder: ["开始时间", "结束时间"]
1273
+ }, Ft = {
1274
+ lang: ht({
1275
+ placeholder: "请选择日期",
1276
+ yearPlaceholder: "请选择年份",
1277
+ quarterPlaceholder: "请选择季度",
1278
+ monthPlaceholder: "请选择月份",
1279
+ weekPlaceholder: "请选择周",
1280
+ rangePlaceholder: ["开始日期", "结束日期"],
1281
+ rangeYearPlaceholder: ["开始年份", "结束年份"],
1282
+ rangeMonthPlaceholder: ["开始月份", "结束月份"],
1283
+ rangeQuarterPlaceholder: ["开始季度", "结束季度"],
1284
+ rangeWeekPlaceholder: ["开始周", "结束周"]
1285
+ }, ol),
1286
+ timePickerLocale: ht({}, En)
1287
+ };
1288
+ Ft.lang.ok = "确定";
1289
+ const me = "${label}不是一个有效的${type}", al = {
1290
+ locale: "zh-cn",
1291
+ Pagination: nl,
1292
+ DatePicker: Ft,
1293
+ TimePicker: En,
1294
+ Calendar: Ft,
1295
+ // locales for all components
1296
+ global: {
1297
+ placeholder: "请选择"
1298
+ },
1299
+ Table: {
1300
+ filterTitle: "筛选",
1301
+ filterConfirm: "确定",
1302
+ filterReset: "重置",
1303
+ filterEmptyText: "无筛选项",
1304
+ filterCheckall: "全选",
1305
+ filterSearchPlaceholder: "在筛选项中搜索",
1306
+ selectAll: "全选当页",
1307
+ selectInvert: "反选当页",
1308
+ selectNone: "清空所有",
1309
+ selectionAll: "全选所有",
1310
+ sortTitle: "排序",
1311
+ expand: "展开行",
1312
+ collapse: "关闭行",
1313
+ triggerDesc: "点击降序",
1314
+ triggerAsc: "点击升序",
1315
+ cancelSort: "取消排序"
1316
+ },
1317
+ Tour: {
1318
+ Next: "下一步",
1319
+ Previous: "上一步",
1320
+ Finish: "结束导览"
1321
+ },
1322
+ Modal: {
1323
+ okText: "确定",
1324
+ cancelText: "取消",
1325
+ justOkText: "知道了"
1326
+ },
1327
+ Popconfirm: {
1328
+ cancelText: "取消",
1329
+ okText: "确定"
1330
+ },
1331
+ Transfer: {
1332
+ searchPlaceholder: "请输入搜索内容",
1333
+ itemUnit: "项",
1334
+ itemsUnit: "项",
1335
+ remove: "删除",
1336
+ selectCurrent: "全选当页",
1337
+ removeCurrent: "删除当页",
1338
+ selectAll: "全选所有",
1339
+ removeAll: "删除全部",
1340
+ selectInvert: "反选当页"
1341
+ },
1342
+ Upload: {
1343
+ uploading: "文件上传中",
1344
+ removeFile: "删除文件",
1345
+ uploadError: "上传错误",
1346
+ previewFile: "预览文件",
1347
+ downloadFile: "下载文件"
1348
+ },
1349
+ Empty: {
1350
+ description: "暂无数据"
1351
+ },
1352
+ Icon: {
1353
+ icon: "图标"
1354
+ },
1355
+ Text: {
1356
+ edit: "编辑",
1357
+ copy: "复制",
1358
+ copied: "复制成功",
1359
+ expand: "展开"
1360
+ },
1361
+ PageHeader: {
1362
+ back: "返回"
1363
+ },
1364
+ Form: {
1365
+ optional: "(可选)",
1366
+ defaultValidateMessages: {
1367
+ default: "字段验证错误${label}",
1368
+ required: "请输入${label}",
1369
+ enum: "${label}必须是其中一个[${enum}]",
1370
+ whitespace: "${label}不能为空字符",
1371
+ date: {
1372
+ format: "${label}日期格式无效",
1373
+ parse: "${label}不能转换为日期",
1374
+ invalid: "${label}是一个无效日期"
1375
+ },
1376
+ types: {
1377
+ string: me,
1378
+ method: me,
1379
+ array: me,
1380
+ object: me,
1381
+ number: me,
1382
+ date: me,
1383
+ boolean: me,
1384
+ integer: me,
1385
+ float: me,
1386
+ regexp: me,
1387
+ email: me,
1388
+ url: me,
1389
+ hex: me
1390
+ },
1391
+ string: {
1392
+ len: "${label}须为${len}个字符",
1393
+ min: "${label}最少${min}个字符",
1394
+ max: "${label}最多${max}个字符",
1395
+ range: "${label}须在${min}-${max}字符之间"
1396
+ },
1397
+ number: {
1398
+ len: "${label}必须等于${len}",
1399
+ min: "${label}最小值为${min}",
1400
+ max: "${label}最大值为${max}",
1401
+ range: "${label}须在${min}-${max}之间"
1402
+ },
1403
+ array: {
1404
+ len: "须为${len}个${label}",
1405
+ min: "最少${min}个${label}",
1406
+ max: "最多${max}个${label}",
1407
+ range: "${label}数量须在${min}-${max}之间"
1408
+ },
1409
+ pattern: {
1410
+ mismatch: "${label}与模式不匹配${pattern}"
1411
+ }
1412
+ }
1413
+ },
1414
+ Image: {
1415
+ preview: "预览"
1416
+ },
1417
+ QRCode: {
1418
+ expired: "二维码已过期",
1419
+ refresh: "点击刷新",
1420
+ scanned: "已扫描"
1421
+ }
1422
+ };
1423
+ /**!
1424
+ * Sortable 1.15.7
1425
+ * @author RubaXa <trash@rubaxa.org>
1426
+ * @author owenm <owen23355@gmail.com>
1427
+ * @license MIT
1428
+ */
1429
+ function ll(e, t, n) {
1430
+ return (t = ul(t)) in e ? Object.defineProperty(e, t, {
1431
+ value: n,
1432
+ enumerable: !0,
1433
+ configurable: !0,
1434
+ writable: !0
1435
+ }) : e[t] = n, e;
1436
+ }
1437
+ function Ce() {
1438
+ return Ce = Object.assign ? Object.assign.bind() : function(e) {
1439
+ for (var t = 1; t < arguments.length; t++) {
1440
+ var n = arguments[t];
1441
+ for (var o in n) ({}).hasOwnProperty.call(n, o) && (e[o] = n[o]);
1442
+ }
1443
+ return e;
1444
+ }, Ce.apply(null, arguments);
1445
+ }
1446
+ function Zt(e, t) {
1447
+ var n = Object.keys(e);
1448
+ if (Object.getOwnPropertySymbols) {
1449
+ var o = Object.getOwnPropertySymbols(e);
1450
+ t && (o = o.filter(function(a) {
1451
+ return Object.getOwnPropertyDescriptor(e, a).enumerable;
1452
+ })), n.push.apply(n, o);
1453
+ }
1454
+ return n;
1455
+ }
1456
+ function Ee(e) {
1457
+ for (var t = 1; t < arguments.length; t++) {
1458
+ var n = arguments[t] != null ? arguments[t] : {};
1459
+ t % 2 ? Zt(Object(n), !0).forEach(function(o) {
1460
+ ll(e, o, n[o]);
1461
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : Zt(Object(n)).forEach(function(o) {
1462
+ Object.defineProperty(e, o, Object.getOwnPropertyDescriptor(n, o));
1463
+ });
1464
+ }
1465
+ return e;
1466
+ }
1467
+ function il(e, t) {
1468
+ if (e == null) return {};
1469
+ var n, o, a = rl(e, t);
1470
+ if (Object.getOwnPropertySymbols) {
1471
+ var l = Object.getOwnPropertySymbols(e);
1472
+ for (o = 0; o < l.length; o++) n = l[o], t.indexOf(n) === -1 && {}.propertyIsEnumerable.call(e, n) && (a[n] = e[n]);
1473
+ }
1474
+ return a;
1475
+ }
1476
+ function rl(e, t) {
1477
+ if (e == null) return {};
1478
+ var n = {};
1479
+ for (var o in e) if ({}.hasOwnProperty.call(e, o)) {
1480
+ if (t.indexOf(o) !== -1) continue;
1481
+ n[o] = e[o];
1482
+ }
1483
+ return n;
1484
+ }
1485
+ function sl(e, t) {
1486
+ if (typeof e != "object" || !e) return e;
1487
+ var n = e[Symbol.toPrimitive];
1488
+ if (n !== void 0) {
1489
+ var o = n.call(e, t);
1490
+ if (typeof o != "object") return o;
1491
+ throw new TypeError("@@toPrimitive must return a primitive value.");
1492
+ }
1493
+ return (t === "string" ? String : Number)(e);
1494
+ }
1495
+ function ul(e) {
1496
+ var t = sl(e, "string");
1497
+ return typeof t == "symbol" ? t : t + "";
1498
+ }
1499
+ function Rt(e) {
1500
+ "@babel/helpers - typeof";
1501
+ return Rt = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
1502
+ return typeof t;
1503
+ } : function(t) {
1504
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
1505
+ }, Rt(e);
1506
+ }
1507
+ var dl = "1.15.7";
1508
+ function $e(e) {
1509
+ if (typeof window < "u" && window.navigator)
1510
+ return !!/* @__PURE__ */ navigator.userAgent.match(e);
1511
+ }
1512
+ var De = $e(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i), ot = $e(/Edge/i), en = $e(/firefox/i), qe = $e(/safari/i) && !$e(/chrome/i) && !$e(/android/i), zt = $e(/iP(ad|od|hone)/i), xn = $e(/chrome/i) && $e(/android/i), $n = {
1513
+ capture: !1,
1514
+ passive: !1
1515
+ };
1516
+ function U(e, t, n) {
1517
+ e.addEventListener(t, n, !De && $n);
1518
+ }
1519
+ function V(e, t, n) {
1520
+ e.removeEventListener(t, n, !De && $n);
1521
+ }
1522
+ function mt(e, t) {
1523
+ if (t) {
1524
+ if (t[0] === ">" && (t = t.substring(1)), e)
1525
+ try {
1526
+ if (e.matches)
1527
+ return e.matches(t);
1528
+ if (e.msMatchesSelector)
1529
+ return e.msMatchesSelector(t);
1530
+ if (e.webkitMatchesSelector)
1531
+ return e.webkitMatchesSelector(t);
1532
+ } catch {
1533
+ return !1;
1534
+ }
1535
+ return !1;
1536
+ }
1537
+ }
1538
+ function Cn(e) {
1539
+ return e.host && e !== document && e.host.nodeType && e.host !== e ? e.host : e.parentNode;
1540
+ }
1541
+ function ke(e, t, n, o) {
1542
+ if (e) {
1543
+ n = n || document;
1544
+ do {
1545
+ if (t != null && (t[0] === ">" ? e.parentNode === n && mt(e, t) : mt(e, t)) || o && e === n)
1546
+ return e;
1547
+ if (e === n) break;
1548
+ } while (e = Cn(e));
1549
+ }
1550
+ return null;
1551
+ }
1552
+ var tn = /\s+/g;
1553
+ function ge(e, t, n) {
1554
+ if (e && t)
1555
+ if (e.classList)
1556
+ e.classList[n ? "add" : "remove"](t);
1557
+ else {
1558
+ var o = (" " + e.className + " ").replace(tn, " ").replace(" " + t + " ", " ");
1559
+ e.className = (o + (n ? " " + t : "")).replace(tn, " ");
1560
+ }
1561
+ }
1562
+ function O(e, t, n) {
1563
+ var o = e && e.style;
1564
+ if (o) {
1565
+ if (n === void 0)
1566
+ return document.defaultView && document.defaultView.getComputedStyle ? n = document.defaultView.getComputedStyle(e, "") : e.currentStyle && (n = e.currentStyle), t === void 0 ? n : n[t];
1567
+ !(t in o) && t.indexOf("webkit") === -1 && (t = "-webkit-" + t), o[t] = n + (typeof n == "string" ? "" : "px");
1568
+ }
1569
+ }
1570
+ function ze(e, t) {
1571
+ var n = "";
1572
+ if (typeof e == "string")
1573
+ n = e;
1574
+ else
1575
+ do {
1576
+ var o = O(e, "transform");
1577
+ o && o !== "none" && (n = o + " " + n);
1578
+ } while (!t && (e = e.parentNode));
1579
+ var a = window.DOMMatrix || window.WebKitCSSMatrix || window.CSSMatrix || window.MSCSSMatrix;
1580
+ return a && new a(n);
1581
+ }
1582
+ function Dn(e, t, n) {
1583
+ if (e) {
1584
+ var o = e.getElementsByTagName(t), a = 0, l = o.length;
1585
+ if (n)
1586
+ for (; a < l; a++)
1587
+ n(o[a], a);
1588
+ return o;
1589
+ }
1590
+ return [];
1591
+ }
1592
+ function Te() {
1593
+ var e = document.scrollingElement;
1594
+ return e || document.documentElement;
1595
+ }
1596
+ function ne(e, t, n, o, a) {
1597
+ if (!(!e.getBoundingClientRect && e !== window)) {
1598
+ var l, r, i, s, u, p, d;
1599
+ if (e !== window && e.parentNode && e !== Te() ? (l = e.getBoundingClientRect(), r = l.top, i = l.left, s = l.bottom, u = l.right, p = l.height, d = l.width) : (r = 0, i = 0, s = window.innerHeight, u = window.innerWidth, p = window.innerHeight, d = window.innerWidth), (t || n) && e !== window && (a = a || e.parentNode, !De))
1600
+ do
1601
+ if (a && a.getBoundingClientRect && (O(a, "transform") !== "none" || n && O(a, "position") !== "static")) {
1602
+ var E = a.getBoundingClientRect();
1603
+ r -= E.top + parseInt(O(a, "border-top-width")), i -= E.left + parseInt(O(a, "border-left-width")), s = r + l.height, u = i + l.width;
1604
+ break;
1605
+ }
1606
+ while (a = a.parentNode);
1607
+ if (o && e !== window) {
1608
+ var w = ze(a || e), S = w && w.a, $ = w && w.d;
1609
+ w && (r /= $, i /= S, d /= S, p /= $, s = r + p, u = i + d);
1610
+ }
1611
+ return {
1612
+ top: r,
1613
+ left: i,
1614
+ bottom: s,
1615
+ right: u,
1616
+ width: d,
1617
+ height: p
1618
+ };
1619
+ }
1620
+ }
1621
+ function nn(e, t, n) {
1622
+ for (var o = Ae(e, !0), a = ne(e)[t]; o; ) {
1623
+ var l = ne(o)[n], r = void 0;
1624
+ if (r = a >= l, !r) return o;
1625
+ if (o === Te()) break;
1626
+ o = Ae(o, !1);
1627
+ }
1628
+ return !1;
1629
+ }
1630
+ function Ke(e, t, n, o) {
1631
+ for (var a = 0, l = 0, r = e.children; l < r.length; ) {
1632
+ if (r[l].style.display !== "none" && r[l] !== F.ghost && (o || r[l] !== F.dragged) && ke(r[l], n.draggable, e, !1)) {
1633
+ if (a === t)
1634
+ return r[l];
1635
+ a++;
1636
+ }
1637
+ l++;
1638
+ }
1639
+ return null;
1640
+ }
1641
+ function Ht(e, t) {
1642
+ for (var n = e.lastElementChild; n && (n === F.ghost || O(n, "display") === "none" || t && !mt(n, t)); )
1643
+ n = n.previousElementSibling;
1644
+ return n || null;
1645
+ }
1646
+ function ye(e, t) {
1647
+ var n = 0;
1648
+ if (!e || !e.parentNode)
1649
+ return -1;
1650
+ for (; e = e.previousElementSibling; )
1651
+ e.nodeName.toUpperCase() !== "TEMPLATE" && e !== F.clone && (!t || mt(e, t)) && n++;
1652
+ return n;
1653
+ }
1654
+ function on(e) {
1655
+ var t = 0, n = 0, o = Te();
1656
+ if (e)
1657
+ do {
1658
+ var a = ze(e), l = a.a, r = a.d;
1659
+ t += e.scrollLeft * l, n += e.scrollTop * r;
1660
+ } while (e !== o && (e = e.parentNode));
1661
+ return [t, n];
1662
+ }
1663
+ function cl(e, t) {
1664
+ for (var n in e)
1665
+ if (e.hasOwnProperty(n)) {
1666
+ for (var o in t)
1667
+ if (t.hasOwnProperty(o) && t[o] === e[n][o]) return Number(n);
1668
+ }
1669
+ return -1;
1670
+ }
1671
+ function Ae(e, t) {
1672
+ if (!e || !e.getBoundingClientRect) return Te();
1673
+ var n = e, o = !1;
1674
+ do
1675
+ if (n.clientWidth < n.scrollWidth || n.clientHeight < n.scrollHeight) {
1676
+ var a = O(n);
1677
+ if (n.clientWidth < n.scrollWidth && (a.overflowX == "auto" || a.overflowX == "scroll") || n.clientHeight < n.scrollHeight && (a.overflowY == "auto" || a.overflowY == "scroll")) {
1678
+ if (!n.getBoundingClientRect || n === document.body) return Te();
1679
+ if (o || t) return n;
1680
+ o = !0;
1681
+ }
1682
+ }
1683
+ while (n = n.parentNode);
1684
+ return Te();
1685
+ }
1686
+ function fl(e, t) {
1687
+ if (e && t)
1688
+ for (var n in t)
1689
+ t.hasOwnProperty(n) && (e[n] = t[n]);
1690
+ return e;
1691
+ }
1692
+ function kt(e, t) {
1693
+ return Math.round(e.top) === Math.round(t.top) && Math.round(e.left) === Math.round(t.left) && Math.round(e.height) === Math.round(t.height) && Math.round(e.width) === Math.round(t.width);
1694
+ }
1695
+ var Je;
1696
+ function In(e, t) {
1697
+ return function() {
1698
+ if (!Je) {
1699
+ var n = arguments, o = this;
1700
+ n.length === 1 ? e.call(o, n[0]) : e.apply(o, n), Je = setTimeout(function() {
1701
+ Je = void 0;
1702
+ }, t);
1703
+ }
1704
+ };
1705
+ }
1706
+ function pl() {
1707
+ clearTimeout(Je), Je = void 0;
1708
+ }
1709
+ function Pn(e, t, n) {
1710
+ e.scrollLeft += t, e.scrollTop += n;
1711
+ }
1712
+ function Nn(e) {
1713
+ var t = window.Polymer, n = window.jQuery || window.Zepto;
1714
+ return t && t.dom ? t.dom(e).cloneNode(!0) : n ? n(e).clone(!0)[0] : e.cloneNode(!0);
1715
+ }
1716
+ function An(e, t, n) {
1717
+ var o = {};
1718
+ return Array.from(e.children).forEach(function(a) {
1719
+ var l, r, i, s;
1720
+ if (!(!ke(a, t.draggable, e, !1) || a.animated || a === n)) {
1721
+ var u = ne(a);
1722
+ o.left = Math.min((l = o.left) !== null && l !== void 0 ? l : 1 / 0, u.left), o.top = Math.min((r = o.top) !== null && r !== void 0 ? r : 1 / 0, u.top), o.right = Math.max((i = o.right) !== null && i !== void 0 ? i : -1 / 0, u.right), o.bottom = Math.max((s = o.bottom) !== null && s !== void 0 ? s : -1 / 0, u.bottom);
1723
+ }
1724
+ }), o.width = o.right - o.left, o.height = o.bottom - o.top, o.x = o.left, o.y = o.top, o;
1725
+ }
1726
+ var fe = "Sortable" + (/* @__PURE__ */ new Date()).getTime();
1727
+ function hl() {
1728
+ var e = [], t;
1729
+ return {
1730
+ captureAnimationState: function() {
1731
+ if (e = [], !!this.options.animation) {
1732
+ var o = [].slice.call(this.el.children);
1733
+ o.forEach(function(a) {
1734
+ if (!(O(a, "display") === "none" || a === F.ghost)) {
1735
+ e.push({
1736
+ target: a,
1737
+ rect: ne(a)
1738
+ });
1739
+ var l = Ee({}, e[e.length - 1].rect);
1740
+ if (a.thisAnimationDuration) {
1741
+ var r = ze(a, !0);
1742
+ r && (l.top -= r.f, l.left -= r.e);
1743
+ }
1744
+ a.fromRect = l;
1745
+ }
1746
+ });
1747
+ }
1748
+ },
1749
+ addAnimationState: function(o) {
1750
+ e.push(o);
1751
+ },
1752
+ removeAnimationState: function(o) {
1753
+ e.splice(cl(e, {
1754
+ target: o
1755
+ }), 1);
1756
+ },
1757
+ animateAll: function(o) {
1758
+ var a = this;
1759
+ if (!this.options.animation) {
1760
+ clearTimeout(t), typeof o == "function" && o();
1761
+ return;
1762
+ }
1763
+ var l = !1, r = 0;
1764
+ e.forEach(function(i) {
1765
+ var s = 0, u = i.target, p = u.fromRect, d = ne(u), E = u.prevFromRect, w = u.prevToRect, S = i.rect, $ = ze(u, !0);
1766
+ $ && (d.top -= $.f, d.left -= $.e), u.toRect = d, u.thisAnimationDuration && kt(E, d) && !kt(p, d) && // Make sure animatingRect is on line between toRect & fromRect
1767
+ (S.top - d.top) / (S.left - d.left) === (p.top - d.top) / (p.left - d.left) && (s = gl(S, E, w, a.options)), kt(d, p) || (u.prevFromRect = p, u.prevToRect = d, s || (s = a.options.animation), a.animate(u, S, d, s)), s && (l = !0, r = Math.max(r, s), clearTimeout(u.animationResetTimer), u.animationResetTimer = setTimeout(function() {
1768
+ u.animationTime = 0, u.prevFromRect = null, u.fromRect = null, u.prevToRect = null, u.thisAnimationDuration = null;
1769
+ }, s), u.thisAnimationDuration = s);
1770
+ }), clearTimeout(t), l ? t = setTimeout(function() {
1771
+ typeof o == "function" && o();
1772
+ }, r) : typeof o == "function" && o(), e = [];
1773
+ },
1774
+ animate: function(o, a, l, r) {
1775
+ if (r) {
1776
+ O(o, "transition", ""), O(o, "transform", "");
1777
+ var i = ze(this.el), s = i && i.a, u = i && i.d, p = (a.left - l.left) / (s || 1), d = (a.top - l.top) / (u || 1);
1778
+ o.animatingX = !!p, o.animatingY = !!d, O(o, "transform", "translate3d(" + p + "px," + d + "px,0)"), this.forRepaintDummy = ml(o), O(o, "transition", "transform " + r + "ms" + (this.options.easing ? " " + this.options.easing : "")), O(o, "transform", "translate3d(0,0,0)"), typeof o.animated == "number" && clearTimeout(o.animated), o.animated = setTimeout(function() {
1779
+ O(o, "transition", ""), O(o, "transform", ""), o.animated = !1, o.animatingX = !1, o.animatingY = !1;
1780
+ }, r);
1781
+ }
1782
+ }
1783
+ };
1784
+ }
1785
+ function ml(e) {
1786
+ return e.offsetWidth;
1787
+ }
1788
+ function gl(e, t, n, o) {
1789
+ return Math.sqrt(Math.pow(t.top - e.top, 2) + Math.pow(t.left - e.left, 2)) / Math.sqrt(Math.pow(t.top - n.top, 2) + Math.pow(t.left - n.left, 2)) * o.animation;
1790
+ }
1791
+ var Be = [], St = {
1792
+ initializeByDefault: !0
1793
+ }, at = {
1794
+ mount: function(t) {
1795
+ for (var n in St)
1796
+ St.hasOwnProperty(n) && !(n in t) && (t[n] = St[n]);
1797
+ Be.forEach(function(o) {
1798
+ if (o.pluginName === t.pluginName)
1799
+ throw "Sortable: Cannot mount plugin ".concat(t.pluginName, " more than once");
1800
+ }), Be.push(t);
1801
+ },
1802
+ pluginEvent: function(t, n, o) {
1803
+ var a = this;
1804
+ this.eventCanceled = !1, o.cancel = function() {
1805
+ a.eventCanceled = !0;
1806
+ };
1807
+ var l = t + "Global";
1808
+ Be.forEach(function(r) {
1809
+ n[r.pluginName] && (n[r.pluginName][l] && n[r.pluginName][l](Ee({
1810
+ sortable: n
1811
+ }, o)), n.options[r.pluginName] && n[r.pluginName][t] && n[r.pluginName][t](Ee({
1812
+ sortable: n
1813
+ }, o)));
1814
+ });
1815
+ },
1816
+ initializePlugins: function(t, n, o, a) {
1817
+ Be.forEach(function(i) {
1818
+ var s = i.pluginName;
1819
+ if (!(!t.options[s] && !i.initializeByDefault)) {
1820
+ var u = new i(t, n, t.options);
1821
+ u.sortable = t, u.options = t.options, t[s] = u, Ce(o, u.defaults);
1822
+ }
1823
+ });
1824
+ for (var l in t.options)
1825
+ if (t.options.hasOwnProperty(l)) {
1826
+ var r = this.modifyOption(t, l, t.options[l]);
1827
+ typeof r < "u" && (t.options[l] = r);
1828
+ }
1829
+ },
1830
+ getEventProperties: function(t, n) {
1831
+ var o = {};
1832
+ return Be.forEach(function(a) {
1833
+ typeof a.eventProperties == "function" && Ce(o, a.eventProperties.call(n[a.pluginName], t));
1834
+ }), o;
1835
+ },
1836
+ modifyOption: function(t, n, o) {
1837
+ var a;
1838
+ return Be.forEach(function(l) {
1839
+ t[l.pluginName] && l.optionListeners && typeof l.optionListeners[n] == "function" && (a = l.optionListeners[n].call(t[l.pluginName], o));
1840
+ }), a;
1841
+ }
1842
+ };
1843
+ function vl(e) {
1844
+ var t = e.sortable, n = e.rootEl, o = e.name, a = e.targetEl, l = e.cloneEl, r = e.toEl, i = e.fromEl, s = e.oldIndex, u = e.newIndex, p = e.oldDraggableIndex, d = e.newDraggableIndex, E = e.originalEvent, w = e.putSortable, S = e.extraEventProperties;
1845
+ if (t = t || n && n[fe], !!t) {
1846
+ var $, g = t.options, b = "on" + o.charAt(0).toUpperCase() + o.substr(1);
1847
+ window.CustomEvent && !De && !ot ? $ = new CustomEvent(o, {
1848
+ bubbles: !0,
1849
+ cancelable: !0
1850
+ }) : ($ = document.createEvent("Event"), $.initEvent(o, !0, !0)), $.to = r || n, $.from = i || n, $.item = a || n, $.clone = l, $.oldIndex = s, $.newIndex = u, $.oldDraggableIndex = p, $.newDraggableIndex = d, $.originalEvent = E, $.pullMode = w ? w.lastPutMode : void 0;
1851
+ var _ = Ee(Ee({}, S), at.getEventProperties(o, t));
1852
+ for (var P in _)
1853
+ $[P] = _[P];
1854
+ n && n.dispatchEvent($), g[b] && g[b].call(t, $);
1855
+ }
1856
+ }
1857
+ var yl = ["evt"], ce = function(t, n) {
1858
+ var o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, a = o.evt, l = il(o, yl);
1859
+ at.pluginEvent.bind(F)(t, n, Ee({
1860
+ dragEl: x,
1861
+ parentEl: Q,
1862
+ ghostEl: M,
1863
+ rootEl: G,
1864
+ nextEl: Me,
1865
+ lastDownEl: dt,
1866
+ cloneEl: q,
1867
+ cloneHidden: Ne,
1868
+ dragStarted: Xe,
1869
+ putSortable: le,
1870
+ activeSortable: F.active,
1871
+ originalEvent: a,
1872
+ oldIndex: Ue,
1873
+ oldDraggableIndex: Qe,
1874
+ newIndex: ve,
1875
+ newDraggableIndex: Pe,
1876
+ hideGhostForTarget: Ln,
1877
+ unhideGhostForTarget: Mn,
1878
+ cloneNowHidden: function() {
1879
+ Ne = !0;
1880
+ },
1881
+ cloneNowShown: function() {
1882
+ Ne = !1;
1883
+ },
1884
+ dispatchSortableEvent: function(i) {
1885
+ de({
1886
+ sortable: n,
1887
+ name: i,
1888
+ originalEvent: a
1889
+ });
1890
+ }
1891
+ }, l));
1892
+ };
1893
+ function de(e) {
1894
+ vl(Ee({
1895
+ putSortable: le,
1896
+ cloneEl: q,
1897
+ targetEl: x,
1898
+ rootEl: G,
1899
+ oldIndex: Ue,
1900
+ oldDraggableIndex: Qe,
1901
+ newIndex: ve,
1902
+ newDraggableIndex: Pe
1903
+ }, e));
1904
+ }
1905
+ var x, Q, M, G, Me, dt, q, Ne, Ue, ve, Qe, Pe, it, le, Ve = !1, gt = !1, vt = [], Re, we, Tt, Et, an, ln, Xe, Ye, Ze, et = !1, rt = !1, ct, se, xt = [], Lt = !1, yt = [], wt = typeof document < "u", st = zt, rn = ot || De ? "cssFloat" : "float", bl = wt && !xn && !zt && "draggable" in document.createElement("div"), On = function() {
1906
+ if (wt) {
1907
+ if (De)
1908
+ return !1;
1909
+ var e = document.createElement("x");
1910
+ return e.style.cssText = "pointer-events:auto", e.style.pointerEvents === "auto";
1911
+ }
1912
+ }(), Fn = function(t, n) {
1913
+ var o = O(t), a = parseInt(o.width) - parseInt(o.paddingLeft) - parseInt(o.paddingRight) - parseInt(o.borderLeftWidth) - parseInt(o.borderRightWidth), l = Ke(t, 0, n), r = Ke(t, 1, n), i = l && O(l), s = r && O(r), u = i && parseInt(i.marginLeft) + parseInt(i.marginRight) + ne(l).width, p = s && parseInt(s.marginLeft) + parseInt(s.marginRight) + ne(r).width;
1914
+ if (o.display === "flex")
1915
+ return o.flexDirection === "column" || o.flexDirection === "column-reverse" ? "vertical" : "horizontal";
1916
+ if (o.display === "grid")
1917
+ return o.gridTemplateColumns.split(" ").length <= 1 ? "vertical" : "horizontal";
1918
+ if (l && i.float && i.float !== "none") {
1919
+ var d = i.float === "left" ? "left" : "right";
1920
+ return r && (s.clear === "both" || s.clear === d) ? "vertical" : "horizontal";
1921
+ }
1922
+ return l && (i.display === "block" || i.display === "flex" || i.display === "table" || i.display === "grid" || u >= a && o[rn] === "none" || r && o[rn] === "none" && u + p > a) ? "vertical" : "horizontal";
1923
+ }, _l = function(t, n, o) {
1924
+ var a = o ? t.left : t.top, l = o ? t.right : t.bottom, r = o ? t.width : t.height, i = o ? n.left : n.top, s = o ? n.right : n.bottom, u = o ? n.width : n.height;
1925
+ return a === i || l === s || a + r / 2 === i + u / 2;
1926
+ }, wl = function(t, n) {
1927
+ var o;
1928
+ return vt.some(function(a) {
1929
+ var l = a[fe].options.emptyInsertThreshold;
1930
+ if (!(!l || Ht(a))) {
1931
+ var r = ne(a), i = t >= r.left - l && t <= r.right + l, s = n >= r.top - l && n <= r.bottom + l;
1932
+ if (i && s)
1933
+ return o = a;
1934
+ }
1935
+ }), o;
1936
+ }, Rn = function(t) {
1937
+ function n(l, r) {
1938
+ return function(i, s, u, p) {
1939
+ var d = i.options.group.name && s.options.group.name && i.options.group.name === s.options.group.name;
1940
+ if (l == null && (r || d))
1941
+ return !0;
1942
+ if (l == null || l === !1)
1943
+ return !1;
1944
+ if (r && l === "clone")
1945
+ return l;
1946
+ if (typeof l == "function")
1947
+ return n(l(i, s, u, p), r)(i, s, u, p);
1948
+ var E = (r ? i : s).options.group.name;
1949
+ return l === !0 || typeof l == "string" && l === E || l.join && l.indexOf(E) > -1;
1950
+ };
1951
+ }
1952
+ var o = {}, a = t.group;
1953
+ (!a || Rt(a) != "object") && (a = {
1954
+ name: a
1955
+ }), o.name = a.name, o.checkPull = n(a.pull, !0), o.checkPut = n(a.put), o.revertClone = a.revertClone, t.group = o;
1956
+ }, Ln = function() {
1957
+ !On && M && O(M, "display", "none");
1958
+ }, Mn = function() {
1959
+ !On && M && O(M, "display", "");
1960
+ };
1961
+ wt && !xn && document.addEventListener("click", function(e) {
1962
+ if (gt)
1963
+ return e.preventDefault(), e.stopPropagation && e.stopPropagation(), e.stopImmediatePropagation && e.stopImmediatePropagation(), gt = !1, !1;
1964
+ }, !0);
1965
+ var Le = function(t) {
1966
+ if (x) {
1967
+ t = t.touches ? t.touches[0] : t;
1968
+ var n = wl(t.clientX, t.clientY);
1969
+ if (n) {
1970
+ var o = {};
1971
+ for (var a in t)
1972
+ t.hasOwnProperty(a) && (o[a] = t[a]);
1973
+ o.target = o.rootEl = n, o.preventDefault = void 0, o.stopPropagation = void 0, n[fe]._onDragOver(o);
1974
+ }
1975
+ }
1976
+ }, kl = function(t) {
1977
+ x && x.parentNode[fe]._isOutsideThisEl(t.target);
1978
+ };
1979
+ function F(e, t) {
1980
+ if (!(e && e.nodeType && e.nodeType === 1))
1981
+ throw "Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(e));
1982
+ this.el = e, this.options = t = Ce({}, t), e[fe] = this;
1983
+ var n = {
1984
+ group: null,
1985
+ sort: !0,
1986
+ disabled: !1,
1987
+ store: null,
1988
+ handle: null,
1989
+ draggable: /^[uo]l$/i.test(e.nodeName) ? ">li" : ">*",
1990
+ swapThreshold: 1,
1991
+ // percentage; 0 <= x <= 1
1992
+ invertSwap: !1,
1993
+ // invert always
1994
+ invertedSwapThreshold: null,
1995
+ // will be set to same as swapThreshold if default
1996
+ removeCloneOnHide: !0,
1997
+ direction: function() {
1998
+ return Fn(e, this.options);
1999
+ },
2000
+ ghostClass: "sortable-ghost",
2001
+ chosenClass: "sortable-chosen",
2002
+ dragClass: "sortable-drag",
2003
+ ignore: "a, img",
2004
+ filter: null,
2005
+ preventOnFilter: !0,
2006
+ animation: 0,
2007
+ easing: null,
2008
+ setData: function(r, i) {
2009
+ r.setData("Text", i.textContent);
2010
+ },
2011
+ dropBubble: !1,
2012
+ dragoverBubble: !1,
2013
+ dataIdAttr: "data-id",
2014
+ delay: 0,
2015
+ delayOnTouchOnly: !1,
2016
+ touchStartThreshold: (Number.parseInt ? Number : window).parseInt(window.devicePixelRatio, 10) || 1,
2017
+ forceFallback: !1,
2018
+ fallbackClass: "sortable-fallback",
2019
+ fallbackOnBody: !1,
2020
+ fallbackTolerance: 0,
2021
+ fallbackOffset: {
2022
+ x: 0,
2023
+ y: 0
2024
+ },
2025
+ // Disabled on Safari: #1571; Enabled on Safari IOS: #2244
2026
+ supportPointer: F.supportPointer !== !1 && "PointerEvent" in window && (!qe || zt),
2027
+ emptyInsertThreshold: 5
2028
+ };
2029
+ at.initializePlugins(this, e, n);
2030
+ for (var o in n)
2031
+ !(o in t) && (t[o] = n[o]);
2032
+ Rn(t);
2033
+ for (var a in this)
2034
+ a.charAt(0) === "_" && typeof this[a] == "function" && (this[a] = this[a].bind(this));
2035
+ this.nativeDraggable = t.forceFallback ? !1 : bl, this.nativeDraggable && (this.options.touchStartThreshold = 1), t.supportPointer ? U(e, "pointerdown", this._onTapStart) : (U(e, "mousedown", this._onTapStart), U(e, "touchstart", this._onTapStart)), this.nativeDraggable && (U(e, "dragover", this), U(e, "dragenter", this)), vt.push(this.el), t.store && t.store.get && this.sort(t.store.get(this) || []), Ce(this, hl());
2036
+ }
2037
+ F.prototype = /** @lends Sortable.prototype */
2038
+ {
2039
+ constructor: F,
2040
+ _isOutsideThisEl: function(t) {
2041
+ !this.el.contains(t) && t !== this.el && (Ye = null);
2042
+ },
2043
+ _getDirection: function(t, n) {
2044
+ return typeof this.options.direction == "function" ? this.options.direction.call(this, t, n, x) : this.options.direction;
2045
+ },
2046
+ _onTapStart: function(t) {
2047
+ if (t.cancelable) {
2048
+ var n = this, o = this.el, a = this.options, l = a.preventOnFilter, r = t.type, i = t.touches && t.touches[0] || t.pointerType && t.pointerType === "touch" && t, s = (i || t).target, u = t.target.shadowRoot && (t.path && t.path[0] || t.composedPath && t.composedPath()[0]) || s, p = a.filter;
2049
+ if (Il(o), !x && !(/mousedown|pointerdown/.test(r) && t.button !== 0 || a.disabled) && !u.isContentEditable && !(!this.nativeDraggable && qe && s && s.tagName.toUpperCase() === "SELECT") && (s = ke(s, a.draggable, o, !1), !(s && s.animated) && dt !== s)) {
2050
+ if (Ue = ye(s), Qe = ye(s, a.draggable), typeof p == "function") {
2051
+ if (p.call(this, t, s, this)) {
2052
+ de({
2053
+ sortable: n,
2054
+ rootEl: u,
2055
+ name: "filter",
2056
+ targetEl: s,
2057
+ toEl: o,
2058
+ fromEl: o
2059
+ }), ce("filter", n, {
2060
+ evt: t
2061
+ }), l && t.preventDefault();
2062
+ return;
2063
+ }
2064
+ } else if (p && (p = p.split(",").some(function(d) {
2065
+ if (d = ke(u, d.trim(), o, !1), d)
2066
+ return de({
2067
+ sortable: n,
2068
+ rootEl: d,
2069
+ name: "filter",
2070
+ targetEl: s,
2071
+ fromEl: o,
2072
+ toEl: o
2073
+ }), ce("filter", n, {
2074
+ evt: t
2075
+ }), !0;
2076
+ }), p)) {
2077
+ l && t.preventDefault();
2078
+ return;
2079
+ }
2080
+ a.handle && !ke(u, a.handle, o, !1) || this._prepareDragStart(t, i, s);
2081
+ }
2082
+ }
2083
+ },
2084
+ _prepareDragStart: function(t, n, o) {
2085
+ var a = this, l = a.el, r = a.options, i = l.ownerDocument, s;
2086
+ if (o && !x && o.parentNode === l) {
2087
+ var u = ne(o);
2088
+ if (G = l, x = o, Q = x.parentNode, Me = x.nextSibling, dt = o, it = r.group, F.dragged = x, Re = {
2089
+ target: x,
2090
+ clientX: (n || t).clientX,
2091
+ clientY: (n || t).clientY
2092
+ }, an = Re.clientX - u.left, ln = Re.clientY - u.top, this._lastX = (n || t).clientX, this._lastY = (n || t).clientY, x.style["will-change"] = "all", s = function() {
2093
+ if (ce("delayEnded", a, {
2094
+ evt: t
2095
+ }), F.eventCanceled) {
2096
+ a._onDrop();
2097
+ return;
2098
+ }
2099
+ a._disableDelayedDragEvents(), !en && a.nativeDraggable && (x.draggable = !0), a._triggerDragStart(t, n), de({
2100
+ sortable: a,
2101
+ name: "choose",
2102
+ originalEvent: t
2103
+ }), ge(x, r.chosenClass, !0);
2104
+ }, r.ignore.split(",").forEach(function(p) {
2105
+ Dn(x, p.trim(), $t);
2106
+ }), U(i, "dragover", Le), U(i, "mousemove", Le), U(i, "touchmove", Le), r.supportPointer ? (U(i, "pointerup", a._onDrop), !this.nativeDraggable && U(i, "pointercancel", a._onDrop)) : (U(i, "mouseup", a._onDrop), U(i, "touchend", a._onDrop), U(i, "touchcancel", a._onDrop)), en && this.nativeDraggable && (this.options.touchStartThreshold = 4, x.draggable = !0), ce("delayStart", this, {
2107
+ evt: t
2108
+ }), r.delay && (!r.delayOnTouchOnly || n) && (!this.nativeDraggable || !(ot || De))) {
2109
+ if (F.eventCanceled) {
2110
+ this._onDrop();
2111
+ return;
2112
+ }
2113
+ r.supportPointer ? (U(i, "pointerup", a._disableDelayedDrag), U(i, "pointercancel", a._disableDelayedDrag)) : (U(i, "mouseup", a._disableDelayedDrag), U(i, "touchend", a._disableDelayedDrag), U(i, "touchcancel", a._disableDelayedDrag)), U(i, "mousemove", a._delayedDragTouchMoveHandler), U(i, "touchmove", a._delayedDragTouchMoveHandler), r.supportPointer && U(i, "pointermove", a._delayedDragTouchMoveHandler), a._dragStartTimer = setTimeout(s, r.delay);
2114
+ } else
2115
+ s();
2116
+ }
2117
+ },
2118
+ _delayedDragTouchMoveHandler: function(t) {
2119
+ var n = t.touches ? t.touches[0] : t;
2120
+ Math.max(Math.abs(n.clientX - this._lastX), Math.abs(n.clientY - this._lastY)) >= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1)) && this._disableDelayedDrag();
2121
+ },
2122
+ _disableDelayedDrag: function() {
2123
+ x && $t(x), clearTimeout(this._dragStartTimer), this._disableDelayedDragEvents();
2124
+ },
2125
+ _disableDelayedDragEvents: function() {
2126
+ var t = this.el.ownerDocument;
2127
+ V(t, "mouseup", this._disableDelayedDrag), V(t, "touchend", this._disableDelayedDrag), V(t, "touchcancel", this._disableDelayedDrag), V(t, "pointerup", this._disableDelayedDrag), V(t, "pointercancel", this._disableDelayedDrag), V(t, "mousemove", this._delayedDragTouchMoveHandler), V(t, "touchmove", this._delayedDragTouchMoveHandler), V(t, "pointermove", this._delayedDragTouchMoveHandler);
2128
+ },
2129
+ _triggerDragStart: function(t, n) {
2130
+ n = n || t.pointerType == "touch" && t, !this.nativeDraggable || n ? this.options.supportPointer ? U(document, "pointermove", this._onTouchMove) : n ? U(document, "touchmove", this._onTouchMove) : U(document, "mousemove", this._onTouchMove) : (U(x, "dragend", this), U(G, "dragstart", this._onDragStart));
2131
+ try {
2132
+ document.selection ? ft(function() {
2133
+ document.selection.empty();
2134
+ }) : window.getSelection().removeAllRanges();
2135
+ } catch {
2136
+ }
2137
+ },
2138
+ _dragStarted: function(t, n) {
2139
+ if (Ve = !1, G && x) {
2140
+ ce("dragStarted", this, {
2141
+ evt: n
2142
+ }), this.nativeDraggable && U(document, "dragover", kl);
2143
+ var o = this.options;
2144
+ !t && ge(x, o.dragClass, !1), ge(x, o.ghostClass, !0), F.active = this, t && this._appendGhost(), de({
2145
+ sortable: this,
2146
+ name: "start",
2147
+ originalEvent: n
2148
+ });
2149
+ } else
2150
+ this._nulling();
2151
+ },
2152
+ _emulateDragOver: function() {
2153
+ if (we) {
2154
+ this._lastX = we.clientX, this._lastY = we.clientY, Ln();
2155
+ for (var t = document.elementFromPoint(we.clientX, we.clientY), n = t; t && t.shadowRoot && (t = t.shadowRoot.elementFromPoint(we.clientX, we.clientY), t !== n); )
2156
+ n = t;
2157
+ if (x.parentNode[fe]._isOutsideThisEl(t), n)
2158
+ do {
2159
+ if (n[fe]) {
2160
+ var o = void 0;
2161
+ if (o = n[fe]._onDragOver({
2162
+ clientX: we.clientX,
2163
+ clientY: we.clientY,
2164
+ target: t,
2165
+ rootEl: n
2166
+ }), o && !this.options.dragoverBubble)
2167
+ break;
2168
+ }
2169
+ t = n;
2170
+ } while (n = Cn(n));
2171
+ Mn();
2172
+ }
2173
+ },
2174
+ _onTouchMove: function(t) {
2175
+ if (Re) {
2176
+ var n = this.options, o = n.fallbackTolerance, a = n.fallbackOffset, l = t.touches ? t.touches[0] : t, r = M && ze(M, !0), i = M && r && r.a, s = M && r && r.d, u = st && se && on(se), p = (l.clientX - Re.clientX + a.x) / (i || 1) + (u ? u[0] - xt[0] : 0) / (i || 1), d = (l.clientY - Re.clientY + a.y) / (s || 1) + (u ? u[1] - xt[1] : 0) / (s || 1);
2177
+ if (!F.active && !Ve) {
2178
+ if (o && Math.max(Math.abs(l.clientX - this._lastX), Math.abs(l.clientY - this._lastY)) < o)
2179
+ return;
2180
+ this._onDragStart(t, !0);
2181
+ }
2182
+ if (M) {
2183
+ r ? (r.e += p - (Tt || 0), r.f += d - (Et || 0)) : r = {
2184
+ a: 1,
2185
+ b: 0,
2186
+ c: 0,
2187
+ d: 1,
2188
+ e: p,
2189
+ f: d
2190
+ };
2191
+ var E = "matrix(".concat(r.a, ",").concat(r.b, ",").concat(r.c, ",").concat(r.d, ",").concat(r.e, ",").concat(r.f, ")");
2192
+ O(M, "webkitTransform", E), O(M, "mozTransform", E), O(M, "msTransform", E), O(M, "transform", E), Tt = p, Et = d, we = l;
2193
+ }
2194
+ t.cancelable && t.preventDefault();
2195
+ }
2196
+ },
2197
+ _appendGhost: function() {
2198
+ if (!M) {
2199
+ var t = this.options.fallbackOnBody ? document.body : G, n = ne(x, !0, st, !0, t), o = this.options;
2200
+ if (st) {
2201
+ for (se = t; O(se, "position") === "static" && O(se, "transform") === "none" && se !== document; )
2202
+ se = se.parentNode;
2203
+ se !== document.body && se !== document.documentElement ? (se === document && (se = Te()), n.top += se.scrollTop, n.left += se.scrollLeft) : se = Te(), xt = on(se);
2204
+ }
2205
+ M = x.cloneNode(!0), ge(M, o.ghostClass, !1), ge(M, o.fallbackClass, !0), ge(M, o.dragClass, !0), O(M, "transition", ""), O(M, "transform", ""), O(M, "box-sizing", "border-box"), O(M, "margin", 0), O(M, "top", n.top), O(M, "left", n.left), O(M, "width", n.width), O(M, "height", n.height), O(M, "opacity", "0.8"), O(M, "position", st ? "absolute" : "fixed"), O(M, "zIndex", "100000"), O(M, "pointerEvents", "none"), F.ghost = M, t.appendChild(M), O(M, "transform-origin", an / parseInt(M.style.width) * 100 + "% " + ln / parseInt(M.style.height) * 100 + "%");
2206
+ }
2207
+ },
2208
+ _onDragStart: function(t, n) {
2209
+ var o = this, a = t.dataTransfer, l = o.options;
2210
+ if (ce("dragStart", this, {
2211
+ evt: t
2212
+ }), F.eventCanceled) {
2213
+ this._onDrop();
2214
+ return;
2215
+ }
2216
+ ce("setupClone", this), F.eventCanceled || (q = Nn(x), q.removeAttribute("id"), q.draggable = !1, q.style["will-change"] = "", this._hideClone(), ge(q, this.options.chosenClass, !1), F.clone = q), o.cloneId = ft(function() {
2217
+ ce("clone", o), !F.eventCanceled && (o.options.removeCloneOnHide || G.insertBefore(q, x), o._hideClone(), de({
2218
+ sortable: o,
2219
+ name: "clone"
2220
+ }));
2221
+ }), !n && ge(x, l.dragClass, !0), n ? (gt = !0, o._loopId = setInterval(o._emulateDragOver, 50)) : (V(document, "mouseup", o._onDrop), V(document, "touchend", o._onDrop), V(document, "touchcancel", o._onDrop), a && (a.effectAllowed = "move", l.setData && l.setData.call(o, a, x)), U(document, "drop", o), O(x, "transform", "translateZ(0)")), Ve = !0, o._dragStartId = ft(o._dragStarted.bind(o, n, t)), U(document, "selectstart", o), Xe = !0, window.getSelection().removeAllRanges(), qe && O(document.body, "user-select", "none");
2222
+ },
2223
+ // Returns true - if no further action is needed (either inserted or another condition)
2224
+ _onDragOver: function(t) {
2225
+ var n = this.el, o = t.target, a, l, r, i = this.options, s = i.group, u = F.active, p = it === s, d = i.sort, E = le || u, w, S = this, $ = !1;
2226
+ if (Lt) return;
2227
+ function g(_e, Fe) {
2228
+ ce(_e, S, Ee({
2229
+ evt: t,
2230
+ isOwner: p,
2231
+ axis: w ? "vertical" : "horizontal",
2232
+ revert: r,
2233
+ dragRect: a,
2234
+ targetRect: l,
2235
+ canSort: d,
2236
+ fromSortable: E,
2237
+ target: o,
2238
+ completed: _,
2239
+ onMove: function(Xt, zn) {
2240
+ return ut(G, n, x, a, Xt, ne(Xt), t, zn);
2241
+ },
2242
+ changed: P
2243
+ }, Fe));
2244
+ }
2245
+ function b() {
2246
+ g("dragOverAnimationCapture"), S.captureAnimationState(), S !== E && E.captureAnimationState();
2247
+ }
2248
+ function _(_e) {
2249
+ return g("dragOverCompleted", {
2250
+ insertion: _e
2251
+ }), _e && (p ? u._hideClone() : u._showClone(S), S !== E && (ge(x, le ? le.options.ghostClass : u.options.ghostClass, !1), ge(x, i.ghostClass, !0)), le !== S && S !== F.active ? le = S : S === F.active && le && (le = null), E === S && (S._ignoreWhileAnimating = o), S.animateAll(function() {
2252
+ g("dragOverAnimationComplete"), S._ignoreWhileAnimating = null;
2253
+ }), S !== E && (E.animateAll(), E._ignoreWhileAnimating = null)), (o === x && !x.animated || o === n && !o.animated) && (Ye = null), !i.dragoverBubble && !t.rootEl && o !== document && (x.parentNode[fe]._isOutsideThisEl(t.target), !_e && Le(t)), !i.dragoverBubble && t.stopPropagation && t.stopPropagation(), $ = !0;
2254
+ }
2255
+ function P() {
2256
+ ve = ye(x), Pe = ye(x, i.draggable), de({
2257
+ sortable: S,
2258
+ name: "change",
2259
+ toEl: n,
2260
+ newIndex: ve,
2261
+ newDraggableIndex: Pe,
2262
+ originalEvent: t
2263
+ });
2264
+ }
2265
+ if (t.preventDefault !== void 0 && t.cancelable && t.preventDefault(), o = ke(o, i.draggable, n, !0), g("dragOver"), F.eventCanceled) return $;
2266
+ if (x.contains(t.target) || o.animated && o.animatingX && o.animatingY || S._ignoreWhileAnimating === o)
2267
+ return _(!1);
2268
+ if (gt = !1, u && !i.disabled && (p ? d || (r = Q !== G) : le === this || (this.lastPutMode = it.checkPull(this, u, x, t)) && s.checkPut(this, u, x, t))) {
2269
+ if (w = this._getDirection(t, o) === "vertical", a = ne(x), g("dragOverValid"), F.eventCanceled) return $;
2270
+ if (r)
2271
+ return Q = G, b(), this._hideClone(), g("revert"), F.eventCanceled || (Me ? G.insertBefore(x, Me) : G.appendChild(x)), _(!0);
2272
+ var c = Ht(n, i.draggable);
2273
+ if (!c || xl(t, w, this) && !c.animated) {
2274
+ if (c === x)
2275
+ return _(!1);
2276
+ if (c && n === t.target && (o = c), o && (l = ne(o)), ut(G, n, x, a, o, l, t, !!o) !== !1)
2277
+ return b(), c && c.nextSibling ? n.insertBefore(x, c.nextSibling) : n.appendChild(x), Q = n, P(), _(!0);
2278
+ } else if (c && El(t, w, this)) {
2279
+ var D = Ke(n, 0, i, !0);
2280
+ if (D === x)
2281
+ return _(!1);
2282
+ if (o = D, l = ne(o), ut(G, n, x, a, o, l, t, !1) !== !1)
2283
+ return b(), n.insertBefore(x, D), Q = n, P(), _(!0);
2284
+ } else if (o.parentNode === n) {
2285
+ l = ne(o);
2286
+ var m = 0, h, T = x.parentNode !== n, k = !_l(x.animated && x.toRect || a, o.animated && o.toRect || l, w), H = w ? "top" : "left", j = nn(o, "top", "top") || nn(x, "top", "top"), A = j ? j.scrollTop : void 0;
2287
+ Ye !== o && (h = l[H], et = !1, rt = !k && i.invertSwap || T), m = $l(t, o, l, w, k ? 1 : i.swapThreshold, i.invertedSwapThreshold == null ? i.swapThreshold : i.invertedSwapThreshold, rt, Ye === o);
2288
+ var K;
2289
+ if (m !== 0) {
2290
+ var re = ye(x);
2291
+ do
2292
+ re -= m, K = Q.children[re];
2293
+ while (K && (O(K, "display") === "none" || K === M));
2294
+ }
2295
+ if (m === 0 || K === o)
2296
+ return _(!1);
2297
+ Ye = o, Ze = m;
2298
+ var Ie = o.nextElementSibling, be = !1;
2299
+ be = m === 1;
2300
+ var Se = ut(G, n, x, a, o, l, t, be);
2301
+ if (Se !== !1)
2302
+ return (Se === 1 || Se === -1) && (be = Se === 1), Lt = !0, setTimeout(Tl, 30), b(), be && !Ie ? n.appendChild(x) : o.parentNode.insertBefore(x, be ? Ie : o), j && Pn(j, 0, A - j.scrollTop), Q = x.parentNode, h !== void 0 && !rt && (ct = Math.abs(h - ne(o)[H])), P(), _(!0);
2303
+ }
2304
+ if (n.contains(x))
2305
+ return _(!1);
2306
+ }
2307
+ return !1;
2308
+ },
2309
+ _ignoreWhileAnimating: null,
2310
+ _offMoveEvents: function() {
2311
+ V(document, "mousemove", this._onTouchMove), V(document, "touchmove", this._onTouchMove), V(document, "pointermove", this._onTouchMove), V(document, "dragover", Le), V(document, "mousemove", Le), V(document, "touchmove", Le);
2312
+ },
2313
+ _offUpEvents: function() {
2314
+ var t = this.el.ownerDocument;
2315
+ V(t, "mouseup", this._onDrop), V(t, "touchend", this._onDrop), V(t, "pointerup", this._onDrop), V(t, "pointercancel", this._onDrop), V(t, "touchcancel", this._onDrop), V(document, "selectstart", this);
2316
+ },
2317
+ _onDrop: function(t) {
2318
+ var n = this.el, o = this.options;
2319
+ if (ve = ye(x), Pe = ye(x, o.draggable), ce("drop", this, {
2320
+ evt: t
2321
+ }), Q = x && x.parentNode, ve = ye(x), Pe = ye(x, o.draggable), F.eventCanceled) {
2322
+ this._nulling();
2323
+ return;
2324
+ }
2325
+ Ve = !1, rt = !1, et = !1, clearInterval(this._loopId), clearTimeout(this._dragStartTimer), Mt(this.cloneId), Mt(this._dragStartId), this.nativeDraggable && (V(document, "drop", this), V(n, "dragstart", this._onDragStart)), this._offMoveEvents(), this._offUpEvents(), qe && O(document.body, "user-select", ""), O(x, "transform", ""), t && (Xe && (t.cancelable && t.preventDefault(), !o.dropBubble && t.stopPropagation()), M && M.parentNode && M.parentNode.removeChild(M), (G === Q || le && le.lastPutMode !== "clone") && q && q.parentNode && q.parentNode.removeChild(q), x && (this.nativeDraggable && V(x, "dragend", this), $t(x), x.style["will-change"] = "", Xe && !Ve && ge(x, le ? le.options.ghostClass : this.options.ghostClass, !1), ge(x, this.options.chosenClass, !1), de({
2326
+ sortable: this,
2327
+ name: "unchoose",
2328
+ toEl: Q,
2329
+ newIndex: null,
2330
+ newDraggableIndex: null,
2331
+ originalEvent: t
2332
+ }), G !== Q ? (ve >= 0 && (de({
2333
+ rootEl: Q,
2334
+ name: "add",
2335
+ toEl: Q,
2336
+ fromEl: G,
2337
+ originalEvent: t
2338
+ }), de({
2339
+ sortable: this,
2340
+ name: "remove",
2341
+ toEl: Q,
2342
+ originalEvent: t
2343
+ }), de({
2344
+ rootEl: Q,
2345
+ name: "sort",
2346
+ toEl: Q,
2347
+ fromEl: G,
2348
+ originalEvent: t
2349
+ }), de({
2350
+ sortable: this,
2351
+ name: "sort",
2352
+ toEl: Q,
2353
+ originalEvent: t
2354
+ })), le && le.save()) : ve !== Ue && ve >= 0 && (de({
2355
+ sortable: this,
2356
+ name: "update",
2357
+ toEl: Q,
2358
+ originalEvent: t
2359
+ }), de({
2360
+ sortable: this,
2361
+ name: "sort",
2362
+ toEl: Q,
2363
+ originalEvent: t
2364
+ })), F.active && ((ve == null || ve === -1) && (ve = Ue, Pe = Qe), de({
2365
+ sortable: this,
2366
+ name: "end",
2367
+ toEl: Q,
2368
+ originalEvent: t
2369
+ }), this.save()))), this._nulling();
2370
+ },
2371
+ _nulling: function() {
2372
+ ce("nulling", this), G = x = Q = M = Me = q = dt = Ne = Re = we = Xe = ve = Pe = Ue = Qe = Ye = Ze = le = it = F.dragged = F.ghost = F.clone = F.active = null;
2373
+ var t = this.el;
2374
+ yt.forEach(function(n) {
2375
+ t.contains(n) && (n.checked = !0);
2376
+ }), yt.length = Tt = Et = 0;
2377
+ },
2378
+ handleEvent: function(t) {
2379
+ switch (t.type) {
2380
+ case "drop":
2381
+ case "dragend":
2382
+ this._onDrop(t);
2383
+ break;
2384
+ case "dragenter":
2385
+ case "dragover":
2386
+ x && (this._onDragOver(t), Sl(t));
2387
+ break;
2388
+ case "selectstart":
2389
+ t.preventDefault();
2390
+ break;
2391
+ }
2392
+ },
2393
+ /**
2394
+ * Serializes the item into an array of string.
2395
+ * @returns {String[]}
2396
+ */
2397
+ toArray: function() {
2398
+ for (var t = [], n, o = this.el.children, a = 0, l = o.length, r = this.options; a < l; a++)
2399
+ n = o[a], ke(n, r.draggable, this.el, !1) && t.push(n.getAttribute(r.dataIdAttr) || Dl(n));
2400
+ return t;
2401
+ },
2402
+ /**
2403
+ * Sorts the elements according to the array.
2404
+ * @param {String[]} order order of the items
2405
+ */
2406
+ sort: function(t, n) {
2407
+ var o = {}, a = this.el;
2408
+ this.toArray().forEach(function(l, r) {
2409
+ var i = a.children[r];
2410
+ ke(i, this.options.draggable, a, !1) && (o[l] = i);
2411
+ }, this), n && this.captureAnimationState(), t.forEach(function(l) {
2412
+ o[l] && (a.removeChild(o[l]), a.appendChild(o[l]));
2413
+ }), n && this.animateAll();
2414
+ },
2415
+ /**
2416
+ * Save the current sorting
2417
+ */
2418
+ save: function() {
2419
+ var t = this.options.store;
2420
+ t && t.set && t.set(this);
2421
+ },
2422
+ /**
2423
+ * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree.
2424
+ * @param {HTMLElement} el
2425
+ * @param {String} [selector] default: `options.draggable`
2426
+ * @returns {HTMLElement|null}
2427
+ */
2428
+ closest: function(t, n) {
2429
+ return ke(t, n || this.options.draggable, this.el, !1);
2430
+ },
2431
+ /**
2432
+ * Set/get option
2433
+ * @param {string} name
2434
+ * @param {*} [value]
2435
+ * @returns {*}
2436
+ */
2437
+ option: function(t, n) {
2438
+ var o = this.options;
2439
+ if (n === void 0)
2440
+ return o[t];
2441
+ var a = at.modifyOption(this, t, n);
2442
+ typeof a < "u" ? o[t] = a : o[t] = n, t === "group" && Rn(o);
2443
+ },
2444
+ /**
2445
+ * Destroy
2446
+ */
2447
+ destroy: function() {
2448
+ ce("destroy", this);
2449
+ var t = this.el;
2450
+ t[fe] = null, V(t, "mousedown", this._onTapStart), V(t, "touchstart", this._onTapStart), V(t, "pointerdown", this._onTapStart), this.nativeDraggable && (V(t, "dragover", this), V(t, "dragenter", this)), Array.prototype.forEach.call(t.querySelectorAll("[draggable]"), function(n) {
2451
+ n.removeAttribute("draggable");
2452
+ }), this._onDrop(), this._disableDelayedDragEvents(), vt.splice(vt.indexOf(this.el), 1), this.el = t = null;
2453
+ },
2454
+ _hideClone: function() {
2455
+ if (!Ne) {
2456
+ if (ce("hideClone", this), F.eventCanceled) return;
2457
+ O(q, "display", "none"), this.options.removeCloneOnHide && q.parentNode && q.parentNode.removeChild(q), Ne = !0;
2458
+ }
2459
+ },
2460
+ _showClone: function(t) {
2461
+ if (t.lastPutMode !== "clone") {
2462
+ this._hideClone();
2463
+ return;
2464
+ }
2465
+ if (Ne) {
2466
+ if (ce("showClone", this), F.eventCanceled) return;
2467
+ x.parentNode == G && !this.options.group.revertClone ? G.insertBefore(q, x) : Me ? G.insertBefore(q, Me) : G.appendChild(q), this.options.group.revertClone && this.animate(x, q), O(q, "display", ""), Ne = !1;
2468
+ }
2469
+ }
2470
+ };
2471
+ function Sl(e) {
2472
+ e.dataTransfer && (e.dataTransfer.dropEffect = "move"), e.cancelable && e.preventDefault();
2473
+ }
2474
+ function ut(e, t, n, o, a, l, r, i) {
2475
+ var s, u = e[fe], p = u.options.onMove, d;
2476
+ return window.CustomEvent && !De && !ot ? s = new CustomEvent("move", {
2477
+ bubbles: !0,
2478
+ cancelable: !0
2479
+ }) : (s = document.createEvent("Event"), s.initEvent("move", !0, !0)), s.to = t, s.from = e, s.dragged = n, s.draggedRect = o, s.related = a || t, s.relatedRect = l || ne(t), s.willInsertAfter = i, s.originalEvent = r, e.dispatchEvent(s), p && (d = p.call(u, s, r)), d;
2480
+ }
2481
+ function $t(e) {
2482
+ e.draggable = !1;
2483
+ }
2484
+ function Tl() {
2485
+ Lt = !1;
2486
+ }
2487
+ function El(e, t, n) {
2488
+ var o = ne(Ke(n.el, 0, n.options, !0)), a = An(n.el, n.options, M), l = 10;
2489
+ return t ? e.clientX < a.left - l || e.clientY < o.top && e.clientX < o.right : e.clientY < a.top - l || e.clientY < o.bottom && e.clientX < o.left;
2490
+ }
2491
+ function xl(e, t, n) {
2492
+ var o = ne(Ht(n.el, n.options.draggable)), a = An(n.el, n.options, M), l = 10;
2493
+ return t ? e.clientX > a.right + l || e.clientY > o.bottom && e.clientX > o.left : e.clientY > a.bottom + l || e.clientX > o.right && e.clientY > o.top;
2494
+ }
2495
+ function $l(e, t, n, o, a, l, r, i) {
2496
+ var s = o ? e.clientY : e.clientX, u = o ? n.height : n.width, p = o ? n.top : n.left, d = o ? n.bottom : n.right, E = !1;
2497
+ if (!r) {
2498
+ if (i && ct < u * a) {
2499
+ if (!et && (Ze === 1 ? s > p + u * l / 2 : s < d - u * l / 2) && (et = !0), et)
2500
+ E = !0;
2501
+ else if (Ze === 1 ? s < p + ct : s > d - ct)
2502
+ return -Ze;
2503
+ } else if (s > p + u * (1 - a) / 2 && s < d - u * (1 - a) / 2)
2504
+ return Cl(t);
2505
+ }
2506
+ return E = E || r, E && (s < p + u * l / 2 || s > d - u * l / 2) ? s > p + u / 2 ? 1 : -1 : 0;
2507
+ }
2508
+ function Cl(e) {
2509
+ return ye(x) < ye(e) ? 1 : -1;
2510
+ }
2511
+ function Dl(e) {
2512
+ for (var t = e.tagName + e.className + e.src + e.href + e.textContent, n = t.length, o = 0; n--; )
2513
+ o += t.charCodeAt(n);
2514
+ return o.toString(36);
2515
+ }
2516
+ function Il(e) {
2517
+ yt.length = 0;
2518
+ for (var t = e.getElementsByTagName("input"), n = t.length; n--; ) {
2519
+ var o = t[n];
2520
+ o.checked && yt.push(o);
2521
+ }
2522
+ }
2523
+ function ft(e) {
2524
+ return setTimeout(e, 0);
2525
+ }
2526
+ function Mt(e) {
2527
+ return clearTimeout(e);
2528
+ }
2529
+ wt && U(document, "touchmove", function(e) {
2530
+ (F.active || Ve) && e.cancelable && e.preventDefault();
2531
+ });
2532
+ F.utils = {
2533
+ on: U,
2534
+ off: V,
2535
+ css: O,
2536
+ find: Dn,
2537
+ is: function(t, n) {
2538
+ return !!ke(t, n, t, !1);
2539
+ },
2540
+ extend: fl,
2541
+ throttle: In,
2542
+ closest: ke,
2543
+ toggleClass: ge,
2544
+ clone: Nn,
2545
+ index: ye,
2546
+ nextTick: ft,
2547
+ cancelNextTick: Mt,
2548
+ detectDirection: Fn,
2549
+ getChild: Ke,
2550
+ expando: fe
2551
+ };
2552
+ F.get = function(e) {
2553
+ return e[fe];
2554
+ };
2555
+ F.mount = function() {
2556
+ for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
2557
+ t[n] = arguments[n];
2558
+ t[0].constructor === Array && (t = t[0]), t.forEach(function(o) {
2559
+ if (!o.prototype || !o.prototype.constructor)
2560
+ throw "Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(o));
2561
+ o.utils && (F.utils = Ee(Ee({}, F.utils), o.utils)), at.mount(o);
2562
+ });
2563
+ };
2564
+ F.create = function(e, t) {
2565
+ return new F(e, t);
2566
+ };
2567
+ F.version = dl;
2568
+ var te = [], We, Bt, Yt = !1, Ct, Dt, bt, Ge;
2569
+ function Pl() {
2570
+ function e() {
2571
+ this.defaults = {
2572
+ scroll: !0,
2573
+ forceAutoScrollFallback: !1,
2574
+ scrollSensitivity: 30,
2575
+ scrollSpeed: 10,
2576
+ bubbleScroll: !0
2577
+ };
2578
+ for (var t in this)
2579
+ t.charAt(0) === "_" && typeof this[t] == "function" && (this[t] = this[t].bind(this));
2580
+ }
2581
+ return e.prototype = {
2582
+ dragStarted: function(n) {
2583
+ var o = n.originalEvent;
2584
+ this.sortable.nativeDraggable ? U(document, "dragover", this._handleAutoScroll) : this.options.supportPointer ? U(document, "pointermove", this._handleFallbackAutoScroll) : o.touches ? U(document, "touchmove", this._handleFallbackAutoScroll) : U(document, "mousemove", this._handleFallbackAutoScroll);
2585
+ },
2586
+ dragOverCompleted: function(n) {
2587
+ var o = n.originalEvent;
2588
+ !this.options.dragOverBubble && !o.rootEl && this._handleAutoScroll(o);
2589
+ },
2590
+ drop: function() {
2591
+ this.sortable.nativeDraggable ? V(document, "dragover", this._handleAutoScroll) : (V(document, "pointermove", this._handleFallbackAutoScroll), V(document, "touchmove", this._handleFallbackAutoScroll), V(document, "mousemove", this._handleFallbackAutoScroll)), sn(), pt(), pl();
2592
+ },
2593
+ nulling: function() {
2594
+ bt = Bt = We = Yt = Ge = Ct = Dt = null, te.length = 0;
2595
+ },
2596
+ _handleFallbackAutoScroll: function(n) {
2597
+ this._handleAutoScroll(n, !0);
2598
+ },
2599
+ _handleAutoScroll: function(n, o) {
2600
+ var a = this, l = (n.touches ? n.touches[0] : n).clientX, r = (n.touches ? n.touches[0] : n).clientY, i = document.elementFromPoint(l, r);
2601
+ if (bt = n, o || this.options.forceAutoScrollFallback || ot || De || qe) {
2602
+ It(n, this.options, i, o);
2603
+ var s = Ae(i, !0);
2604
+ Yt && (!Ge || l !== Ct || r !== Dt) && (Ge && sn(), Ge = setInterval(function() {
2605
+ var u = Ae(document.elementFromPoint(l, r), !0);
2606
+ u !== s && (s = u, pt()), It(n, a.options, u, o);
2607
+ }, 10), Ct = l, Dt = r);
2608
+ } else {
2609
+ if (!this.options.bubbleScroll || Ae(i, !0) === Te()) {
2610
+ pt();
2611
+ return;
2612
+ }
2613
+ It(n, this.options, Ae(i, !1), !1);
2614
+ }
2615
+ }
2616
+ }, Ce(e, {
2617
+ pluginName: "scroll",
2618
+ initializeByDefault: !0
2619
+ });
2620
+ }
2621
+ function pt() {
2622
+ te.forEach(function(e) {
2623
+ clearInterval(e.pid);
2624
+ }), te = [];
2625
+ }
2626
+ function sn() {
2627
+ clearInterval(Ge);
2628
+ }
2629
+ var It = In(function(e, t, n, o) {
2630
+ if (t.scroll) {
2631
+ var a = (e.touches ? e.touches[0] : e).clientX, l = (e.touches ? e.touches[0] : e).clientY, r = t.scrollSensitivity, i = t.scrollSpeed, s = Te(), u = !1, p;
2632
+ Bt !== n && (Bt = n, pt(), We = t.scroll, p = t.scrollFn, We === !0 && (We = Ae(n, !0)));
2633
+ var d = 0, E = We;
2634
+ do {
2635
+ var w = E, S = ne(w), $ = S.top, g = S.bottom, b = S.left, _ = S.right, P = S.width, c = S.height, D = void 0, m = void 0, h = w.scrollWidth, T = w.scrollHeight, k = O(w), H = w.scrollLeft, j = w.scrollTop;
2636
+ w === s ? (D = P < h && (k.overflowX === "auto" || k.overflowX === "scroll" || k.overflowX === "visible"), m = c < T && (k.overflowY === "auto" || k.overflowY === "scroll" || k.overflowY === "visible")) : (D = P < h && (k.overflowX === "auto" || k.overflowX === "scroll"), m = c < T && (k.overflowY === "auto" || k.overflowY === "scroll"));
2637
+ var A = D && (Math.abs(_ - a) <= r && H + P < h) - (Math.abs(b - a) <= r && !!H), K = m && (Math.abs(g - l) <= r && j + c < T) - (Math.abs($ - l) <= r && !!j);
2638
+ if (!te[d])
2639
+ for (var re = 0; re <= d; re++)
2640
+ te[re] || (te[re] = {});
2641
+ (te[d].vx != A || te[d].vy != K || te[d].el !== w) && (te[d].el = w, te[d].vx = A, te[d].vy = K, clearInterval(te[d].pid), (A != 0 || K != 0) && (u = !0, te[d].pid = setInterval((function() {
2642
+ o && this.layer === 0 && F.active._onTouchMove(bt);
2643
+ var Ie = te[this.layer].vy ? te[this.layer].vy * i : 0, be = te[this.layer].vx ? te[this.layer].vx * i : 0;
2644
+ typeof p == "function" && p.call(F.dragged.parentNode[fe], be, Ie, e, bt, te[this.layer].el) !== "continue" || Pn(te[this.layer].el, be, Ie);
2645
+ }).bind({
2646
+ layer: d
2647
+ }), 24))), d++;
2648
+ } while (t.bubbleScroll && E !== s && (E = Ae(E, !1)));
2649
+ Yt = u;
2650
+ }
2651
+ }, 30), Bn = function(t) {
2652
+ var n = t.originalEvent, o = t.putSortable, a = t.dragEl, l = t.activeSortable, r = t.dispatchSortableEvent, i = t.hideGhostForTarget, s = t.unhideGhostForTarget;
2653
+ if (n) {
2654
+ var u = o || l;
2655
+ i();
2656
+ var p = n.changedTouches && n.changedTouches.length ? n.changedTouches[0] : n, d = document.elementFromPoint(p.clientX, p.clientY);
2657
+ s(), u && !u.el.contains(d) && (r("spill"), this.onSpill({
2658
+ dragEl: a,
2659
+ putSortable: o
2660
+ }));
2661
+ }
2662
+ };
2663
+ function jt() {
2664
+ }
2665
+ jt.prototype = {
2666
+ startIndex: null,
2667
+ dragStart: function(t) {
2668
+ var n = t.oldDraggableIndex;
2669
+ this.startIndex = n;
2670
+ },
2671
+ onSpill: function(t) {
2672
+ var n = t.dragEl, o = t.putSortable;
2673
+ this.sortable.captureAnimationState(), o && o.captureAnimationState();
2674
+ var a = Ke(this.sortable.el, this.startIndex, this.options);
2675
+ a ? this.sortable.el.insertBefore(n, a) : this.sortable.el.appendChild(n), this.sortable.animateAll(), o && o.animateAll();
2676
+ },
2677
+ drop: Bn
2678
+ };
2679
+ Ce(jt, {
2680
+ pluginName: "revertOnSpill"
2681
+ });
2682
+ function Kt() {
2683
+ }
2684
+ Kt.prototype = {
2685
+ onSpill: function(t) {
2686
+ var n = t.dragEl, o = t.putSortable, a = o || this.sortable;
2687
+ a.captureAnimationState(), n.parentNode && n.parentNode.removeChild(n), a.animateAll();
2688
+ },
2689
+ drop: Bn
2690
+ };
2691
+ Ce(Kt, {
2692
+ pluginName: "removeOnSpill"
2693
+ });
2694
+ F.mount(new Pl());
2695
+ F.mount(Kt, jt);
2696
+ const Nl = {
2697
+ key: 0,
2698
+ class: "smart-table-operate"
2699
+ }, Al = /* @__PURE__ */ ee({
2700
+ __name: "setting",
2701
+ emits: ["change"],
2702
+ setup(e, { expose: t, emit: n }) {
2703
+ const o = n, a = L(!1), l = L([]), r = L(!1), i = L([]), s = L([]), u = [
2704
+ {
2705
+ title: "列",
2706
+ dataIndex: "title"
2707
+ },
2708
+ {
2709
+ title: "宽度(像素)",
2710
+ dataIndex: "width",
2711
+ width: 150
2712
+ },
2713
+ {
2714
+ title: "操作",
2715
+ dataIndex: "operate",
2716
+ width: 150,
2717
+ rowDrag: !0
2718
+ }
2719
+ ];
2720
+ async function p() {
2721
+ await je();
2722
+ const b = document.querySelector("#smartTableColumnModalTable tbody");
2723
+ F.create(b, {
2724
+ animation: 300,
2725
+ dragClass: "smart-ghost-class",
2726
+ // 设置拖拽样式类名
2727
+ ghostClass: "smart-ghost-class",
2728
+ // 设置拖拽停靠样式类名
2729
+ chosenClass: "smart-ghost-class",
2730
+ // 设置选中样式类名
2731
+ handle: ".handle",
2732
+ onEnd({ newIndex: _, oldIndex: P }) {
2733
+ _ !== P && w(P, _);
2734
+ }
2735
+ });
2736
+ }
2737
+ function d(b) {
2738
+ const _ = b - 1;
2739
+ _ < 0 || l.value[_].fixed || w(b, _);
2740
+ }
2741
+ function E(b) {
2742
+ const _ = b + 1;
2743
+ _ >= l.value.length || l.value[_].fixed || w(b, _);
2744
+ }
2745
+ function w(b, _) {
2746
+ const P = l.value.splice(b, 1)[0];
2747
+ l.value.splice(_, 0, P);
2748
+ }
2749
+ function S(b) {
2750
+ i.value = b;
2751
+ }
2752
+ function $() {
2753
+ Ot.confirm({
2754
+ title: "确定要恢复默认吗?",
2755
+ content: "确定恢复默认后,该信息将不可恢复",
2756
+ okText: "确定恢复",
2757
+ okType: "danger",
2758
+ onOk() {
2759
+ Sn.success("恢复默认成功"), l.value = JSON.parse(JSON.stringify(s.value));
2760
+ },
2761
+ cancelText: "取消",
2762
+ onCancel() {
2763
+ }
2764
+ });
2765
+ }
2766
+ async function g() {
2767
+ o(
2768
+ "change",
2769
+ // eslint-disable-next-line ts/ban-ts-comment
2770
+ // @ts-ignore
2771
+ l.value.map((b) => ({
2772
+ ...b,
2773
+ visible: i.value.includes(b.dataIndex)
2774
+ }))
2775
+ ), r.value = !1;
2776
+ }
2777
+ return t({
2778
+ open(b) {
2779
+ r.value = !0, l.value = JSON.parse(JSON.stringify(b)), s.value = JSON.parse(JSON.stringify(b)), i.value = l.value.filter((_) => _.visible !== !1).map((_) => _.dataIndex), p();
2780
+ }
2781
+ }), (b, _) => {
2782
+ const P = pe("smile-outlined"), c = pe("pushpin-outlined"), D = pe("drag-outlined"), m = pe("a-input-number");
2783
+ return f(), B(v(Ot), {
2784
+ modelValue: r.value,
2785
+ "onUpdate:modelValue": _[1] || (_[1] = (h) => r.value = h),
2786
+ width: 800,
2787
+ title: "设置列",
2788
+ "destroy-on-close": !0,
2789
+ closable: !1
2790
+ }, {
2791
+ footer: C(() => [
2792
+ N(v(ie), {
2793
+ onClick: _[0] || (_[0] = (h) => r.value = !1)
2794
+ }, {
2795
+ default: C(() => [..._[7] || (_[7] = [
2796
+ W("取消", -1)
2797
+ ])]),
2798
+ _: 1
2799
+ }),
2800
+ N(v(ie), {
2801
+ type: "primary",
2802
+ loading: a.value,
2803
+ onClick: g
2804
+ }, {
2805
+ default: C(() => [..._[8] || (_[8] = [
2806
+ W("保存", -1)
2807
+ ])]),
2808
+ _: 1
2809
+ }, 8, ["loading"]),
2810
+ N(v(ie), {
2811
+ loading: a.value,
2812
+ danger: "",
2813
+ onClick: $
2814
+ }, {
2815
+ default: C(() => [..._[9] || (_[9] = [
2816
+ W("恢复默认", -1)
2817
+ ])]),
2818
+ _: 1
2819
+ }, 8, ["loading"])
2820
+ ]),
2821
+ default: C(() => [
2822
+ I("div", null, [
2823
+ N(v(yo), {
2824
+ type: "info",
2825
+ "show-icon": "",
2826
+ style: { "margin-bottom": "12px" }
2827
+ }, {
2828
+ icon: C(() => [
2829
+ N(P)
2830
+ ]),
2831
+ message: C(() => [
2832
+ _[2] || (_[2] = W(" 可以通过拖拽行直接修改顺序哦;( ", -1)),
2833
+ N(c),
2834
+ _[3] || (_[3] = W("为固定列,不可拖拽 )", -1))
2835
+ ]),
2836
+ _: 1
2837
+ }),
2838
+ N(v(kn), {
2839
+ id: "smartTableColumnModalTable",
2840
+ "row-key": "dataIndex",
2841
+ "row-class-name": "column-row",
2842
+ columns: u,
2843
+ "data-source": l.value,
2844
+ "row-selection": {
2845
+ checkStrictly: !1,
2846
+ selectedRowKeys: i.value,
2847
+ onChange: S
2848
+ },
2849
+ pagination: !1,
2850
+ size: "small",
2851
+ bordered: ""
2852
+ }, {
2853
+ bodyCell: C(({ text: h, record: T, index: k, column: H }) => [
2854
+ H.dataIndex === "title" ? (f(), B(v(ie), {
2855
+ key: 0,
2856
+ type: "text",
2857
+ class: Z(T.fixed ? "" : "handle"),
2858
+ size: "small",
2859
+ style: { width: "100%", "text-align": "left" }
2860
+ }, {
2861
+ icon: C(() => [
2862
+ T.fixed ? (f(), B(c, { key: 1 })) : (f(), B(D, { key: 0 }))
2863
+ ]),
2864
+ default: C(() => [
2865
+ W(" " + Y(h), 1)
2866
+ ]),
2867
+ _: 2
2868
+ }, 1032, ["class"])) : R("", !0),
2869
+ H.dataIndex === "width" ? (f(), y(X, { key: 1 }, [
2870
+ N(m, {
2871
+ value: T.width,
2872
+ "onUpdate:value": (j) => T.width = j,
2873
+ style: { width: "90px", "margin-left": "10px", "margin-right": "3px" },
2874
+ size: "small"
2875
+ }, null, 8, ["value", "onUpdate:value"]),
2876
+ _[4] || (_[4] = W("px ", -1))
2877
+ ], 64)) : R("", !0),
2878
+ H.dataIndex === "operate" ? (f(), y(X, { key: 2 }, [
2879
+ T.fixed ? R("", !0) : (f(), y("div", Nl, [
2880
+ k > 0 ? (f(), B(v(ie), {
2881
+ key: 0,
2882
+ type: "link",
2883
+ class: "handle",
2884
+ size: "small",
2885
+ onClick: (j) => d(k)
2886
+ }, {
2887
+ default: C(() => [..._[5] || (_[5] = [
2888
+ W(" 上移 ", -1)
2889
+ ])]),
2890
+ _: 1
2891
+ }, 8, ["onClick"])) : R("", !0),
2892
+ k !== l.value.length - 1 ? (f(), B(v(ie), {
2893
+ key: 1,
2894
+ type: "link",
2895
+ class: "handle",
2896
+ size: "small",
2897
+ onClick: (j) => E(k)
2898
+ }, {
2899
+ default: C(() => [..._[6] || (_[6] = [
2900
+ W(" 下移", -1)
2901
+ ])]),
2902
+ _: 1
2903
+ }, 8, ["onClick"])) : R("", !0)
2904
+ ]))
2905
+ ], 64)) : R("", !0)
2906
+ ]),
2907
+ _: 1
2908
+ }, 8, ["data-source", "row-selection"])
2909
+ ])
2910
+ ]),
2911
+ _: 1
2912
+ }, 8, ["modelValue"]);
2913
+ };
2914
+ }
2915
+ }), Ol = /* @__PURE__ */ ae(Al, [["__scopeId", "data-v-357f44e4"]]), Fl = {
2916
+ key: 0,
2917
+ class: "l-page-table__filter"
2918
+ }, Rl = {
2919
+ key: 0,
2920
+ class: "l-page-table__action"
2921
+ }, Ll = {
2922
+ key: 0,
2923
+ class: "icons"
2924
+ }, Ml = { key: 0 }, Bl = {
2925
+ key: 0,
2926
+ class: "bodycell"
2927
+ }, Yl = {
2928
+ key: 1,
2929
+ class: "l-page-table__page"
2930
+ }, Vl = /* @__PURE__ */ ee({
2931
+ __name: "page-table",
2932
+ props: {
2933
+ data: {},
2934
+ columns: {},
2935
+ filterItems: { default: () => [] },
2936
+ autoSearch: { type: Boolean, default: !0 },
2937
+ showFilter: { type: Boolean, default: !0 },
2938
+ showRefresh: { type: Boolean, default: !0 },
2939
+ showAction: { type: Boolean, default: !0 },
2940
+ showRadio: { type: Boolean },
2941
+ showSelection: { type: Boolean },
2942
+ showPage: { type: Boolean, default: !0 },
2943
+ showSetting: { type: Boolean, default: !0 },
2944
+ radioSelected: {},
2945
+ selectionSelected: {},
2946
+ condition: { default: () => ({}) },
2947
+ page: { default: () => ({
2948
+ total: 0,
2949
+ pageSize: 10,
2950
+ pageNum: 1
2951
+ }) },
2952
+ refreshLoading: { type: Boolean, default: !1 },
2953
+ card: { type: Boolean, default: !0 },
2954
+ bordered: { type: Boolean, default: !0 },
2955
+ rowKey: { default: "id" },
2956
+ rowSelection: {}
2957
+ },
2958
+ emits: ["refresh", "reset", "update:page", "update:condition", "update:sortInfo", "update:columns", "update:selection-selected", "update:radio-selected"],
2959
+ setup(e, { expose: t, emit: n }) {
2960
+ pn((m) => ({
2961
+ v7a909fa3: v(r).colorBgContainer,
2962
+ v71b74b48: v(r).colorBgLayout
2963
+ }));
2964
+ const o = e, a = n, { useToken: l } = bo, { token: r } = l(), i = L(), s = L(), { isFullscreen: u, toggle: p } = Co(s), d = L(), E = L(!1), w = tt(o, "page", a), S = tt(o, "condition", a);
2965
+ function $(m) {
2966
+ return m == null || m === "" || Array.isArray(m) && m.length === 0;
2967
+ }
2968
+ const g = (m) => {
2969
+ const { text: h, column: T } = m;
2970
+ if ($(h))
2971
+ return "--";
2972
+ switch (T == null ? void 0 : T.formatType) {
2973
+ case "Date":
2974
+ return Jt(h, "YYYY-MM-DD").value || "--";
2975
+ case "DateTime":
2976
+ return Jt(h, "YYYY-MM-DD HH:mm:ss").value || "--";
2977
+ case "Money":
2978
+ return tl(h) || "--";
2979
+ default:
2980
+ return h;
2981
+ }
2982
+ }, b = ue(() => o.columns.filter((m) => m.visible !== !1 && m.promission !== !1).map((m) => ({
2983
+ minWidth: 100,
2984
+ ellipsis: m.ellipsis ?? !0,
2985
+ customRender: m.customRender || g,
2986
+ ...m
2987
+ }))), _ = ue(() => {
2988
+ if (o.showRadio)
2989
+ return {
2990
+ type: "radio",
2991
+ selectedRowKeys: o.radioSelected ? [o.radioSelected] : [],
2992
+ onChange: (m) => {
2993
+ a("update:radio-selected", m[0] || "");
2994
+ }
2995
+ };
2996
+ if (o.showSelection)
2997
+ return {
2998
+ selectedRowKeys: o.selectionSelected || [],
2999
+ onChange: (m) => {
3000
+ a("update:selection-selected", m);
3001
+ }
3002
+ };
3003
+ }), P = qt(() => {
3004
+ E.value = !0, a(
3005
+ "refresh",
3006
+ // 搜索完成后执行的回调函数
3007
+ () => {
3008
+ E.value = !1;
3009
+ }
3010
+ );
3011
+ }), c = qt(() => {
3012
+ w.value.pageNum = 1, je(() => {
3013
+ P();
3014
+ });
3015
+ });
3016
+ function D(m) {
3017
+ a("update:columns", m);
3018
+ }
3019
+ return nt(() => {
3020
+ o.autoSearch && P();
3021
+ }), t({
3022
+ refresh: P,
3023
+ getRootTableRef() {
3024
+ return i.value;
3025
+ }
3026
+ }), (m, h) => {
3027
+ const T = pe("fullscreen-exit-outlined"), k = pe("fullscreen-outlined"), H = pe("redo-outlined"), j = pe("setting-outlined");
3028
+ return f(), B(v(_o), { locale: v(al) }, {
3029
+ default: C(() => [
3030
+ I("div", {
3031
+ ref_key: "tableContainer",
3032
+ ref: s,
3033
+ class: Z(["l-page-table", { full: v(u) }])
3034
+ }, [
3035
+ e.showFilter ? (f(), y("div", Fl, [
3036
+ N(v(Sa), {
3037
+ modelValue: v(S),
3038
+ "onUpdate:modelValue": h[0] || (h[0] = (A) => dn(S) ? S.value = A : null),
3039
+ "filter-items": e.filterItems,
3040
+ card: e.card,
3041
+ onSearch: h[1] || (h[1] = (A) => v(c)()),
3042
+ onReset: h[2] || (h[2] = () => {
3043
+ a("reset"), v(c)();
3044
+ })
3045
+ }, He({ _: 2 }, [
3046
+ oe(e.filterItems.filter((A) => m.$slots[`filter-${A.key}`]), (A) => ({
3047
+ name: `filter-${A.key}`,
3048
+ fn: C(() => [
3049
+ z(m.$slots, `filter-${A.key}`, {}, void 0, !0)
3050
+ ])
3051
+ }))
3052
+ ]), 1032, ["modelValue", "filter-items", "card"])
3053
+ ])) : R("", !0),
3054
+ I("div", {
3055
+ class: Z(["l-page-table__content", { card: e.card }])
3056
+ }, [
3057
+ e.showAction ? (f(), y("div", Rl, [
3058
+ I("div", null, [
3059
+ z(m.$slots, "action", {}, void 0, !0)
3060
+ ]),
3061
+ e.showSetting ? (f(), y("div", Ll, [
3062
+ v(u) ? (f(), B(v(lt), {
3063
+ key: 0,
3064
+ title: "取消全屏"
3065
+ }, {
3066
+ default: C(() => [
3067
+ N(v(ie), {
3068
+ type: "text",
3069
+ size: "small",
3070
+ onClick: h[3] || (h[3] = (A) => v(p)())
3071
+ }, {
3072
+ icon: C(() => [
3073
+ N(T)
3074
+ ]),
3075
+ _: 1
3076
+ })
3077
+ ]),
3078
+ _: 1
3079
+ })) : (f(), B(v(lt), {
3080
+ key: 1,
3081
+ title: "全屏"
3082
+ }, {
3083
+ default: C(() => [
3084
+ N(v(ie), {
3085
+ type: "text",
3086
+ size: "small",
3087
+ onClick: h[4] || (h[4] = (A) => v(p)())
3088
+ }, {
3089
+ icon: C(() => [
3090
+ N(k)
3091
+ ]),
3092
+ _: 1
3093
+ })
3094
+ ]),
3095
+ _: 1
3096
+ })),
3097
+ N(v(lt), { title: "刷新" }, {
3098
+ default: C(() => [
3099
+ N(v(ie), {
3100
+ type: "text",
3101
+ size: "small",
3102
+ onClick: h[5] || (h[5] = (A) => v(P)())
3103
+ }, {
3104
+ icon: C(() => [
3105
+ N(H)
3106
+ ]),
3107
+ _: 1
3108
+ })
3109
+ ]),
3110
+ _: 1
3111
+ }),
3112
+ N(v(lt), { title: "列设置" }, {
3113
+ default: C(() => [
3114
+ N(v(ie), {
3115
+ type: "text",
3116
+ size: "small",
3117
+ onClick: h[6] || (h[6] = (A) => {
3118
+ var K;
3119
+ return (K = d.value) == null ? void 0 : K.open(e.columns.filter((re) => re.promission !== !1));
3120
+ })
3121
+ }, {
3122
+ icon: C(() => [
3123
+ N(j)
3124
+ ]),
3125
+ _: 1
3126
+ })
3127
+ ]),
3128
+ _: 1
3129
+ })
3130
+ ])) : R("", !0)
3131
+ ])) : R("", !0),
3132
+ N(v(kn), xe({
3133
+ ref_key: "tableRef",
3134
+ ref: i
3135
+ }, m.$attrs, {
3136
+ loading: E.value || e.refreshLoading,
3137
+ "data-source": e.data,
3138
+ columns: b.value,
3139
+ bordered: e.bordered,
3140
+ "row-key": e.rowKey,
3141
+ pagination: !1,
3142
+ "row-selection": e.rowSelection || _.value,
3143
+ size: "small"
3144
+ }), He({
3145
+ headerCell: C((A) => [
3146
+ (f(!0), y(X, null, oe(e.columns, (K) => (f(), y(X, {
3147
+ key: K.dataIndex
3148
+ }, [
3149
+ (A == null ? void 0 : A.column.dataIndex) === K.dataIndex ? (f(), y(X, { key: 0 }, [
3150
+ m.$slots[`${K.dataIndex}-header`] ? (f(), y("div", Ml, [
3151
+ z(m.$slots, `${K.dataIndex}-header`, xe({ ref_for: !0 }, A), void 0, !0)
3152
+ ])) : K.require ? (f(), y(X, { key: 1 }, [
3153
+ h[10] || (h[10] = I("span", { class: "l-page-table__require" }, "*", -1)),
3154
+ W(Y(K.title), 1)
3155
+ ], 64)) : R("", !0)
3156
+ ], 64)) : R("", !0)
3157
+ ], 64))), 128))
3158
+ ]),
3159
+ bodyCell: C((A) => [
3160
+ (f(!0), y(X, null, oe(e.columns, (K) => (f(), y(X, {
3161
+ key: K.dataIndex
3162
+ }, [
3163
+ (A == null ? void 0 : A.column.dataIndex) === K.dataIndex ? (f(), y(X, { key: 0 }, [
3164
+ m.$slots[String(K.dataIndex)] ? (f(), y("div", Bl, [
3165
+ z(m.$slots, K.dataIndex, xe({ ref_for: !0 }, A), void 0, !0)
3166
+ ])) : R("", !0)
3167
+ ], 64)) : R("", !0)
3168
+ ], 64))), 128))
3169
+ ]),
3170
+ _: 2
3171
+ }, [
3172
+ m.$slots.expandedRowRender ? {
3173
+ name: "expandedRowRender",
3174
+ fn: C((A) => [
3175
+ z(m.$slots, "expandedRowRender", Pt(Nt(A)), void 0, !0)
3176
+ ]),
3177
+ key: "0"
3178
+ } : void 0,
3179
+ m.$slots.expandColumnTitle ? {
3180
+ name: "expandColumnTitle",
3181
+ fn: C((A) => [
3182
+ z(m.$slots, "expandColumnTitle", Pt(Nt(A)), void 0, !0)
3183
+ ]),
3184
+ key: "1"
3185
+ } : void 0,
3186
+ m.$slots.summary ? {
3187
+ name: "summary",
3188
+ fn: C(() => [
3189
+ z(m.$slots, "summary", {}, void 0, !0)
3190
+ ]),
3191
+ key: "2"
3192
+ } : void 0
3193
+ ]), 1040, ["loading", "data-source", "columns", "bordered", "row-key", "row-selection"]),
3194
+ e.showPage ? (f(), y("div", Yl, [
3195
+ N(v(wo), {
3196
+ current: v(w).pageNum,
3197
+ "onUpdate:current": h[7] || (h[7] = (A) => v(w).pageNum = A),
3198
+ "page-size": v(w).pageSize,
3199
+ "onUpdate:pageSize": h[8] || (h[8] = (A) => v(w).pageSize = A),
3200
+ total: v(w).total,
3201
+ "page-size-options": [5, 10, 20, 50, 100],
3202
+ "show-size-changer": "",
3203
+ "show-quick-jumper": "",
3204
+ "show-less-items": "",
3205
+ "show-total": (A) => `共 ${A} 条`,
3206
+ onChange: h[9] || (h[9] = (A) => v(P)())
3207
+ }, null, 8, ["current", "page-size", "total", "show-total"])
3208
+ ])) : R("", !0),
3209
+ N(Ol, {
3210
+ ref_key: "columnSettingRef",
3211
+ ref: d,
3212
+ onChange: D
3213
+ }, null, 512)
3214
+ ], 2)
3215
+ ], 2)
3216
+ ]),
3217
+ _: 3
3218
+ }, 8, ["locale"]);
3219
+ };
3220
+ }
3221
+ }), Ul = /* @__PURE__ */ ae(Vl, [["__scopeId", "data-v-8d57c521"]]), or = he(Ul), zl = { class: "box" }, Hl = { class: "pt-8px pb-8px flex" }, jl = ["onClick"], Kl = {
3222
+ key: 1,
3223
+ class: "expand-icon-placeholder"
3224
+ }, Xl = { class: "flex flex-items-center h-20px" }, Wl = {
3225
+ key: 0,
3226
+ src: "https://xinlian-prod.oss-cn-beijing.aliyuncs.com/rsp/folder_1773731297611.png?Expires=1805267297&OSSAccessKeyId=LTAI5tBLXUTe9F7AvtDMmiBQ&Signature=ANA2WjuY9aIAZsE3Q45ELcZ%2F4SA%3D",
3227
+ class: "w-16px mt--4px"
3228
+ }, Gl = { key: 1 }, ql = {
3229
+ key: 0,
3230
+ src: "https://xinlian-prod.oss-cn-beijing.aliyuncs.com/rsp/folder_1773731297611.png?Expires=1805267297&OSSAccessKeyId=LTAI5tBLXUTe9F7AvtDMmiBQ&Signature=ANA2WjuY9aIAZsE3Q45ELcZ%2F4SA%3D",
3231
+ class: "w-16px mt--4px"
3232
+ }, Jl = {
3233
+ key: 0,
3234
+ class: "btnlist"
3235
+ }, Ql = {
3236
+ key: 1,
3237
+ class: "h-22px mb-8px mr-16px line-height-22px"
3238
+ }, Zl = /* @__PURE__ */ ee({
3239
+ __name: "role-tree-item",
3240
+ props: {
3241
+ menu: {},
3242
+ isChild: { type: Boolean },
3243
+ indeterminateKeys: {},
3244
+ expandedKeys: {},
3245
+ showCheckbox: { type: Boolean, default: !1 }
3246
+ },
3247
+ emits: ["toggleExpand"],
3248
+ setup(e, { emit: t }) {
3249
+ const n = e, o = t;
3250
+ function a(i) {
3251
+ return !!(i.children && i.children.some((s) => s.menuType !== "F"));
3252
+ }
3253
+ function l(i) {
3254
+ o("toggleExpand", i);
3255
+ }
3256
+ function r(i) {
3257
+ return n.expandedKeys.has(i);
3258
+ }
3259
+ return (i, s) => {
3260
+ var p;
3261
+ const u = pe("role-tree-item", !0);
3262
+ return f(), y("div", {
3263
+ class: Z(["role-tree-item", { "child-menu": e.isChild }])
3264
+ }, [
3265
+ (f(!0), y(X, null, oe((p = e.menu) == null ? void 0 : p.filter((d) => d.menuType !== "F"), (d) => {
3266
+ var E, w;
3267
+ return f(), y("div", {
3268
+ key: d.id,
3269
+ class: "item"
3270
+ }, [
3271
+ I("div", zl, [
3272
+ I("div", Hl, [
3273
+ a(d) ? (f(), y("span", {
3274
+ key: 0,
3275
+ class: "expand-icon",
3276
+ onClick: (S) => l(d.id)
3277
+ }, [
3278
+ I("img", {
3279
+ src: "https://xinlian-prod.oss-cn-beijing.aliyuncs.com/rsp/arrow_1773988582323.png?Expires=1805524582&OSSAccessKeyId=LTAI5tBLXUTe9F7AvtDMmiBQ&Signature=n4C0S%2Fl3ZD619ezg90YJB8UyN3M%3D",
3280
+ class: Z({ collapsed: !r(d.id) })
3281
+ }, null, 2)
3282
+ ], 8, jl)) : (f(), y("span", Kl)),
3283
+ I("div", Xl, [
3284
+ e.showCheckbox ? (f(), B(v(Gt), {
3285
+ key: 0,
3286
+ value: d.id,
3287
+ indeterminate: e.indeterminateKeys.has(d.id)
3288
+ }, {
3289
+ default: C(() => [
3290
+ d.menuType === "M" ? (f(), y("img", Wl)) : R("", !0),
3291
+ W(" " + Y(d.label || d.menuName), 1)
3292
+ ]),
3293
+ _: 2
3294
+ }, 1032, ["value", "indeterminate"])) : (f(), y("span", Gl, [
3295
+ d.menuType === "M" ? (f(), y("img", ql)) : R("", !0),
3296
+ W(" " + Y(d.label || d.menuName), 1)
3297
+ ]))
3298
+ ])
3299
+ ]),
3300
+ (E = d.children) != null && E.some((S) => S.menuType === "F") ? (f(), y("div", Jl, [
3301
+ (f(!0), y(X, null, oe((w = d.children) == null ? void 0 : w.filter((S) => S.menuType === "F"), (S, $) => (f(), y(X, { key: $ }, [
3302
+ e.showCheckbox ? (f(), B(v(Gt), {
3303
+ key: 0,
3304
+ value: S.id,
3305
+ class: "h-22px mb-8px"
3306
+ }, {
3307
+ default: C(() => [
3308
+ W(Y(S.label || d.menuName), 1)
3309
+ ]),
3310
+ _: 2
3311
+ }, 1032, ["value"])) : (f(), y("span", Ql, Y(S.label || d.menuName), 1))
3312
+ ], 64))), 128))
3313
+ ])) : R("", !0)
3314
+ ]),
3315
+ d.children ? Jn((f(), B(u, {
3316
+ key: 0,
3317
+ menu: d.children,
3318
+ "indeterminate-keys": e.indeterminateKeys,
3319
+ "expanded-keys": e.expandedKeys,
3320
+ "show-checkbox": e.showCheckbox,
3321
+ "is-child": "",
3322
+ onToggleExpand: l
3323
+ }, null, 8, ["menu", "indeterminate-keys", "expanded-keys", "show-checkbox"])), [
3324
+ [Qn, r(d.id)]
3325
+ ]) : R("", !0)
3326
+ ]);
3327
+ }), 128))
3328
+ ], 2);
3329
+ };
3330
+ }
3331
+ }), ei = /* @__PURE__ */ ae(Zl, [["__scopeId", "data-v-84c3531a"]]), ti = { class: "tree-wrapper" }, ni = { class: "tree-header" }, oi = /* @__PURE__ */ ee({
3332
+ name: "LRoleTree",
3333
+ __name: "role-tree",
3334
+ props: {
3335
+ menu: {},
3336
+ modelValue: { default: () => [] },
3337
+ showCheckbox: { type: Boolean, default: !0 }
3338
+ },
3339
+ emits: ["update:modelValue"],
3340
+ setup(e, { expose: t, emit: n }) {
3341
+ const o = e, a = n, l = L([...o.modelValue]), r = L(/* @__PURE__ */ new Set()), i = L(/* @__PURE__ */ new Set());
3342
+ function s() {
3343
+ const g = /* @__PURE__ */ new Set();
3344
+ function b(_) {
3345
+ for (const P of _)
3346
+ P.children && P.children.length > 0 && (g.add(P.id), b(P.children));
3347
+ }
3348
+ b(o.menu), i.value = g;
3349
+ }
3350
+ function u() {
3351
+ i.value = /* @__PURE__ */ new Set();
3352
+ }
3353
+ function p(g) {
3354
+ i.value.has(g) ? i.value.delete(g) : i.value.add(g), i.value = new Set(i.value);
3355
+ }
3356
+ nt(() => {
3357
+ S();
3358
+ });
3359
+ function d(g) {
3360
+ const b = /* @__PURE__ */ new Map();
3361
+ function _(P) {
3362
+ for (const c of P)
3363
+ b.set(c.id, c), c.children && _(c.children);
3364
+ }
3365
+ return _(g), b;
3366
+ }
3367
+ function E(g) {
3368
+ const b = [];
3369
+ if (g.children)
3370
+ for (const _ of g.children)
3371
+ _.menuType !== "F" && (b.push(_.id), b.push(...E(_)));
3372
+ return b;
3373
+ }
3374
+ function w(g, b, _) {
3375
+ function P(c) {
3376
+ if (!c.children || c.children.length === 0)
3377
+ return b.has(c.id) ? "all" : "none";
3378
+ const D = c.children.filter((k) => k.menuType !== "F");
3379
+ if (D.length === 0)
3380
+ return b.has(c.id) ? "all" : "none";
3381
+ const m = D.map((k) => P(k)), h = m.every((k) => k === "all"), T = m.some((k) => k === "all" || k === "some");
3382
+ return h ? (b.add(c.id), _.delete(c.id), "all") : T ? (b.delete(c.id), _.add(c.id), "some") : (b.delete(c.id), _.delete(c.id), "none");
3383
+ }
3384
+ for (const c of g)
3385
+ P(c);
3386
+ }
3387
+ function S() {
3388
+ const g = new Set(l.value), b = /* @__PURE__ */ new Set();
3389
+ w(o.menu, g, b), l.value = [...g], r.value = b;
3390
+ }
3391
+ Oe(
3392
+ () => o.modelValue,
3393
+ (g) => {
3394
+ l.value = [...g], S();
3395
+ }
3396
+ ), Oe(
3397
+ () => o.menu,
3398
+ () => S()
3399
+ );
3400
+ function $(g) {
3401
+ const b = g.filter((T) => typeof T != "boolean"), _ = new Set(l.value), P = d(o.menu), c = b.filter((T) => !_.has(T)), D = l.value.filter((T) => !new Set(b).has(T)), m = new Set(b);
3402
+ for (const T of c) {
3403
+ const k = P.get(T);
3404
+ if (k && k.menuType !== "F")
3405
+ for (const H of E(k))
3406
+ m.add(H);
3407
+ }
3408
+ for (const T of D) {
3409
+ const k = P.get(T);
3410
+ if (k && k.menuType !== "F")
3411
+ for (const H of E(k))
3412
+ m.delete(H);
3413
+ }
3414
+ const h = /* @__PURE__ */ new Set();
3415
+ w(o.menu, m, h), l.value = [...m], r.value = h, a("update:modelValue", [...m, ...h]);
3416
+ }
3417
+ return t({
3418
+ expandAll: s,
3419
+ collapseAll: u
3420
+ }), (g, b) => (f(), y("div", ti, [
3421
+ I("div", ni, [
3422
+ N(v(ie), {
3423
+ type: "link",
3424
+ size: "small",
3425
+ onClick: s
3426
+ }, {
3427
+ default: C(() => [...b[0] || (b[0] = [
3428
+ W("展开全部", -1)
3429
+ ])]),
3430
+ _: 1
3431
+ }),
3432
+ N(v(ie), {
3433
+ type: "link",
3434
+ size: "small",
3435
+ onClick: u
3436
+ }, {
3437
+ default: C(() => [...b[1] || (b[1] = [
3438
+ W("收起全部", -1)
3439
+ ])]),
3440
+ _: 1
3441
+ })
3442
+ ]),
3443
+ N(v(ko), {
3444
+ value: l.value,
3445
+ class: "tree",
3446
+ onChange: $
3447
+ }, {
3448
+ default: C(() => [
3449
+ N(ei, {
3450
+ menu: e.menu,
3451
+ "indeterminate-keys": r.value,
3452
+ "expanded-keys": i.value,
3453
+ "show-checkbox": e.showCheckbox,
3454
+ onToggleExpand: p
3455
+ }, null, 8, ["menu", "indeterminate-keys", "expanded-keys", "show-checkbox"])
3456
+ ]),
3457
+ _: 1
3458
+ }, 8, ["value"])
3459
+ ]));
3460
+ }
3461
+ }), ai = /* @__PURE__ */ ae(oi, [["__scopeId", "data-v-84a0e666"]]), ar = he(ai), li = { class: "tab-wrapper" }, ii = { class: "tab-bar" }, ri = ["onClick"], si = /* @__PURE__ */ ee({
3462
+ name: "LSecondBar",
3463
+ __name: "SecondBar",
3464
+ props: {
3465
+ modelValue: {},
3466
+ tabs: {}
3467
+ },
3468
+ emits: ["update:modelValue", "change"],
3469
+ setup(e, { emit: t }) {
3470
+ const n = e, o = t;
3471
+ function a(l) {
3472
+ l !== n.modelValue && (o("update:modelValue", l), o("change", l));
3473
+ }
3474
+ return (l, r) => (f(), y("div", li, [
3475
+ I("div", ii, [
3476
+ (f(!0), y(X, null, oe(e.tabs, (i) => (f(), y("div", {
3477
+ key: i.value
3478
+ }, [
3479
+ I("div", {
3480
+ class: Z(["tab-item", { "is-active": i.value === e.modelValue }]),
3481
+ onClick: (s) => a(i.value)
3482
+ }, Y(i.label), 11, ri)
3483
+ ]))), 128))
3484
+ ])
3485
+ ]));
3486
+ }
3487
+ }), ui = /* @__PURE__ */ ae(si, [["__scopeId", "data-v-33eae005"]]), lr = he(ui), di = {
3488
+ key: 0,
3489
+ class: "l-section-block__title"
3490
+ }, ci = { class: "l-section-block__text" }, fi = {
3491
+ key: 0,
3492
+ class: "l-section-block__extra"
3493
+ }, pi = { class: "l-section-block__body" }, hi = /* @__PURE__ */ ee({
3494
+ name: "LSectionBlock",
3495
+ __name: "section-block",
3496
+ props: {
3497
+ title: { default: "" },
3498
+ blockClass: { default: void 0 },
3499
+ showHeader: { type: Boolean, default: !0 },
3500
+ loading: { type: Boolean }
3501
+ },
3502
+ setup(e) {
3503
+ return (t, n) => (f(), y("div", {
3504
+ class: Z(["l-section-block", e.blockClass])
3505
+ }, [
3506
+ e.showHeader ? (f(), y("div", di, [
3507
+ n[0] || (n[0] = I("span", { class: "l-section-block__bar" }, null, -1)),
3508
+ I("span", ci, [
3509
+ z(t.$slots, "title", {}, () => [
3510
+ W(Y(e.title), 1)
3511
+ ], !0)
3512
+ ]),
3513
+ t.$slots["header-extra"] ? (f(), y("div", fi, [
3514
+ z(t.$slots, "header-extra", {}, void 0, !0)
3515
+ ])) : R("", !0)
3516
+ ])) : R("", !0),
3517
+ I("div", pi, [
3518
+ N(v(Vt), { spinning: e.loading }, {
3519
+ default: C(() => [
3520
+ z(t.$slots, "default", {}, void 0, !0)
3521
+ ]),
3522
+ _: 3
3523
+ }, 8, ["spinning"])
3524
+ ])
3525
+ ], 2));
3526
+ }
3527
+ }), ir = /* @__PURE__ */ ae(hi, [["__scopeId", "data-v-4ef613d2"]]), mi = { class: "l-sign-status-flow" }, gi = { class: "l-sign-status-flow__content" }, vi = { class: "l-sign-status-flow__line-1" }, yi = ["title"], bi = ["title"], _i = {
3528
+ key: 0,
3529
+ class: "l-sign-status-flow__line-2"
3530
+ }, wi = /* @__PURE__ */ ee({
3531
+ name: "LSignStatusFlow",
3532
+ __name: "sign-status-flow",
3533
+ props: {
3534
+ items: { default: () => [] }
3535
+ },
3536
+ setup(e) {
3537
+ const t = e;
3538
+ function n(i) {
3539
+ const s = Number(i);
3540
+ return s === 2 ? "已签署" : s === 4 ? "已拒绝" : "待签署";
3541
+ }
3542
+ function o(i) {
3543
+ const s = Number(i);
3544
+ return s === 2 ? "success" : s === 4 ? "error" : "warning";
3545
+ }
3546
+ function a(i) {
3547
+ return Array.isArray(i) ? i.map((s, u) => ({
3548
+ id: String(s.id ?? u),
3549
+ signerName: s.psnName ?? "",
3550
+ enterpriseName: s.orgName ?? "",
3551
+ status: n(Number(s.signResult)),
3552
+ statusColor: o(Number(s.signResult)),
3553
+ operateTime: s.operateTime || ""
3554
+ })) : [];
3555
+ }
3556
+ function l(i) {
3557
+ return i === "已签署" ? "success" : i === "已拒绝" ? "error" : "warning";
3558
+ }
3559
+ const r = ue(() => a(t.items));
3560
+ return (i, s) => (f(), y("div", mi, [
3561
+ r.value.length ? (f(!0), y(X, { key: 0 }, oe(r.value, (u) => (f(), y("div", {
3562
+ key: u.id,
3563
+ class: "l-sign-status-flow__item"
3564
+ }, [
3565
+ s[0] || (s[0] = I("div", { class: "l-sign-status-flow__icon" }, "签", -1)),
3566
+ I("div", gi, [
3567
+ I("div", vi, [
3568
+ I("div", {
3569
+ class: "l-sign-status-flow__signer",
3570
+ title: u.signerName || "-"
3571
+ }, Y(u.signerName || "-"), 9, yi),
3572
+ N(v(So), {
3573
+ color: u.statusColor || l(u.status)
3574
+ }, {
3575
+ default: C(() => [
3576
+ W(Y(u.status || "待签署"), 1)
3577
+ ]),
3578
+ _: 2
3579
+ }, 1032, ["color"])
3580
+ ]),
3581
+ I("div", {
3582
+ class: "l-sign-status-flow__line-2",
3583
+ title: u.enterpriseName || "-"
3584
+ }, Y(u.enterpriseName || "-"), 9, bi),
3585
+ u.operateTime ? (f(), y("div", _i, " 签署时间:" + Y(u.operateTime), 1)) : R("", !0)
3586
+ ])
3587
+ ]))), 128)) : (f(), B(v(vn), { key: 1 }))
3588
+ ]));
3589
+ }
3590
+ }), ki = /* @__PURE__ */ ae(wi, [["__scopeId", "data-v-92a1f504"]]), rr = he(ki), Yn = "/prod-api", Si = "/scf/common/file/upload", Ti = "/scf/common/file/delete", Vn = `${Yn}${Si}`, Ei = {
3591
+ USER_WEB: {
3592
+ upload: Vn,
3593
+ delete: `${Yn}${Ti}`
3594
+ }
3595
+ }, xi = {
3596
+ OP_MANAGE: "Op-Token",
3597
+ OP: "Op-Token",
3598
+ undefined: "Admin-Token"
3599
+ };
3600
+ var un;
3601
+ const Un = {
3602
+ action: ((un = Ei[void 0]) == null ? void 0 : un.upload) ?? Vn,
3603
+ headers: () => Za(xi[void 0])
3604
+ };
3605
+ function _t(e) {
3606
+ const { response: t } = e;
3607
+ if (t != null && t.data) {
3608
+ const n = t.data;
3609
+ return {
3610
+ fileId: n.id,
3611
+ url: n.url,
3612
+ originalFileName: n.originalFileName
3613
+ };
3614
+ }
3615
+ return {
3616
+ fileId: e.uid,
3617
+ url: e.url,
3618
+ originalFileName: e.name ?? e.originalFileName
3619
+ };
3620
+ }
3621
+ const $i = { class: "upload-file-col" }, Ci = { key: 0 }, Di = { class: "inner" }, Ii = { class: "h-18!" }, Pi = { class: "text" }, Ni = {
3622
+ key: 0,
3623
+ class: "upload-file-hint"
3624
+ }, Ai = /* @__PURE__ */ ee({
3625
+ name: "LUploadFile",
3626
+ inheritAttrs: !1,
3627
+ __name: "upload-file",
3628
+ props: /* @__PURE__ */ mn({
3629
+ type: {},
3630
+ readonly: { type: Boolean },
3631
+ accept: {},
3632
+ hint: {},
3633
+ modelValue: {},
3634
+ action: {},
3635
+ uploadText: {},
3636
+ headers: {},
3637
+ maxCount: {},
3638
+ maxSizeMb: {}
3639
+ }, {
3640
+ modelValue: () => [],
3641
+ accept: ".jpg,.png,.jpeg,.docx,.pdf,.xls,.xlsx",
3642
+ uploadText: "上传附件",
3643
+ ...Un,
3644
+ type: "normal",
3645
+ maxCount: 6
3646
+ }),
3647
+ emits: ["update:modelValue"],
3648
+ setup(e, { emit: t }) {
3649
+ const n = e, o = t, a = Zn(), l = L(), r = L([]);
3650
+ function i(p) {
3651
+ var d;
3652
+ (d = l.value) == null || d.showDialog(p.url);
3653
+ }
3654
+ Oe(
3655
+ () => n.modelValue,
3656
+ (p) => {
3657
+ r.value = p ? JSON.parse(
3658
+ JSON.stringify(
3659
+ p.map((d) => ({
3660
+ name: d.originalFileName,
3661
+ url: d.url || d.fileUrl,
3662
+ uid: d.fileId,
3663
+ status: "done"
3664
+ }))
3665
+ )
3666
+ ) : [];
3667
+ },
3668
+ {
3669
+ deep: !0,
3670
+ immediate: !0
3671
+ }
3672
+ );
3673
+ function s(p) {
3674
+ if (p.file.status === "uploading")
3675
+ return;
3676
+ if (p.file.status === "removed") {
3677
+ const w = p.fileList.map((S) => _t(S));
3678
+ o("update:modelValue", w);
3679
+ return;
3680
+ }
3681
+ const d = p.file.response;
3682
+ if ((d == null ? void 0 : d.code) !== 200)
3683
+ return r.value.pop(), !1;
3684
+ const E = p.fileList.map((w) => _t(w));
3685
+ o("update:modelValue", E);
3686
+ }
3687
+ function u(p, d) {
3688
+ const E = Number(n.maxSizeMb);
3689
+ if (Number.isFinite(E) && E > 0 && Number((p == null ? void 0 : p.size) ?? 0) / 1024 / 1024 > E)
3690
+ return Sn.warning(`单个文件不超过${E}M,请重新选择`), At.LIST_IGNORE;
3691
+ const w = a.beforeUpload ?? a["before-upload"];
3692
+ return typeof w == "function" ? w(p, d) : !0;
3693
+ }
3694
+ return (p, d) => {
3695
+ const E = pe("plus-outlined"), w = pe("VerticalAlignTopOutlined");
3696
+ return f(), y("div", {
3697
+ class: Z(["upload-file-wrapper", { inlineType: e.type === "inline", normalType: e.type === "normal", readonly: e.readonly }])
3698
+ }, [
3699
+ I("div", $i, [
3700
+ N(v(At), xe(p.$attrs, {
3701
+ "file-list": r.value,
3702
+ "onUpdate:fileList": d[0] || (d[0] = (S) => r.value = S),
3703
+ accept: e.accept,
3704
+ action: e.action,
3705
+ "max-count": e.maxCount,
3706
+ headers: e.headers,
3707
+ "before-upload": u,
3708
+ "show-upload-list": { showRemoveIcon: !e.readonly },
3709
+ onPreview: i,
3710
+ onChange: s
3711
+ }), {
3712
+ default: C(() => [
3713
+ e.readonly ? R("", !0) : (f(), y(X, { key: 0 }, [
3714
+ p.$slots.default ? z(p.$slots, "default", { key: 0 }, void 0, !0) : (f(), y(X, { key: 1 }, [
3715
+ e.type === "inline" ? (f(), y("div", Ci, [
3716
+ I("div", null, [
3717
+ I("div", Di, [
3718
+ I("div", Ii, [
3719
+ N(E, { class: "icon" })
3720
+ ]),
3721
+ I("div", Pi, Y(e.uploadText), 1)
3722
+ ])
3723
+ ])
3724
+ ])) : (f(), B(v(ie), { key: 1 }, {
3725
+ default: C(() => [
3726
+ N(w),
3727
+ W(" " + Y(e.uploadText), 1)
3728
+ ]),
3729
+ _: 1
3730
+ }))
3731
+ ], 64))
3732
+ ], 64))
3733
+ ]),
3734
+ _: 3
3735
+ }, 16, ["file-list", "accept", "action", "max-count", "headers", "show-upload-list"])
3736
+ ]),
3737
+ e.hint && !e.readonly ? (f(), y("div", Ni, Y(e.hint), 1)) : R("", !0),
3738
+ N(Ut, {
3739
+ ref_key: "filePreviewRef",
3740
+ ref: l
3741
+ }, null, 512)
3742
+ ], 2);
3743
+ };
3744
+ }
3745
+ }), Oi = /* @__PURE__ */ ae(Ai, [["__scopeId", "data-v-0cb6f9b2"]]), Fi = { class: "upload-file-col" }, Ri = { key: 1 }, Li = { style: { "margin-top": "8px" } }, Mi = {
3746
+ key: 0,
3747
+ class: "upload-file-hint"
3748
+ }, Bi = /* @__PURE__ */ ee({
3749
+ name: "LUploadImage",
3750
+ /** 避免 customRequest 等非 prop 落到外层 div,须落到内部 a-upload 上才能生效并触发 change → emit */
3751
+ inheritAttrs: !1,
3752
+ __name: "upload-image",
3753
+ props: /* @__PURE__ */ mn({
3754
+ type: {},
3755
+ readonly: { type: Boolean },
3756
+ accept: {},
3757
+ hint: {},
3758
+ modelValue: {},
3759
+ action: {},
3760
+ uploadText: {},
3761
+ headers: {},
3762
+ maxCount: {}
3763
+ }, {
3764
+ modelValue: () => [],
3765
+ accept: "image/*,video/*",
3766
+ uploadText: "上传图片",
3767
+ ...Un,
3768
+ type: "normal",
3769
+ maxCount: 6
3770
+ }),
3771
+ emits: ["update:modelValue"],
3772
+ setup(e, { emit: t }) {
3773
+ const n = e, o = t, a = L([]), l = L();
3774
+ function r(s) {
3775
+ var u;
3776
+ (u = l.value) == null || u.showDialog(s.url);
3777
+ }
3778
+ Oe(
3779
+ () => n.modelValue,
3780
+ (s) => {
3781
+ a.value = s ? JSON.parse(
3782
+ JSON.stringify(
3783
+ s.map((u) => ({
3784
+ name: u.originalFileName,
3785
+ url: u.url || u.fileUrl,
3786
+ uid: u.fileId,
3787
+ status: "done"
3788
+ }))
3789
+ )
3790
+ ) : [];
3791
+ },
3792
+ {
3793
+ deep: !0,
3794
+ immediate: !0
3795
+ }
3796
+ );
3797
+ function i(s) {
3798
+ if (s.file.status === "uploading")
3799
+ return;
3800
+ if (s.file.status === "removed") {
3801
+ const d = s.fileList.map((E) => _t(E));
3802
+ o("update:modelValue", d);
3803
+ return;
3804
+ }
3805
+ const u = s.file.response;
3806
+ if ((u == null ? void 0 : u.code) !== 200)
3807
+ return a.value.pop(), !1;
3808
+ const p = s.fileList.map((d) => _t(d));
3809
+ o("update:modelValue", p);
3810
+ }
3811
+ return (s, u) => {
3812
+ const p = pe("plus-outlined");
3813
+ return f(), y("div", {
3814
+ class: Z(["upload-file-wrapper", { inlineType: e.type === "inline", normalType: e.type === "normal", readonly: e.readonly }])
3815
+ }, [
3816
+ I("div", Fi, [
3817
+ N(v(At), xe(s.$attrs, {
3818
+ "file-list": a.value,
3819
+ "onUpdate:fileList": u[0] || (u[0] = (d) => a.value = d),
3820
+ "list-type": "picture-card",
3821
+ accept: e.accept,
3822
+ action: e.action,
3823
+ "max-count": e.maxCount,
3824
+ headers: e.headers,
3825
+ "show-upload-list": { showRemoveIcon: !e.readonly },
3826
+ onPreview: r,
3827
+ onChange: i
3828
+ }), {
3829
+ default: C(() => [
3830
+ a.value.length < e.maxCount && !e.readonly ? (f(), y(X, { key: 0 }, [
3831
+ s.$slots.default ? z(s.$slots, "default", { key: 0 }, void 0, !0) : (f(), y("div", Ri, [
3832
+ N(p),
3833
+ I("div", Li, Y(e.uploadText), 1)
3834
+ ]))
3835
+ ], 64)) : R("", !0)
3836
+ ]),
3837
+ _: 3
3838
+ }, 16, ["file-list", "accept", "action", "max-count", "headers", "show-upload-list"])
3839
+ ]),
3840
+ e.hint && !e.readonly ? (f(), y("div", Mi, Y(e.hint), 1)) : R("", !0),
3841
+ N(Ut, {
3842
+ ref_key: "filePreviewRef",
3843
+ ref: l
3844
+ }, null, 512)
3845
+ ], 2);
3846
+ };
3847
+ }
3848
+ }), Yi = /* @__PURE__ */ ae(Bi, [["__scopeId", "data-v-e3fbddf7"]]), sr = he(Oi), ur = he(Yi);
3849
+ export {
3850
+ qi as LApprovalSteps,
3851
+ Ji as LDetailLayout,
3852
+ Qi as LDrawer,
3853
+ Mo as LFilePreview,
3854
+ Sa as LFilterPanel,
3855
+ da as LFixedFooter,
3856
+ er as LFormSectionPage,
3857
+ Ma as LFormSubmitPage,
3858
+ tr as LFormSubmitPageCard,
3859
+ nr as LInfoLayout,
3860
+ Ot as LModal,
3861
+ Zi as LPageNotFound,
3862
+ or as LPageTable,
3863
+ ar as LRoleTree,
3864
+ lr as LSecondBar,
3865
+ ir as LSectionBlock,
3866
+ rr as LSignStatusFlow,
3867
+ sr as LUploadFile,
3868
+ ur as LUploadImage
3869
+ };