bi-components-library 1.0.69 → 1.0.71
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.
- package/dist/index.es.js +1210 -1193
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +8 -8
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import
|
|
3
|
-
import { Button as
|
|
4
|
-
import { createFromIconfontCN as
|
|
5
|
-
import { createPortal as
|
|
6
|
-
const
|
|
1
|
+
import { jsx as M, jsxs as ue, Fragment as rn } from "react/jsx-runtime";
|
|
2
|
+
import an, { useState as le, useRef as se, useMemo as dt, useCallback as ce, useEffect as pe, useLayoutEffect as Be } from "react";
|
|
3
|
+
import { Button as Ae, Card as pt, Modal as on, Table as ft, Flex as Nt, Spin as sn, Empty as ln, Select as et, Form as Ke, Input as It, Space as cn, DatePicker as un, message as dn, Dropdown as pn, Tooltip as fn, Progress as mn, Pagination as yn, theme as hn } from "antd";
|
|
4
|
+
import { createFromIconfontCN as gn, LeftOutlined as bn, SearchOutlined as vn, ReloadOutlined as xn, InfoCircleOutlined as wn, SendOutlined as kn, PauseCircleOutlined as $n, PlayCircleOutlined as En } from "@ant-design/icons";
|
|
5
|
+
import { createPortal as mt } from "react-dom";
|
|
6
|
+
const Cn = ({
|
|
7
7
|
variant: t = "primary",
|
|
8
8
|
loading: m = !1,
|
|
9
9
|
children: s,
|
|
10
10
|
...o
|
|
11
|
-
}) => /* @__PURE__ */
|
|
12
|
-
|
|
11
|
+
}) => /* @__PURE__ */ M(
|
|
12
|
+
Ae,
|
|
13
13
|
{
|
|
14
14
|
...o,
|
|
15
|
-
type: ((
|
|
16
|
-
switch (
|
|
15
|
+
type: ((S) => {
|
|
16
|
+
switch (S) {
|
|
17
17
|
case "primary":
|
|
18
18
|
return "primary";
|
|
19
19
|
case "ghost":
|
|
@@ -33,7 +33,7 @@ const $n = ({
|
|
|
33
33
|
children: s
|
|
34
34
|
}
|
|
35
35
|
);
|
|
36
|
-
|
|
36
|
+
Cn.__docgenInfo = {
|
|
37
37
|
displayName: "Button",
|
|
38
38
|
description: "基础按钮,用于触发操作",
|
|
39
39
|
props: {
|
|
@@ -77,25 +77,25 @@ $n.__docgenInfo = {
|
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
79
|
};
|
|
80
|
-
const
|
|
80
|
+
const Tn = ({
|
|
81
81
|
title: t,
|
|
82
82
|
children: m,
|
|
83
83
|
bordered: s = !0,
|
|
84
84
|
hoverable: o = !1,
|
|
85
|
-
size:
|
|
86
|
-
...
|
|
87
|
-
}) => /* @__PURE__ */
|
|
88
|
-
|
|
85
|
+
size: b = "default",
|
|
86
|
+
...S
|
|
87
|
+
}) => /* @__PURE__ */ M(
|
|
88
|
+
pt,
|
|
89
89
|
{
|
|
90
|
-
...
|
|
90
|
+
...S,
|
|
91
91
|
title: t,
|
|
92
92
|
bordered: s,
|
|
93
93
|
hoverable: o,
|
|
94
|
-
size:
|
|
94
|
+
size: b,
|
|
95
95
|
children: m
|
|
96
96
|
}
|
|
97
97
|
);
|
|
98
|
-
|
|
98
|
+
Tn.__docgenInfo = {
|
|
99
99
|
displayName: "Card",
|
|
100
100
|
description: "卡片容器,用于分组内容",
|
|
101
101
|
props: {
|
|
@@ -146,23 +146,23 @@ En.__docgenInfo = {
|
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
148
|
};
|
|
149
|
-
const
|
|
149
|
+
const Sn = ({
|
|
150
150
|
showDefaultFooter: t = !0,
|
|
151
151
|
...m
|
|
152
152
|
}) => {
|
|
153
|
-
const s = m.footer !== void 0 ? m.footer : t ? (o, { OkBtn:
|
|
154
|
-
/* @__PURE__ */
|
|
155
|
-
/* @__PURE__ */
|
|
153
|
+
const s = m.footer !== void 0 ? m.footer : t ? (o, { OkBtn: b, CancelBtn: S }) => /* @__PURE__ */ ue(rn, { children: [
|
|
154
|
+
/* @__PURE__ */ M(b, {}),
|
|
155
|
+
/* @__PURE__ */ M(S, {})
|
|
156
156
|
] }) : null;
|
|
157
|
-
return /* @__PURE__ */
|
|
158
|
-
|
|
157
|
+
return /* @__PURE__ */ M(
|
|
158
|
+
on,
|
|
159
159
|
{
|
|
160
160
|
...m,
|
|
161
161
|
footer: s
|
|
162
162
|
}
|
|
163
163
|
);
|
|
164
164
|
};
|
|
165
|
-
|
|
165
|
+
Sn.__docgenInfo = {
|
|
166
166
|
displayName: "AppModal",
|
|
167
167
|
description: "应用级模态框组件,基于 Ant Design Modal 封装",
|
|
168
168
|
props: {
|
|
@@ -223,13 +223,13 @@ Cn.__docgenInfo = {
|
|
|
223
223
|
}
|
|
224
224
|
}
|
|
225
225
|
};
|
|
226
|
-
const
|
|
226
|
+
const Nn = ({
|
|
227
227
|
scrollX: t,
|
|
228
228
|
showPagination: m = !0,
|
|
229
229
|
defaultPageSize: s = 10,
|
|
230
230
|
...o
|
|
231
|
-
}) => /* @__PURE__ */
|
|
232
|
-
|
|
231
|
+
}) => /* @__PURE__ */ M(
|
|
232
|
+
ft,
|
|
233
233
|
{
|
|
234
234
|
...o,
|
|
235
235
|
scroll: {
|
|
@@ -245,7 +245,7 @@ const Sn = ({
|
|
|
245
245
|
} : !1
|
|
246
246
|
}
|
|
247
247
|
);
|
|
248
|
-
|
|
248
|
+
Nn.__docgenInfo = {
|
|
249
249
|
displayName: "PageTable",
|
|
250
250
|
description: "页面级表格组件,高度铺满容器,自动滚动",
|
|
251
251
|
props: {
|
|
@@ -295,30 +295,30 @@ Sn.__docgenInfo = {
|
|
|
295
295
|
}
|
|
296
296
|
}
|
|
297
297
|
};
|
|
298
|
-
const
|
|
298
|
+
const qn = gn({
|
|
299
299
|
scriptUrl: ["//at.alicdn.com/t/c/font_5037819_a72xy7yjoj.js"]
|
|
300
|
-
}),
|
|
300
|
+
}), An = ({
|
|
301
301
|
name: t,
|
|
302
302
|
size: m,
|
|
303
303
|
color: s,
|
|
304
304
|
style: o,
|
|
305
|
-
...
|
|
305
|
+
...b
|
|
306
306
|
}) => {
|
|
307
|
-
const
|
|
307
|
+
const S = {
|
|
308
308
|
fontSize: m,
|
|
309
309
|
color: s,
|
|
310
310
|
...o
|
|
311
311
|
};
|
|
312
|
-
return /* @__PURE__ */
|
|
313
|
-
|
|
312
|
+
return /* @__PURE__ */ M(
|
|
313
|
+
qn,
|
|
314
314
|
{
|
|
315
|
-
...
|
|
315
|
+
...b,
|
|
316
316
|
type: t,
|
|
317
|
-
style:
|
|
317
|
+
style: S
|
|
318
318
|
}
|
|
319
319
|
);
|
|
320
320
|
};
|
|
321
|
-
|
|
321
|
+
An.__docgenInfo = {
|
|
322
322
|
displayName: "XcIcon",
|
|
323
323
|
description: "自定义图标组件,基于 iconfont",
|
|
324
324
|
props: {
|
|
@@ -354,35 +354,35 @@ Nn.__docgenInfo = {
|
|
|
354
354
|
}
|
|
355
355
|
}
|
|
356
356
|
};
|
|
357
|
-
const
|
|
357
|
+
const _n = ({
|
|
358
358
|
loading: t,
|
|
359
359
|
description: m = "暂无数据",
|
|
360
360
|
className: s,
|
|
361
361
|
emptyChildren: o,
|
|
362
|
-
loadingText:
|
|
363
|
-
emptyImage:
|
|
362
|
+
loadingText: b,
|
|
363
|
+
emptyImage: S
|
|
364
364
|
}) => t ? /* @__PURE__ */ ue(
|
|
365
|
-
|
|
365
|
+
Nt,
|
|
366
366
|
{
|
|
367
367
|
className: `pt-10 w-full ${s || ""}`,
|
|
368
368
|
align: "center",
|
|
369
369
|
justify: "center",
|
|
370
370
|
vertical: !0,
|
|
371
371
|
children: [
|
|
372
|
-
/* @__PURE__ */
|
|
373
|
-
|
|
372
|
+
/* @__PURE__ */ M(sn, { size: "large" }),
|
|
373
|
+
b && /* @__PURE__ */ M("div", { className: "mt-4 text-gray-500", children: b })
|
|
374
374
|
]
|
|
375
375
|
}
|
|
376
|
-
) : /* @__PURE__ */
|
|
377
|
-
|
|
376
|
+
) : /* @__PURE__ */ M(
|
|
377
|
+
Nt,
|
|
378
378
|
{
|
|
379
379
|
className: `pt-10 w-full ${s || ""}`,
|
|
380
380
|
align: "center",
|
|
381
381
|
justify: "center",
|
|
382
|
-
children: /* @__PURE__ */
|
|
383
|
-
|
|
382
|
+
children: /* @__PURE__ */ M(
|
|
383
|
+
ln,
|
|
384
384
|
{
|
|
385
|
-
image:
|
|
385
|
+
image: S,
|
|
386
386
|
description: m,
|
|
387
387
|
imageStyle: { height: 180 },
|
|
388
388
|
children: o
|
|
@@ -390,7 +390,7 @@ const qn = ({
|
|
|
390
390
|
)
|
|
391
391
|
}
|
|
392
392
|
);
|
|
393
|
-
|
|
393
|
+
_n.__docgenInfo = {
|
|
394
394
|
displayName: "EmptyAndSpin",
|
|
395
395
|
description: "空状态和加载状态组合组件",
|
|
396
396
|
props: {
|
|
@@ -433,24 +433,24 @@ qn.__docgenInfo = {
|
|
|
433
433
|
}
|
|
434
434
|
}
|
|
435
435
|
};
|
|
436
|
-
const
|
|
436
|
+
const Ln = ({
|
|
437
437
|
onClick: t,
|
|
438
438
|
showText: m = !1,
|
|
439
439
|
className: s,
|
|
440
440
|
size: o = "small",
|
|
441
|
-
type:
|
|
442
|
-
}) => /* @__PURE__ */
|
|
443
|
-
|
|
441
|
+
type: b = "default"
|
|
442
|
+
}) => /* @__PURE__ */ M(
|
|
443
|
+
Ae,
|
|
444
444
|
{
|
|
445
445
|
size: o,
|
|
446
|
-
type:
|
|
447
|
-
icon: /* @__PURE__ */
|
|
446
|
+
type: b,
|
|
447
|
+
icon: /* @__PURE__ */ M(bn, {}),
|
|
448
448
|
className: `cursor-pointer ${s || ""}`,
|
|
449
449
|
onClick: t,
|
|
450
450
|
children: m && "返回"
|
|
451
451
|
}
|
|
452
452
|
);
|
|
453
|
-
|
|
453
|
+
Ln.__docgenInfo = {
|
|
454
454
|
displayName: "BackButton",
|
|
455
455
|
description: "返回按钮组件",
|
|
456
456
|
props: {
|
|
@@ -489,14 +489,14 @@ An.__docgenInfo = {
|
|
|
489
489
|
}
|
|
490
490
|
}
|
|
491
491
|
};
|
|
492
|
-
const
|
|
492
|
+
const Mn = ({
|
|
493
493
|
removePadding: t = !0,
|
|
494
494
|
className: m,
|
|
495
495
|
...s
|
|
496
496
|
}) => {
|
|
497
497
|
const o = t ? `px-0 h-auto ${m || ""}` : m;
|
|
498
|
-
return /* @__PURE__ */
|
|
499
|
-
|
|
498
|
+
return /* @__PURE__ */ M(
|
|
499
|
+
Ae,
|
|
500
500
|
{
|
|
501
501
|
type: "link",
|
|
502
502
|
...s,
|
|
@@ -505,7 +505,7 @@ const _n = ({
|
|
|
505
505
|
}
|
|
506
506
|
);
|
|
507
507
|
};
|
|
508
|
-
|
|
508
|
+
Mn.__docgenInfo = {
|
|
509
509
|
displayName: "LinkButton",
|
|
510
510
|
description: "链接样式按钮组件,适用于表格操作列",
|
|
511
511
|
props: {
|
|
@@ -542,110 +542,110 @@ _n.__docgenInfo = {
|
|
|
542
542
|
}
|
|
543
543
|
}
|
|
544
544
|
};
|
|
545
|
-
const { Option:
|
|
545
|
+
const { Option: In } = et, Dn = ({
|
|
546
546
|
columns: t,
|
|
547
547
|
request: m,
|
|
548
548
|
searchFields: s = [],
|
|
549
549
|
showSearch: o = !0,
|
|
550
|
-
showRefresh:
|
|
551
|
-
defaultPageSize:
|
|
552
|
-
pageSizeOptions:
|
|
550
|
+
showRefresh: b = !0,
|
|
551
|
+
defaultPageSize: S = 10,
|
|
552
|
+
pageSizeOptions: I = ["10", "20", "50", "100"],
|
|
553
553
|
autoLoad: A = !0,
|
|
554
554
|
externalParams: E = {},
|
|
555
555
|
...C
|
|
556
556
|
}) => {
|
|
557
557
|
const [N, k] = le([]), [H, $] = le(!1), [e, n] = le({
|
|
558
558
|
current: 1,
|
|
559
|
-
pageSize:
|
|
559
|
+
pageSize: S,
|
|
560
560
|
total: 0
|
|
561
|
-
}), [r,
|
|
561
|
+
}), [r, c] = le({}), [p, D] = le({}), [T] = Ke.useForm(), z = se(e);
|
|
562
562
|
z.current = e;
|
|
563
563
|
const j = se(E);
|
|
564
564
|
j.current = E;
|
|
565
|
-
const Y = se(!1), F =
|
|
566
|
-
const { sortable:
|
|
565
|
+
const Y = se(!1), F = dt(() => t.map((u) => {
|
|
566
|
+
const { sortable: f, render: v, ...B } = u;
|
|
567
567
|
return {
|
|
568
568
|
...B,
|
|
569
|
-
sorter:
|
|
570
|
-
render: v || ((
|
|
569
|
+
sorter: f ? !0 : void 0,
|
|
570
|
+
render: v || ((L) => L)
|
|
571
571
|
};
|
|
572
|
-
}), [t]), O = ce(async (
|
|
572
|
+
}), [t]), O = ce(async (u = {}) => {
|
|
573
573
|
if (m) {
|
|
574
574
|
$(!0);
|
|
575
575
|
try {
|
|
576
|
-
const
|
|
576
|
+
const f = {
|
|
577
577
|
page: z.current.current,
|
|
578
578
|
pageSize: z.current.pageSize,
|
|
579
|
-
sortField:
|
|
580
|
-
sortOrder:
|
|
579
|
+
sortField: p.field,
|
|
580
|
+
sortOrder: p.order,
|
|
581
581
|
searchParams: { ...r, ...j.current },
|
|
582
|
-
...
|
|
583
|
-
}, v = await m(
|
|
582
|
+
...u
|
|
583
|
+
}, v = await m(f);
|
|
584
584
|
v.success && (k(v.data), n((B) => ({
|
|
585
585
|
...B,
|
|
586
586
|
total: v.total,
|
|
587
|
-
current:
|
|
587
|
+
current: f.page || B.current
|
|
588
588
|
})));
|
|
589
|
-
} catch (
|
|
590
|
-
console.error("加载数据失败:",
|
|
589
|
+
} catch (f) {
|
|
590
|
+
console.error("加载数据失败:", f);
|
|
591
591
|
} finally {
|
|
592
592
|
$(!1);
|
|
593
593
|
}
|
|
594
594
|
}
|
|
595
|
-
}, [m,
|
|
596
|
-
|
|
595
|
+
}, [m, p, r]), G = ce((u) => {
|
|
596
|
+
c(u), n((f) => ({ ...f, current: 1 }));
|
|
597
597
|
}, []), _ = ce(() => {
|
|
598
|
-
|
|
599
|
-
}, [
|
|
598
|
+
T.resetFields(), c({}), n((u) => ({ ...u, current: 1 }));
|
|
599
|
+
}, [T]), R = ce(() => {
|
|
600
600
|
O();
|
|
601
|
-
}, [O]), J = ce((
|
|
601
|
+
}, [O]), J = ce((u, f, v) => {
|
|
602
602
|
const B = {
|
|
603
|
-
current:
|
|
604
|
-
pageSize:
|
|
605
|
-
total:
|
|
606
|
-
},
|
|
603
|
+
current: u.current || 1,
|
|
604
|
+
pageSize: u.pageSize || S,
|
|
605
|
+
total: u.total || 0
|
|
606
|
+
}, L = {
|
|
607
607
|
field: v?.field,
|
|
608
608
|
order: v?.order
|
|
609
609
|
};
|
|
610
|
-
n(B),
|
|
611
|
-
}, [
|
|
610
|
+
n(B), D(L);
|
|
611
|
+
}, [S]);
|
|
612
612
|
return pe(() => {
|
|
613
|
-
const
|
|
614
|
-
(A && !Y.current ||
|
|
613
|
+
const u = Object.keys(E).length > 0;
|
|
614
|
+
(A && !Y.current || u) && (O(), Y.current = !0);
|
|
615
615
|
}, [A, E, O]), /* @__PURE__ */ ue("div", { children: [
|
|
616
|
-
o && s.length > 0 && /* @__PURE__ */
|
|
616
|
+
o && s.length > 0 && /* @__PURE__ */ M(pt, { size: "small", style: { marginBottom: 16 }, children: /* @__PURE__ */ ue(
|
|
617
617
|
Ke,
|
|
618
618
|
{
|
|
619
|
-
form:
|
|
619
|
+
form: T,
|
|
620
620
|
layout: "inline",
|
|
621
621
|
onFinish: G,
|
|
622
|
-
initialValues: s.reduce((
|
|
622
|
+
initialValues: s.reduce((u, f) => (f.defaultValue !== void 0 && (u[f.key] = f.defaultValue), u), {}),
|
|
623
623
|
children: [
|
|
624
|
-
s.map((
|
|
625
|
-
|
|
624
|
+
s.map((u) => /* @__PURE__ */ M(Ke.Item, { name: u.key, label: u.label, children: u.type === "input" ? /* @__PURE__ */ M(
|
|
625
|
+
It,
|
|
626
626
|
{
|
|
627
|
-
placeholder:
|
|
627
|
+
placeholder: u.placeholder || `请输入${u.label}`,
|
|
628
628
|
style: { width: 200 }
|
|
629
629
|
}
|
|
630
|
-
) : /* @__PURE__ */
|
|
630
|
+
) : /* @__PURE__ */ M(
|
|
631
631
|
et,
|
|
632
632
|
{
|
|
633
|
-
placeholder:
|
|
633
|
+
placeholder: u.placeholder || `请选择${u.label}`,
|
|
634
634
|
style: { width: 200 },
|
|
635
635
|
allowClear: !0,
|
|
636
|
-
children:
|
|
636
|
+
children: u.options?.map((f) => /* @__PURE__ */ M(In, { value: f.value, children: f.label }, f.value))
|
|
637
637
|
}
|
|
638
|
-
) },
|
|
639
|
-
/* @__PURE__ */
|
|
640
|
-
/* @__PURE__ */
|
|
641
|
-
/* @__PURE__ */
|
|
642
|
-
|
|
638
|
+
) }, u.key)),
|
|
639
|
+
/* @__PURE__ */ M(Ke.Item, { children: /* @__PURE__ */ ue(cn, { children: [
|
|
640
|
+
/* @__PURE__ */ M(Ae, { type: "primary", htmlType: "submit", icon: /* @__PURE__ */ M(vn, {}), children: "查询" }),
|
|
641
|
+
/* @__PURE__ */ M(Ae, { onClick: _, children: "重置" }),
|
|
642
|
+
b && /* @__PURE__ */ M(Ae, { icon: /* @__PURE__ */ M(xn, {}), onClick: R, children: "刷新" })
|
|
643
643
|
] }) })
|
|
644
644
|
]
|
|
645
645
|
}
|
|
646
646
|
) }),
|
|
647
|
-
/* @__PURE__ */
|
|
648
|
-
|
|
647
|
+
/* @__PURE__ */ M(
|
|
648
|
+
ft,
|
|
649
649
|
{
|
|
650
650
|
...C,
|
|
651
651
|
columns: F,
|
|
@@ -655,8 +655,8 @@ const { Option: Ln } = et, Mn = ({
|
|
|
655
655
|
...e,
|
|
656
656
|
showSizeChanger: !0,
|
|
657
657
|
showQuickJumper: !0,
|
|
658
|
-
showTotal: (
|
|
659
|
-
pageSizeOptions:
|
|
658
|
+
showTotal: (u, f) => `第 ${f[0]}-${f[1]} 条/共 ${u} 条`,
|
|
659
|
+
pageSizeOptions: I
|
|
660
660
|
},
|
|
661
661
|
onChange: J,
|
|
662
662
|
scroll: { x: "max-content", y: "50vh" }
|
|
@@ -664,7 +664,7 @@ const { Option: Ln } = et, Mn = ({
|
|
|
664
664
|
)
|
|
665
665
|
] });
|
|
666
666
|
};
|
|
667
|
-
|
|
667
|
+
Dn.__docgenInfo = {
|
|
668
668
|
displayName: "AdvancedTable",
|
|
669
669
|
description: "高阶表格组件,支持异步请求、搜索、排序等功能",
|
|
670
670
|
props: {
|
|
@@ -731,22 +731,22 @@ Mn.__docgenInfo = {
|
|
|
731
731
|
}
|
|
732
732
|
}
|
|
733
733
|
};
|
|
734
|
-
function
|
|
734
|
+
function ct(t, m, s) {
|
|
735
735
|
if (!t.current) return;
|
|
736
|
-
const o = /* @__PURE__ */ new Set(),
|
|
736
|
+
const o = /* @__PURE__ */ new Set(), b = {};
|
|
737
737
|
for (const k of m)
|
|
738
|
-
k.exclusionGroup && k.exclusionGroup !== "separator" && (o.add(k.exclusionGroup),
|
|
738
|
+
k.exclusionGroup && k.exclusionGroup !== "separator" && (o.add(k.exclusionGroup), b[k.exclusionGroup] || (b[k.exclusionGroup] = []), b[k.exclusionGroup].push({
|
|
739
739
|
type: k.type,
|
|
740
740
|
key: k.key,
|
|
741
741
|
exclusionGroup: k.exclusionGroup
|
|
742
742
|
}));
|
|
743
|
-
const
|
|
743
|
+
const S = {};
|
|
744
744
|
for (const k of o) {
|
|
745
|
-
|
|
746
|
-
for (const H of
|
|
745
|
+
S[k] = !1;
|
|
746
|
+
for (const H of b[k])
|
|
747
747
|
if (H.type === "upload" && H.key) {
|
|
748
748
|
if (s[H.key] !== null && s[H.key] !== void 0) {
|
|
749
|
-
|
|
749
|
+
S[k] = !0;
|
|
750
750
|
break;
|
|
751
751
|
}
|
|
752
752
|
} else if ((H.type === "variable" || H.type === "multi-variable") && H.key) {
|
|
@@ -757,20 +757,20 @@ function it(t, m, s) {
|
|
|
757
757
|
)].filter(Boolean);
|
|
758
758
|
for (const e of $)
|
|
759
759
|
if (!e.classList.contains("show-placeholder") && e.innerText.replace(/[\u200B\n]/g, "").trim().length > 0) {
|
|
760
|
-
|
|
760
|
+
S[k] = !0;
|
|
761
761
|
break;
|
|
762
762
|
}
|
|
763
|
-
if (
|
|
763
|
+
if (S[k])
|
|
764
764
|
break;
|
|
765
765
|
}
|
|
766
766
|
}
|
|
767
|
-
const
|
|
768
|
-
(k) =>
|
|
767
|
+
const I = m.some((k) => k.exclusionGroup === "separator"), E = Object.keys(S).filter(
|
|
768
|
+
(k) => S[k]
|
|
769
769
|
).length > 0;
|
|
770
770
|
let C = null;
|
|
771
|
-
if (E &&
|
|
771
|
+
if (E && I) {
|
|
772
772
|
for (const k of m)
|
|
773
|
-
if (k.exclusionGroup && k.exclusionGroup !== "separator" &&
|
|
773
|
+
if (k.exclusionGroup && k.exclusionGroup !== "separator" && S[k.exclusionGroup]) {
|
|
774
774
|
C = k.exclusionGroup;
|
|
775
775
|
break;
|
|
776
776
|
}
|
|
@@ -779,7 +779,7 @@ function it(t, m, s) {
|
|
|
779
779
|
const H = t.current.querySelectorAll(
|
|
780
780
|
`[data-group="${k}"]`
|
|
781
781
|
);
|
|
782
|
-
|
|
782
|
+
I && E && C ? k === C ? H.forEach(($) => {
|
|
783
783
|
$.closest('[data-rte-force-hidden="1"]') || ($.classList.contains("required-upload-group") ? $.style.setProperty("display", "inline-flex", "important") : ($.classList.contains("exclusion-wrapper"), $.style.setProperty("display", "inline-block", "important")));
|
|
784
784
|
}) : H.forEach(($) => {
|
|
785
785
|
$.closest('[data-rte-force-hidden="1"]') || ($.style.display = "none", $.style.setProperty("display", "none", "important"));
|
|
@@ -793,30 +793,30 @@ function it(t, m, s) {
|
|
|
793
793
|
k.style.display = E ? "none" : "inline";
|
|
794
794
|
});
|
|
795
795
|
}
|
|
796
|
-
function
|
|
796
|
+
function ut(t, m, s, o) {
|
|
797
797
|
if (!t.current) {
|
|
798
798
|
o(!1);
|
|
799
799
|
return;
|
|
800
800
|
}
|
|
801
|
-
const
|
|
801
|
+
const b = (e) => {
|
|
802
802
|
if ((e.getAttribute("data-node-type") || "") !== "report-module")
|
|
803
803
|
return (e.textContent || "").replace(/[\u200B]/g, "").trim();
|
|
804
|
-
const r = (e.textContent || "").replace(/[\u200B]/g, "").trim(),
|
|
805
|
-
if (
|
|
804
|
+
const r = (e.textContent || "").replace(/[\u200B]/g, "").trim(), c = Array.from(e.querySelectorAll(":scope > div"));
|
|
805
|
+
if (c.length === 0)
|
|
806
806
|
return r;
|
|
807
|
-
let
|
|
808
|
-
for (let z = 0; z <
|
|
809
|
-
if ((
|
|
810
|
-
|
|
807
|
+
let p = -1;
|
|
808
|
+
for (let z = 0; z < c.length; z++)
|
|
809
|
+
if ((c[z].textContent || "").replace(/[\u200B]/g, "").trim().length > 0) {
|
|
810
|
+
p = z;
|
|
811
811
|
break;
|
|
812
812
|
}
|
|
813
|
-
return
|
|
813
|
+
return c.filter((z, j) => j !== p).map((z) => (z.textContent || "").replace(/[\u200B]/g, "").trim()).join(`
|
|
814
814
|
`).trim() || r;
|
|
815
|
-
},
|
|
815
|
+
}, S = (e) => e ? !!e.closest('[data-rte-force-hidden="1"]') : !1, I = [];
|
|
816
816
|
for (let e = 0; e < m.length; e++) {
|
|
817
817
|
const n = m[e];
|
|
818
818
|
if ((n.type === "variable" || n.type === "report-url" || n.type === "upload" || n.type === "multi-variable" || n.type === "select" || n.type === "textarea" || n.type === "richtext" || n.type === "report-module" || n.type === "datepicker") && n.required && n.key) {
|
|
819
|
-
|
|
819
|
+
I.push({
|
|
820
820
|
exclusionGroup: n.exclusionGroup || "",
|
|
821
821
|
key: n.key,
|
|
822
822
|
type: n.type === "multi-variable" || n.type === "report-url" ? "variable" : n.type === "report-module" ? "richtext" : n.type,
|
|
@@ -829,12 +829,12 @@ function ct(t, m, s, o) {
|
|
|
829
829
|
if (n.type === "text" && n.className?.includes("rte-text-required"))
|
|
830
830
|
if (n.exclusionGroup)
|
|
831
831
|
for (let r = e + 1; r < m.length; r++) {
|
|
832
|
-
const
|
|
833
|
-
if (
|
|
834
|
-
|
|
832
|
+
const c = m[r];
|
|
833
|
+
if (c.exclusionGroup === n.exclusionGroup && (c.type === "variable" || c.type === "upload" || c.type === "select" || c.type === "textarea" || c.type === "richtext" || c.type === "datepicker") && c.key) {
|
|
834
|
+
I.push({
|
|
835
835
|
exclusionGroup: n.exclusionGroup,
|
|
836
|
-
key:
|
|
837
|
-
type:
|
|
836
|
+
key: c.key,
|
|
837
|
+
type: c.type,
|
|
838
838
|
__index: r
|
|
839
839
|
});
|
|
840
840
|
break;
|
|
@@ -842,12 +842,12 @@ function ct(t, m, s, o) {
|
|
|
842
842
|
}
|
|
843
843
|
else
|
|
844
844
|
for (let r = e + 1; r < m.length; r++) {
|
|
845
|
-
const
|
|
846
|
-
if ((
|
|
847
|
-
|
|
848
|
-
exclusionGroup:
|
|
849
|
-
key:
|
|
850
|
-
type:
|
|
845
|
+
const c = m[r];
|
|
846
|
+
if ((c.type === "variable" || c.type === "upload" || c.type === "select" || c.type === "textarea" || c.type === "richtext" || c.type === "datepicker") && c.key) {
|
|
847
|
+
I.push({
|
|
848
|
+
exclusionGroup: c.exclusionGroup || "",
|
|
849
|
+
key: c.key,
|
|
850
|
+
type: c.type,
|
|
851
851
|
__index: r
|
|
852
852
|
});
|
|
853
853
|
break;
|
|
@@ -855,17 +855,17 @@ function ct(t, m, s, o) {
|
|
|
855
855
|
}
|
|
856
856
|
}
|
|
857
857
|
const A = m.some((e) => e.exclusionGroup === "separator"), E = [];
|
|
858
|
-
if (A &&
|
|
858
|
+
if (A && I.length > 1) {
|
|
859
859
|
const e = [];
|
|
860
860
|
m.forEach((n, r) => {
|
|
861
861
|
n.exclusionGroup === "separator" && e.push(r);
|
|
862
862
|
});
|
|
863
863
|
for (const n of e) {
|
|
864
|
-
const
|
|
865
|
-
|
|
864
|
+
const c = I.filter((T) => typeof T.__index == "number" && T.__index < n).sort((T, z) => (z.__index ?? 0) - (T.__index ?? 0))[0], D = I.filter((T) => typeof T.__index == "number" && T.__index > n).sort((T, z) => (T.__index ?? 0) - (z.__index ?? 0))[0];
|
|
865
|
+
c && D && E.push([c, D]);
|
|
866
866
|
}
|
|
867
867
|
}
|
|
868
|
-
if (
|
|
868
|
+
if (I.length === 0) {
|
|
869
869
|
if (m.length === 0) {
|
|
870
870
|
if (!t.current) {
|
|
871
871
|
o(!1);
|
|
@@ -878,7 +878,7 @@ function ct(t, m, s, o) {
|
|
|
878
878
|
o(!0);
|
|
879
879
|
return;
|
|
880
880
|
}
|
|
881
|
-
const C =
|
|
881
|
+
const C = I.filter((e) => {
|
|
882
882
|
if (!t.current) return !1;
|
|
883
883
|
if (e.exclusionGroup) {
|
|
884
884
|
const n = t.current.querySelectorAll(
|
|
@@ -886,14 +886,14 @@ function ct(t, m, s, o) {
|
|
|
886
886
|
);
|
|
887
887
|
if (n.length > 0) {
|
|
888
888
|
const r = n[0];
|
|
889
|
-
return
|
|
889
|
+
return S(r) ? !0 : r.style.display !== "none";
|
|
890
890
|
}
|
|
891
891
|
}
|
|
892
892
|
if (e.type === "upload" && e.key) {
|
|
893
893
|
const n = t.current.querySelector(`[data-type="upload"][data-key="${e.key}"]`) || t.current.querySelector(`[data-type="upload"][data-batch-key="${e.key}"]`);
|
|
894
894
|
if (n) {
|
|
895
895
|
const r = n.closest("[data-group]") || n.parentElement;
|
|
896
|
-
return
|
|
896
|
+
return S(r) ? !0 : r ? r.style.display !== "none" : !0;
|
|
897
897
|
}
|
|
898
898
|
} else if (e.type === "variable" && e.key)
|
|
899
899
|
if (e.isMultiVariable) {
|
|
@@ -901,8 +901,8 @@ function ct(t, m, s, o) {
|
|
|
901
901
|
`[data-type="variable"][data-multi-key="${e.key}"]`
|
|
902
902
|
);
|
|
903
903
|
if (n.length > 0) {
|
|
904
|
-
const r = n[0],
|
|
905
|
-
return
|
|
904
|
+
const r = n[0], c = r.closest("[data-group]") || r.parentElement;
|
|
905
|
+
return S(c) ? !0 : c ? c.style.display !== "none" : !0;
|
|
906
906
|
}
|
|
907
907
|
} else {
|
|
908
908
|
const n = t.current.querySelector(
|
|
@@ -910,7 +910,7 @@ function ct(t, m, s, o) {
|
|
|
910
910
|
);
|
|
911
911
|
if (n) {
|
|
912
912
|
const r = n.closest("[data-group]") || n.parentElement;
|
|
913
|
-
return
|
|
913
|
+
return S(r) ? !0 : r ? r.style.display !== "none" : !0;
|
|
914
914
|
}
|
|
915
915
|
}
|
|
916
916
|
else if (e.type === "select" && e.key) {
|
|
@@ -919,7 +919,7 @@ function ct(t, m, s, o) {
|
|
|
919
919
|
);
|
|
920
920
|
if (n) {
|
|
921
921
|
const r = n.closest("[data-group]") || n.parentElement;
|
|
922
|
-
return
|
|
922
|
+
return S(r) ? !0 : r ? r.style.display !== "none" : !0;
|
|
923
923
|
}
|
|
924
924
|
} else if (e.type === "textarea" && e.key) {
|
|
925
925
|
const n = t.current.querySelector(
|
|
@@ -927,7 +927,7 @@ function ct(t, m, s, o) {
|
|
|
927
927
|
);
|
|
928
928
|
if (n) {
|
|
929
929
|
const r = n.closest("[data-group]") || n.parentElement;
|
|
930
|
-
return
|
|
930
|
+
return S(r) ? !0 : r ? r.style.display !== "none" : !0;
|
|
931
931
|
}
|
|
932
932
|
} else if (e.type === "richtext" && e.key) {
|
|
933
933
|
const n = t.current.querySelector(
|
|
@@ -935,7 +935,7 @@ function ct(t, m, s, o) {
|
|
|
935
935
|
);
|
|
936
936
|
if (n) {
|
|
937
937
|
const r = n.closest("[data-group]") || n.parentElement;
|
|
938
|
-
return
|
|
938
|
+
return S(r) ? !0 : r ? r.style.display !== "none" : !0;
|
|
939
939
|
}
|
|
940
940
|
} else if (e.type === "datepicker" && e.key) {
|
|
941
941
|
const n = t.current.querySelector(
|
|
@@ -943,7 +943,7 @@ function ct(t, m, s, o) {
|
|
|
943
943
|
);
|
|
944
944
|
if (n) {
|
|
945
945
|
const r = n.closest("[data-group]") || n.parentElement;
|
|
946
|
-
return
|
|
946
|
+
return S(r) ? !0 : r ? r.style.display !== "none" : !0;
|
|
947
947
|
}
|
|
948
948
|
}
|
|
949
949
|
return !1;
|
|
@@ -963,15 +963,15 @@ function ct(t, m, s, o) {
|
|
|
963
963
|
);
|
|
964
964
|
let H = (E.length === 0, !0);
|
|
965
965
|
for (const e of E) {
|
|
966
|
-
const n = e.filter((
|
|
966
|
+
const n = e.filter((c) => {
|
|
967
967
|
if (!t.current) return !1;
|
|
968
|
-
if (
|
|
969
|
-
const
|
|
970
|
-
`[data-group="${
|
|
968
|
+
if (c.exclusionGroup) {
|
|
969
|
+
const p = t.current.querySelectorAll(
|
|
970
|
+
`[data-group="${c.exclusionGroup}"]`
|
|
971
971
|
);
|
|
972
|
-
if (
|
|
973
|
-
const
|
|
974
|
-
return
|
|
972
|
+
if (p.length > 0) {
|
|
973
|
+
const D = p[0];
|
|
974
|
+
return S(D) ? !0 : D.style.display !== "none";
|
|
975
975
|
}
|
|
976
976
|
}
|
|
977
977
|
return !0;
|
|
@@ -979,85 +979,85 @@ function ct(t, m, s, o) {
|
|
|
979
979
|
if (n.length === 0)
|
|
980
980
|
continue;
|
|
981
981
|
let r = !1;
|
|
982
|
-
for (const
|
|
983
|
-
if (
|
|
984
|
-
if (
|
|
985
|
-
let
|
|
986
|
-
const
|
|
987
|
-
`[data-type="upload"][data-batch-key="${
|
|
982
|
+
for (const c of n)
|
|
983
|
+
if (c.type === "upload" && c.key) {
|
|
984
|
+
if (c.minCount && c.minCount > 0) {
|
|
985
|
+
let p = 0;
|
|
986
|
+
const D = t.current.querySelectorAll(
|
|
987
|
+
`[data-type="upload"][data-batch-key="${c.key}"]`
|
|
988
988
|
);
|
|
989
|
-
if (
|
|
989
|
+
if (D.length === 0)
|
|
990
990
|
continue;
|
|
991
|
-
for (let
|
|
992
|
-
const j =
|
|
993
|
-
j && s[j] != null && (
|
|
991
|
+
for (let T = 0; T < D.length; T++) {
|
|
992
|
+
const j = D[T].dataset.key;
|
|
993
|
+
j && s[j] != null && (p += 1);
|
|
994
994
|
}
|
|
995
|
-
if (
|
|
995
|
+
if (p >= c.minCount) {
|
|
996
996
|
r = !0;
|
|
997
997
|
break;
|
|
998
998
|
}
|
|
999
|
-
} else if (s[
|
|
999
|
+
} else if (s[c.key] !== null && s[c.key] !== void 0) {
|
|
1000
1000
|
r = !0;
|
|
1001
1001
|
break;
|
|
1002
1002
|
}
|
|
1003
|
-
} else if (
|
|
1004
|
-
if (
|
|
1005
|
-
const
|
|
1006
|
-
`[data-type="variable"][data-multi-key="${
|
|
1003
|
+
} else if (c.type === "variable" && c.key)
|
|
1004
|
+
if (c.isMultiVariable) {
|
|
1005
|
+
const p = t.current.querySelectorAll(
|
|
1006
|
+
`[data-type="variable"][data-multi-key="${c.key}"]`
|
|
1007
1007
|
);
|
|
1008
|
-
let
|
|
1009
|
-
for (const z of Array.from(
|
|
1008
|
+
let D = 0;
|
|
1009
|
+
for (const z of Array.from(p)) {
|
|
1010
1010
|
if (z.classList.contains("show-placeholder"))
|
|
1011
1011
|
continue;
|
|
1012
|
-
z.innerText.replace(/[\u200B\n]/g, "").trim().length > 0 && (
|
|
1012
|
+
z.innerText.replace(/[\u200B\n]/g, "").trim().length > 0 && (D += 1);
|
|
1013
1013
|
}
|
|
1014
|
-
const
|
|
1015
|
-
if (
|
|
1014
|
+
const T = c.minCount && c.minCount > 0 ? c.minCount : 1;
|
|
1015
|
+
if (D >= T) {
|
|
1016
1016
|
r = !0;
|
|
1017
1017
|
break;
|
|
1018
1018
|
}
|
|
1019
1019
|
} else {
|
|
1020
|
-
const
|
|
1021
|
-
`[data-type="variable"][data-key="${
|
|
1020
|
+
const p = t.current.querySelector(
|
|
1021
|
+
`[data-type="variable"][data-key="${c.key}"]`
|
|
1022
1022
|
);
|
|
1023
|
-
if (
|
|
1024
|
-
if (
|
|
1023
|
+
if (p) {
|
|
1024
|
+
if (p.classList.contains("show-placeholder"))
|
|
1025
1025
|
continue;
|
|
1026
|
-
if (
|
|
1026
|
+
if (p.innerText.replace(/[\u200B\n]/g, "").trim().length > 0) {
|
|
1027
1027
|
r = !0;
|
|
1028
1028
|
break;
|
|
1029
1029
|
}
|
|
1030
1030
|
}
|
|
1031
1031
|
}
|
|
1032
|
-
else if (
|
|
1033
|
-
const
|
|
1034
|
-
`[data-type="select"][data-key="${
|
|
1032
|
+
else if (c.type === "select" && c.key) {
|
|
1033
|
+
const p = t.current.querySelector(
|
|
1034
|
+
`[data-type="select"][data-key="${c.key}"]`
|
|
1035
1035
|
);
|
|
1036
|
-
if (
|
|
1036
|
+
if (p && (p.getAttribute("data-value") || "").trim().length > 0) {
|
|
1037
1037
|
r = !0;
|
|
1038
1038
|
break;
|
|
1039
1039
|
}
|
|
1040
|
-
} else if (
|
|
1041
|
-
const
|
|
1042
|
-
`[data-type="textarea"][data-key="${
|
|
1040
|
+
} else if (c.type === "textarea" && c.key) {
|
|
1041
|
+
const p = t.current.querySelector(
|
|
1042
|
+
`[data-type="textarea"][data-key="${c.key}"]`
|
|
1043
1043
|
);
|
|
1044
|
-
if (
|
|
1044
|
+
if (p && (p.value || "").trim().length > 0) {
|
|
1045
1045
|
r = !0;
|
|
1046
1046
|
break;
|
|
1047
1047
|
}
|
|
1048
|
-
} else if (
|
|
1049
|
-
const
|
|
1050
|
-
`[data-type="richtext"][data-key="${
|
|
1048
|
+
} else if (c.type === "richtext" && c.key) {
|
|
1049
|
+
const p = t.current.querySelector(
|
|
1050
|
+
`[data-type="richtext"][data-key="${c.key}"]`
|
|
1051
1051
|
);
|
|
1052
|
-
if (
|
|
1052
|
+
if (p && b(p).length > 0) {
|
|
1053
1053
|
r = !0;
|
|
1054
1054
|
break;
|
|
1055
1055
|
}
|
|
1056
|
-
} else if (
|
|
1057
|
-
const
|
|
1058
|
-
`[data-type="datepicker"][data-key="${
|
|
1056
|
+
} else if (c.type === "datepicker" && c.key) {
|
|
1057
|
+
const p = t.current.querySelector(
|
|
1058
|
+
`[data-type="datepicker"][data-key="${c.key}"]`
|
|
1059
1059
|
);
|
|
1060
|
-
if (
|
|
1060
|
+
if (p && (p.getAttribute("data-value") || "").trim().length > 0) {
|
|
1061
1061
|
r = !0;
|
|
1062
1062
|
break;
|
|
1063
1063
|
}
|
|
@@ -1079,9 +1079,9 @@ function ct(t, m, s, o) {
|
|
|
1079
1079
|
$ = !1;
|
|
1080
1080
|
break;
|
|
1081
1081
|
}
|
|
1082
|
-
for (let
|
|
1083
|
-
const
|
|
1084
|
-
|
|
1082
|
+
for (let c = 0; c < r.length; c++) {
|
|
1083
|
+
const D = r[c].dataset.key;
|
|
1084
|
+
D && s[D] != null && (n += 1);
|
|
1085
1085
|
}
|
|
1086
1086
|
if (n < e.minCount) {
|
|
1087
1087
|
$ = !1;
|
|
@@ -1097,13 +1097,13 @@ function ct(t, m, s, o) {
|
|
|
1097
1097
|
`[data-type="variable"][data-multi-key="${e.key}"]`
|
|
1098
1098
|
);
|
|
1099
1099
|
let r = 0;
|
|
1100
|
-
for (const
|
|
1101
|
-
if (
|
|
1100
|
+
for (const p of Array.from(n)) {
|
|
1101
|
+
if (p.classList.contains("show-placeholder"))
|
|
1102
1102
|
continue;
|
|
1103
|
-
|
|
1103
|
+
p.innerText.replace(/[\u200B\n]/g, "").trim().length > 0 && (r += 1);
|
|
1104
1104
|
}
|
|
1105
|
-
const
|
|
1106
|
-
if (r <
|
|
1105
|
+
const c = e.minCount && e.minCount > 0 ? e.minCount : 1;
|
|
1106
|
+
if (r < c) {
|
|
1107
1107
|
$ = !1;
|
|
1108
1108
|
break;
|
|
1109
1109
|
}
|
|
@@ -1144,7 +1144,7 @@ function ct(t, m, s, o) {
|
|
|
1144
1144
|
const n = t.current.querySelector(
|
|
1145
1145
|
`[data-type="richtext"][data-key="${e.key}"]`
|
|
1146
1146
|
);
|
|
1147
|
-
if (!n ||
|
|
1147
|
+
if (!n || b(n).length === 0) {
|
|
1148
1148
|
$ = !1;
|
|
1149
1149
|
break;
|
|
1150
1150
|
}
|
|
@@ -1159,41 +1159,41 @@ function ct(t, m, s, o) {
|
|
|
1159
1159
|
}
|
|
1160
1160
|
o(H && $);
|
|
1161
1161
|
}
|
|
1162
|
-
function
|
|
1162
|
+
function it(t, m) {
|
|
1163
1163
|
if (!t.current) return;
|
|
1164
1164
|
t.current.querySelectorAll('[data-type="variable"]').forEach((o) => {
|
|
1165
|
-
const
|
|
1166
|
-
|
|
1165
|
+
const b = o.innerText;
|
|
1166
|
+
b.replace(/\u200B/g, "").trim().length === 0 ? (b !== "" && (o.innerText = ""), o.classList.add("show-placeholder")) : o.classList.remove("show-placeholder");
|
|
1167
1167
|
});
|
|
1168
1168
|
}
|
|
1169
|
-
const
|
|
1170
|
-
const s = t.dataset.key, o = t.dataset.placeholder,
|
|
1169
|
+
const Bn = ({ host: t, onChange: m }) => {
|
|
1170
|
+
const s = t.dataset.key, o = t.dataset.placeholder, b = t.dataset.options ? decodeURIComponent(t.dataset.options) : "[]", S = t.dataset.required === "true", I = t.dataset.value || "", A = an.useMemo(() => {
|
|
1171
1171
|
try {
|
|
1172
|
-
return JSON.parse(
|
|
1172
|
+
return JSON.parse(b);
|
|
1173
1173
|
} catch {
|
|
1174
1174
|
return [];
|
|
1175
1175
|
}
|
|
1176
|
-
}, [
|
|
1176
|
+
}, [b]), [E, C] = le(I || void 0), [N, k] = le(80), H = (e) => {
|
|
1177
1177
|
const r = document.createElement("canvas").getContext("2d");
|
|
1178
1178
|
return r ? (r.font = '14px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif', r.measureText(e).width) : e.length * 14;
|
|
1179
1179
|
};
|
|
1180
1180
|
pe(() => {
|
|
1181
|
-
const e = E ? A.find((
|
|
1181
|
+
const e = E ? A.find((c) => c.value === E)?.label || E : o || "请选择", n = H(e), r = Math.max(64, Math.ceil(n + 40));
|
|
1182
1182
|
k(r);
|
|
1183
1183
|
}, [E, A, o]);
|
|
1184
1184
|
const $ = (e) => {
|
|
1185
1185
|
C(e), t.setAttribute("data-value", e), m(s, e);
|
|
1186
1186
|
};
|
|
1187
1187
|
return pe(() => {
|
|
1188
|
-
C(
|
|
1189
|
-
}, [
|
|
1190
|
-
/* @__PURE__ */
|
|
1188
|
+
C(I || void 0);
|
|
1189
|
+
}, [I]), mt(
|
|
1190
|
+
/* @__PURE__ */ M(
|
|
1191
1191
|
"div",
|
|
1192
1192
|
{
|
|
1193
1193
|
className: "rte-select-wrapper",
|
|
1194
1194
|
contentEditable: !1,
|
|
1195
1195
|
style: { display: "inline-block", minWidth: N, width: N },
|
|
1196
|
-
children: /* @__PURE__ */
|
|
1196
|
+
children: /* @__PURE__ */ M(
|
|
1197
1197
|
et,
|
|
1198
1198
|
{
|
|
1199
1199
|
value: E,
|
|
@@ -1201,30 +1201,30 @@ const In = ({ host: t, onChange: m }) => {
|
|
|
1201
1201
|
placeholder: o || "请选择",
|
|
1202
1202
|
style: { width: "100%", minWidth: N },
|
|
1203
1203
|
options: A,
|
|
1204
|
-
allowClear: !
|
|
1204
|
+
allowClear: !S,
|
|
1205
1205
|
size: "small",
|
|
1206
1206
|
dropdownClassName: "rte-select-dropdown",
|
|
1207
1207
|
getPopupContainer: () => document.body,
|
|
1208
1208
|
dropdownMatchSelectWidth: !1,
|
|
1209
|
-
suffixIcon: /* @__PURE__ */
|
|
1209
|
+
suffixIcon: /* @__PURE__ */ M("i", { className: "iconfont icon-qiehuan-xiayizhang", style: { fontSize: "10px", color: "#7C3AED" } })
|
|
1210
1210
|
}
|
|
1211
1211
|
)
|
|
1212
1212
|
}
|
|
1213
1213
|
),
|
|
1214
1214
|
t
|
|
1215
1215
|
);
|
|
1216
|
-
},
|
|
1216
|
+
}, Hn = (t) => {
|
|
1217
1217
|
const [m, s] = le([]);
|
|
1218
1218
|
return pe(() => {
|
|
1219
1219
|
const o = t.current;
|
|
1220
1220
|
if (!o) return;
|
|
1221
|
-
const
|
|
1222
|
-
const
|
|
1223
|
-
|
|
1221
|
+
const b = () => {
|
|
1222
|
+
const I = o.querySelectorAll(".rte-select-host"), A = [];
|
|
1223
|
+
I.forEach((E) => {
|
|
1224
1224
|
const C = E.getAttribute("data-key");
|
|
1225
1225
|
C && A.push(
|
|
1226
|
-
/* @__PURE__ */
|
|
1227
|
-
|
|
1226
|
+
/* @__PURE__ */ M(
|
|
1227
|
+
Bn,
|
|
1228
1228
|
{
|
|
1229
1229
|
host: E,
|
|
1230
1230
|
onChange: () => {
|
|
@@ -1239,10 +1239,10 @@ const In = ({ host: t, onChange: m }) => {
|
|
|
1239
1239
|
);
|
|
1240
1240
|
}), s(A);
|
|
1241
1241
|
};
|
|
1242
|
-
|
|
1243
|
-
const
|
|
1242
|
+
b();
|
|
1243
|
+
const S = new MutationObserver((I) => {
|
|
1244
1244
|
let A = !1;
|
|
1245
|
-
for (const E of
|
|
1245
|
+
for (const E of I)
|
|
1246
1246
|
if (E.type === "childList") {
|
|
1247
1247
|
let C = !1;
|
|
1248
1248
|
if (E.addedNodes.forEach((N) => {
|
|
@@ -1260,12 +1260,12 @@ const In = ({ host: t, onChange: m }) => {
|
|
|
1260
1260
|
break;
|
|
1261
1261
|
}
|
|
1262
1262
|
}
|
|
1263
|
-
A &&
|
|
1263
|
+
A && b();
|
|
1264
1264
|
});
|
|
1265
|
-
return
|
|
1265
|
+
return S.observe(o, { childList: !0, subtree: !0 }), () => S.disconnect();
|
|
1266
1266
|
}, [t]), m;
|
|
1267
1267
|
}, Xe = (t) => t.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
1268
|
-
function
|
|
1268
|
+
function Pn(t, m, s, o, b, S = {}, I, A) {
|
|
1269
1269
|
if (!t.current) return;
|
|
1270
1270
|
const E = /[;;,,。.!!??::、]/, C = (e) => {
|
|
1271
1271
|
const n = (e ?? "").trim();
|
|
@@ -1273,8 +1273,8 @@ function Bn(t, m, s, o, g, T = {}, M, A) {
|
|
|
1273
1273
|
}, N = (e) => {
|
|
1274
1274
|
const n = e ?? "", r = n.match(new RegExp(`^\\s*(${E.source})`));
|
|
1275
1275
|
if (!r) return null;
|
|
1276
|
-
const
|
|
1277
|
-
return { punct:
|
|
1276
|
+
const c = r[1], p = n.replace(new RegExp(`^\\s*${E.source}`), "");
|
|
1277
|
+
return { punct: c, rest: p };
|
|
1278
1278
|
}, k = (e) => `<span data-type="text" class="rte-inline-punct" contenteditable="false">${e}</span>`, H = [];
|
|
1279
1279
|
let $ = 0;
|
|
1280
1280
|
for (; $ < m.length; ) {
|
|
@@ -1285,10 +1285,10 @@ function Bn(t, m, s, o, g, T = {}, M, A) {
|
|
|
1285
1285
|
const F = e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : "", O = `<span ${F} class="exclusion-wrapper required-upload-group">`, G = "</span>";
|
|
1286
1286
|
let _ = "";
|
|
1287
1287
|
e.className ? _ = `<span class="${e.className}">${e.text ?? ""}</span>` : _ = e.text ?? "";
|
|
1288
|
-
const R = n, J = s[R.key] !== null && s[R.key] !== void 0,
|
|
1289
|
-
let
|
|
1290
|
-
J &&
|
|
1291
|
-
const U = (R.text || "").trim(), ie = J && U.length >= 12 ? `<span ${F} contenteditable="false" class="exclusion-wrapper upload-hint">${U}</span>` : "", me = `<span contenteditable="false" data-type="upload" data-key="${R.key}" class="upload-chip"><span class="upload-inner-wrapper ${
|
|
1288
|
+
const R = n, J = s[R.key] !== null && s[R.key] !== void 0, u = J ? s[R.key] : null, f = J ? s[R.key]?.name : R.text, v = J ? "" : "hidden", B = R.tooltip && !J ? "" : "hidden", L = J ? "has-file" : "", W = J && f ? ` data-file-name="${f.replace(/"/g, """)}"` : "";
|
|
1289
|
+
let d = "";
|
|
1290
|
+
J && u ? u.type?.startsWith("image/") ? d = `<img class="upload-icon-img upload-icon-preview" src="${URL.createObjectURL(u)}" alt="preview" />` : d = "<i class='iconfont icon-exlwenjian'></i>" : d = "<i class='iconfont icon-shangchuan1'></i>";
|
|
1291
|
+
const U = (R.text || "").trim(), ie = J && U.length >= 12 ? `<span ${F} contenteditable="false" class="exclusion-wrapper upload-hint">${U}</span>` : "", me = `<span contenteditable="false" data-type="upload" data-key="${R.key}" class="upload-chip"><span class="upload-inner-wrapper ${L}"><span class="upload-icon">${d}</span><span class="upload-label"${W}>${f || R.text}</span>${R.tooltip ? `<i contenteditable="false" style="font-weight: 100;" class="iconfont icon-tishi upload-info-icon ${B}" data-upload-key="${R.key}" data-tooltip="${R.tooltip}"></i>` : ""}<span class="file-remove-btn ${v}" title="移除文件">×</span></span></span>`;
|
|
1292
1292
|
H.push(O + _ + me + G + ie), $ += 2;
|
|
1293
1293
|
continue;
|
|
1294
1294
|
}
|
|
@@ -1296,25 +1296,25 @@ function Bn(t, m, s, o, g, T = {}, M, A) {
|
|
|
1296
1296
|
const O = `<span ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper required-upload-group">`, G = "</span>";
|
|
1297
1297
|
let _ = "";
|
|
1298
1298
|
e.className ? _ = `<span class="${e.className}">${e.text ?? ""}</span>` : _ = e.text ?? "";
|
|
1299
|
-
const R = n,
|
|
1299
|
+
const R = n, u = (R.key ? b[R.key] : void 0) || R.text || "", f = !u, v = f ? "" : u, B = f ? "show-placeholder" : "", L = R.exclusionGroup ? ` data-group="${R.exclusionGroup}"` : "", W = R.tooltip ? ` data-tooltip="${R.tooltip.replace(/"/g, """)}" data-variable-key="${R.key || ""}"` : "", d = R.tooltip && f ? "" : "hidden", U = `<span contenteditable="true" data-type="variable" data-key="${R.key}" data-placeholder="${R.placeholder || ""}"${L}${W} class="variable-chip ${B}">${v}${R.tooltip ? `<i contenteditable="false" style="font-weight: 100;" class="iconfont icon-tishi variable-info-icon ${d}" data-variable-key="${R.key}" data-tooltip="${R.tooltip.replace(/"/g, """)}" ></i>` : ""}</span>`;
|
|
1300
1300
|
H.push(O + _ + U + G), $ += 2;
|
|
1301
1301
|
continue;
|
|
1302
1302
|
}
|
|
1303
1303
|
}
|
|
1304
|
-
const
|
|
1305
|
-
let
|
|
1304
|
+
const c = e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : "", p = e.exclusionGroup ? `<span ${c} class="exclusion-wrapper">` : "", D = e.exclusionGroup ? "</span>" : "";
|
|
1305
|
+
let T = "";
|
|
1306
1306
|
if (e.type === "tag") {
|
|
1307
|
-
const Y = o ||
|
|
1308
|
-
|
|
1307
|
+
const Y = o || I === "hideTagClose" ? "" : '<span class="tag-close-btn" title="Clear (ESC)"><svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"><path d="M18 6L6 18M6 6l12 12"/></svg></span>', F = o ? ' data-locked="true"' : "", O = e.tooltip ? ` data-tooltip="${e.tooltip.replace(/"/g, """)}" data-tag-key="${e.key || ""}"` : "";
|
|
1308
|
+
T = `<span contenteditable="false" class="tag-node group"${F}${O}><span class="tag-label">${e.text}</span>${Y}</span>`;
|
|
1309
1309
|
} else if (e.type === "text") {
|
|
1310
1310
|
const j = o ? ' data-locked="true" contenteditable="false"' : ' contenteditable="false"', F = (e.text ?? "").replace(/\n/g, "<br/>");
|
|
1311
|
-
e.className ?
|
|
1311
|
+
e.className ? T = `<span data-type="text" class="${e.className}"${j}>${F}</span>` : T = o ? `<span data-type="text"${j}>${F}</span>` : `<span data-type="text" contenteditable="false">${F}</span>`;
|
|
1312
1312
|
} else if (e.type === "variable" && e.key) {
|
|
1313
|
-
const Y =
|
|
1314
|
-
e.required ?
|
|
1313
|
+
const Y = b[e.key] || e.text || "", F = !Y, O = F ? "" : Y, G = F ? "show-placeholder" : "", _ = e.exclusionGroup ? ` data-group="${e.exclusionGroup}"` : "", R = e.tooltip ? ` data-tooltip="${e.tooltip.replace(/"/g, """)}" data-variable-key="${e.key || ""}"` : "", J = e.tooltip && F ? "" : "hidden", u = `<span contenteditable="true" data-type="variable" data-key="${e.key}" data-placeholder="${e.placeholder || ""}"${_}${R} class="variable-chip ${G}">${O}${e.tooltip ? `<i contenteditable="false" style="font-weight: 100;" class="iconfont icon-tishi variable-info-icon ${J}" data-variable-key="${e.key}" data-tooltip="${e.tooltip.replace(/"/g, """)}" ></i>` : ""}</span>`;
|
|
1314
|
+
e.required ? T = `<span ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper required-upload-group"><span class="rte-text-required"><i class='iconfont icon-bitian' style='font-size: 10px;'></i></span>${u}</span>` : T = u;
|
|
1315
1315
|
} else if (e.type === "report-url" && e.key) {
|
|
1316
|
-
const Y =
|
|
1317
|
-
e.required ?
|
|
1316
|
+
const Y = b[e.key] || e.text || "", F = !Y, O = F ? "" : Y, G = F ? "show-placeholder" : "", _ = e.exclusionGroup ? ` data-group="${e.exclusionGroup}"` : "", R = e.tooltip ? ` data-tooltip="${Xe(e.tooltip)}" data-variable-key="${e.key || ""}"` : "", J = e.tooltip && F ? "" : "hidden", u = `<span contenteditable="true" data-type="variable" data-key="${e.key}" data-node-type="report-url" data-placeholder="${Xe(e.placeholder || "")}"${_}${R} class="variable-chip rte-report-url ${G}">${O}${e.tooltip ? `<i contenteditable="false" style="font-weight: 100;" class="iconfont icon-tishi variable-info-icon ${J}" data-variable-key="${e.key}" data-tooltip="${Xe(e.tooltip)}" ></i>` : ""}</span>`;
|
|
1317
|
+
e.required ? T = `<span ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper required-upload-group"><span class="rte-text-required"><i class='iconfont icon-bitian' style='font-size: 10px;'></i></span>${u}</span>` : T = u;
|
|
1318
1318
|
} else if (e.type === "upload" && e.key)
|
|
1319
1319
|
if (typeof e.maxCount == "number" && typeof e.minCount == "number" && e.maxCount > 1) {
|
|
1320
1320
|
const Y = e.minCount || 1, F = e.maxCount || 3;
|
|
@@ -1329,55 +1329,55 @@ function Bn(t, m, s, o, g, T = {}, M, A) {
|
|
|
1329
1329
|
);
|
|
1330
1330
|
let _ = "";
|
|
1331
1331
|
for (let R = 0; R < G; R++) {
|
|
1332
|
-
const J = `${e.key}-${R}`,
|
|
1332
|
+
const J = `${e.key}-${R}`, u = s[J] !== null && s[J] !== void 0, f = u ? s[J] : null, v = u ? s[J]?.name : e.text, B = u ? "" : "hidden", L = e.tooltip && !u ? "" : "hidden", W = u ? "has-file" : "", d = u && v ? ` data-file-name="${v.replace(/"/g, """)}"` : "";
|
|
1333
1333
|
let U = "";
|
|
1334
|
-
|
|
1335
|
-
const ee = ` data-batch-key="${e.key}"`, ie = ` data-batch-index="${R}"`, me = `<span contenteditable="false" data-type="upload" data-key="${J}"${ee}${ie} class="upload-chip upload-chip-batch"><span class="upload-inner-wrapper ${W}"><span class="upload-icon">${U}</span><span class="upload-label"${
|
|
1334
|
+
u && f ? f.type?.startsWith("image/") ? U = `<img class="upload-icon-img upload-icon-preview" src="${URL.createObjectURL(f)}" alt="preview" />` : U = "<i class='iconfont icon-exlwenjian'></i>" : U = "<i class='iconfont icon-shangchuan1'></i>";
|
|
1335
|
+
const ee = ` data-batch-key="${e.key}"`, ie = ` data-batch-index="${R}"`, me = `<span contenteditable="false" data-type="upload" data-key="${J}"${ee}${ie} class="upload-chip upload-chip-batch"><span class="upload-inner-wrapper ${W}"><span class="upload-icon">${U}</span><span class="upload-label"${d}>${v || e.text}</span>${e.tooltip ? `<i contenteditable="false" style="font-weight: 100;" class="iconfont icon-tishi upload-info-icon ${L}" data-upload-key="${J}" data-tooltip="${e.tooltip}" ></i>` : ""}<span class="file-remove-btn ${B}" title="移除文件">×</span></span></span>`;
|
|
1336
1336
|
_ += me;
|
|
1337
1337
|
}
|
|
1338
|
-
e.required ?
|
|
1338
|
+
e.required ? T = `<span ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper required-upload-group rte-required-upload-batch"><span class="rte-text-required"><i class='iconfont icon-bitian' style='font-size: 10px;'></i></span><span class="rte-upload-batch-chips">${_}</span></span>` : T = `<span ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper rte-upload-batch-chips">${_}</span>`;
|
|
1339
1339
|
} else {
|
|
1340
1340
|
const Y = s[e.key] !== null && s[e.key] !== void 0, F = Y ? s[e.key] : null, O = Y ? s[e.key]?.name : e.text, G = Y ? "" : "hidden", _ = e.tooltip && !Y ? "" : "hidden", R = Y ? "has-file" : "", J = Y && O ? ` data-file-name="${O.replace(/"/g, """)}"` : "";
|
|
1341
|
-
let
|
|
1342
|
-
Y && F ? F.type?.startsWith("image/") ?
|
|
1343
|
-
const
|
|
1344
|
-
e.required ?
|
|
1341
|
+
let u = "";
|
|
1342
|
+
Y && F ? F.type?.startsWith("image/") ? u = `<img class="upload-icon-img upload-icon-preview" src="${URL.createObjectURL(F)}" alt="preview" />` : u = "<i class='iconfont icon-exlwenjian'></i>" : u = "<i class='iconfont icon-shangchuan1'></i>";
|
|
1343
|
+
const f = (e.text || "").trim(), B = Y && e.showHint === !0 && f.length >= 12 ? `<span ${c} contenteditable="false" class="exclusion-wrapper upload-hint">${f}</span>` : "", L = `<span contenteditable="false" data-type="upload" data-key="${e.key}" class="upload-chip"><span class="upload-inner-wrapper ${R}"><span class="upload-icon">${u}</span><span class="upload-label"${J}>${O || e.text}</span>${e.tooltip ? `<i contenteditable="false" style="font-weight: 100;" class="iconfont icon-tishi upload-info-icon ${_}" data-upload-key="${e.key}" data-tooltip="${e.tooltip}" ></i>` : ""}<span class="file-remove-btn ${G}" title="移除文件">×</span></span></span>`;
|
|
1344
|
+
e.required ? T = `<span ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper required-upload-group"><span class="rte-text-required"><i class='iconfont icon-bitian' style='font-size: 10px;'></i></span>${L}</span>${B}` : T = L + B;
|
|
1345
1345
|
}
|
|
1346
1346
|
else if (e.type === "select" && e.key) {
|
|
1347
|
-
const j =
|
|
1348
|
-
e.required ?
|
|
1347
|
+
const j = b[e.key] || e.defaultValue || "", Y = encodeURIComponent(JSON.stringify(e.options || [])), F = e.placeholder ? ` data-placeholder="${e.placeholder}"` : "", O = e.exclusionGroup ? ` data-group="${e.exclusionGroup}"` : "", G = e.required ? ' data-required="true"' : "", _ = `<div data-type="select" data-key="${e.key}" data-value="${j}" data-options="${Y}"${F}${O}${G} class="rte-select-host"></div>`;
|
|
1348
|
+
e.required ? T = `<span ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper required-upload-group"><span class="rte-text-required"><i class='iconfont icon-bitian' style='font-size: 10px;'></i></span>${_}</span>` : T = _;
|
|
1349
1349
|
} else if (e.type === "textarea" && e.key) {
|
|
1350
|
-
const j =
|
|
1351
|
-
e.required ?
|
|
1350
|
+
const j = b[e.key] || "", Y = typeof e.maxHeight == "number" ? e.maxHeight : A?.textarea?.maxHeight ?? 252, F = typeof e.expandable == "boolean" ? e.expandable : A?.textarea?.expandable ?? !0, O = e.placeholder ? ` placeholder="${e.placeholder}"` : "", G = `<textarea data-type="textarea" data-key="${e.key}" class="rte-textarea" data-max-height="${Y}" style="max-height:${Y}px;"${O}>${j}</textarea>`, _ = F ? `<button type="button" class="rte-textarea-toggle" data-key="${e.key}" data-expanded="false">展开</button>` : "", R = `<div class="rte-textarea-wrapper" data-key="${e.key}">${G}${_}</div>`;
|
|
1351
|
+
e.required ? T = `<span ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper required-upload-group"><span class="rte-text-required"><i class='iconfont icon-bitian' style='font-size: 10px;'></i></span>${R}</span>` : T = R;
|
|
1352
1352
|
} else if (e.type === "richtext" && e.key) {
|
|
1353
|
-
const j =
|
|
1354
|
-
e.required ?
|
|
1353
|
+
const j = b[e.key] || e.text || "", Y = typeof e.minHeight == "number" ? e.minHeight : A?.richtext?.minHeight ?? 40, F = typeof e.maxHeight == "number" ? e.maxHeight : A?.richtext?.maxHeight ?? 160, O = Math.max(F, Y), G = e.placeholder ? ` data-placeholder="${e.placeholder}"` : "", _ = typeof e.expandable == "boolean" ? e.expandable : A?.richtext?.expandable ?? !0, R = j, J = `<div contenteditable="true" data-type="richtext" data-key="${e.key}" class="rte-richtext"${G} style="min-height:${Y}px;max-height:${O}px;overflow:auto;">${R}</div>`, u = _ ? `<button type="button" class="rte-richtext-toggle" data-key="${e.key}" data-expanded="false"><i class="iconfont icon-zhankai2"></i><span class="rte-richtext-toggle-label">展开</span></button>` : "", f = `<div class="rte-richtext-wrapper" data-key="${e.key}">${J}${u}</div>`, v = `<div class="rte-richtext-container" data-key="${e.key}">${f}</div>`;
|
|
1354
|
+
e.required ? T = `<div ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper rte-richtext-required">${v}</div>` : T = v;
|
|
1355
1355
|
} else if (e.type === "report-module" && e.key) {
|
|
1356
|
-
const Y = Object.prototype.hasOwnProperty.call(
|
|
1357
|
-
e.required ?
|
|
1356
|
+
const Y = Object.prototype.hasOwnProperty.call(b, e.key) ? b[e.key] : e.text || "", F = typeof e.minHeight == "number" ? e.minHeight : 80, O = typeof e.maxHeight == "number" ? e.maxHeight : 240, G = Math.max(O, F), _ = e.placeholder ? ` data-placeholder="${Xe(e.placeholder)}"` : "", R = Y, J = `<div contenteditable="true" data-type="richtext" data-key="${e.key}" data-node-type="report-module" class="rte-richtext rte-report-module"${_} style="min-height:${F}px;max-height:${G}px;overflow:auto;">${R}</div>`, u = `<div class="rte-richtext-wrapper rte-report-module-wrapper" data-key="${e.key}">${J}</div>`, f = `<div class="rte-richtext-container rte-report-module-container" data-key="${e.key}">${u}</div>`;
|
|
1357
|
+
e.required ? T = `<div ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper rte-richtext-required">${f}</div>` : T = f;
|
|
1358
1358
|
} else if (e.type === "datepicker" && e.key) {
|
|
1359
|
-
const j =
|
|
1360
|
-
e.required ?
|
|
1359
|
+
const j = b[e.key] || "", Y = e.placeholder ? ` data-placeholder="${e.placeholder}"` : "", F = e.limitRange ? ` data-limit-range="${e.limitRange}"` : "", O = e.disableFuture ? ' data-disable-future="true"' : "", G = `<div data-type="datepicker" data-key="${e.key}" data-value="${j}" class="rte-datepicker-host"${Y}${F}${O}></div>`;
|
|
1360
|
+
e.required ? T = `<span ${e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : ""} class="exclusion-wrapper required-upload-group"><span class="rte-text-required"><i class='iconfont icon-bitian' style='font-size: 10px;'></i></span>${G}</span>` : T = G;
|
|
1361
1361
|
} else if (e.type === "multi-variable" && e.key) {
|
|
1362
|
-
const j = e.maxCount || 9, Y =
|
|
1362
|
+
const j = e.maxCount || 9, Y = S[e.key] || 1, F = Math.min(Y, j);
|
|
1363
1363
|
if (e.required) {
|
|
1364
1364
|
const O = `<span class="rte-text-required"><i class='iconfont icon-bitian' style='font-size: 10px;'></i></span>`, G = e.exclusionGroup ? `data-group="${e.exclusionGroup}"` : "";
|
|
1365
1365
|
let _ = "";
|
|
1366
1366
|
for (let R = 0; R < F; R++) {
|
|
1367
|
-
const J = `${e.key}_${R}`,
|
|
1367
|
+
const J = `${e.key}_${R}`, u = b[J] || "", f = !u, v = f ? "" : u, B = f ? "show-placeholder" : "", L = e.tooltip ? ` data-tooltip="${e.tooltip.replace(/"/g, """)}" data-variable-key="${e.key || ""}"` : "", W = e.tooltip && f ? "" : "hidden", d = e.exclusionGroup ? ` data-group="${e.exclusionGroup}"` : "", U = `<span contenteditable="true" data-type="variable" data-key="${J}" data-multi-key="${e.key}" data-index="${R}" data-placeholder="${e.placeholder || ""}"${d}${L} class="variable-chip ${B}">${v}${e.tooltip ? `<i contenteditable="false" style="font-weight: 100;" class="iconfont icon-tishi variable-info-icon ${W}" data-variable-key="${e.key}" data-tooltip="${e.tooltip.replace(/"/g, """)}" ></i>` : ""}</span>`;
|
|
1368
1368
|
R === 0 ? _ += `<span ${G} class="exclusion-wrapper required-upload-group required-multi-first">${O}${U}</span>` : _ += U;
|
|
1369
1369
|
}
|
|
1370
|
-
|
|
1370
|
+
T = _;
|
|
1371
1371
|
} else {
|
|
1372
1372
|
let O = "";
|
|
1373
1373
|
for (let G = 0; G < F; G++) {
|
|
1374
|
-
const _ = `${e.key}_${G}`, R =
|
|
1374
|
+
const _ = `${e.key}_${G}`, R = b[_] || "", J = !R, u = J ? "" : R, f = J ? "show-placeholder" : "", v = e.tooltip ? ` data-tooltip="${e.tooltip.replace(/"/g, """)}" data-variable-key="${e.key || ""}"` : "", B = e.tooltip && J ? "" : "hidden", L = e.exclusionGroup ? ` data-group="${e.exclusionGroup}"` : "", W = `<span contenteditable="true" data-type="variable" data-key="${_}" data-multi-key="${e.key}" data-index="${G}" data-placeholder="${e.placeholder || ""}"${L}${v} class="variable-chip ${f}">${u}${e.tooltip ? `<i contenteditable="false" style="font-weight: 100;" class="iconfont icon-tishi variable-info-icon ${B}" data-variable-key="${e.key}" data-tooltip="${e.tooltip.replace(/"/g, """)}" ></i>` : ""}</span>`;
|
|
1375
1375
|
O += W;
|
|
1376
1376
|
}
|
|
1377
|
-
|
|
1377
|
+
T = O;
|
|
1378
1378
|
}
|
|
1379
1379
|
}
|
|
1380
|
-
const z =
|
|
1380
|
+
const z = p + T + D;
|
|
1381
1381
|
if (e.type === "text" && !e.className && !e.exclusionGroup) {
|
|
1382
1382
|
if (C(e.text) && H.length > 0) {
|
|
1383
1383
|
const Y = H[H.length - 1], F = (e.text ?? "").trim();
|
|
@@ -1407,7 +1407,7 @@ function Bn(t, m, s, o, g, T = {}, M, A) {
|
|
|
1407
1407
|
});
|
|
1408
1408
|
}, 0));
|
|
1409
1409
|
}
|
|
1410
|
-
function
|
|
1410
|
+
function Vn(t, m, s, o, b = {}, S, I, A, E) {
|
|
1411
1411
|
const C = ce(() => {
|
|
1412
1412
|
if (!t.current) return;
|
|
1413
1413
|
if (m.length === 0) {
|
|
@@ -1421,47 +1421,47 @@ function Hn(t, m, s, o, g = {}, T, M, A, E) {
|
|
|
1421
1421
|
const $ = t.current;
|
|
1422
1422
|
$.__tempVariableValues === H && delete $.__tempVariableValues;
|
|
1423
1423
|
}
|
|
1424
|
-
}, 100)) : (t.current.querySelectorAll('[data-type="variable"]').forEach((
|
|
1425
|
-
const
|
|
1426
|
-
if (
|
|
1427
|
-
const
|
|
1428
|
-
|
|
1424
|
+
}, 100)) : (t.current.querySelectorAll('[data-type="variable"]').forEach((p) => {
|
|
1425
|
+
const D = p.dataset.key;
|
|
1426
|
+
if (D) {
|
|
1427
|
+
const T = p.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
1428
|
+
T && (N[D] = T);
|
|
1429
1429
|
}
|
|
1430
|
-
}), t.current.querySelectorAll('[data-type="select"]').forEach((
|
|
1431
|
-
const
|
|
1432
|
-
if (
|
|
1433
|
-
const
|
|
1434
|
-
|
|
1430
|
+
}), t.current.querySelectorAll('[data-type="select"]').forEach((p) => {
|
|
1431
|
+
const D = p.dataset.key;
|
|
1432
|
+
if (D) {
|
|
1433
|
+
const T = (p.getAttribute("data-value") || "").trim();
|
|
1434
|
+
T && (N[D] = T);
|
|
1435
1435
|
}
|
|
1436
|
-
}), t.current.querySelectorAll('[data-type="textarea"]').forEach((
|
|
1437
|
-
const
|
|
1438
|
-
if (
|
|
1439
|
-
const
|
|
1440
|
-
|
|
1436
|
+
}), t.current.querySelectorAll('[data-type="textarea"]').forEach((p) => {
|
|
1437
|
+
const D = p.dataset.key;
|
|
1438
|
+
if (D) {
|
|
1439
|
+
const T = p.value.replace(/[\u200B]/g, "").trim();
|
|
1440
|
+
T && (N[D] = T);
|
|
1441
1441
|
}
|
|
1442
|
-
}), t.current.querySelectorAll('[data-type="richtext"]').forEach((
|
|
1443
|
-
const
|
|
1444
|
-
if (
|
|
1445
|
-
const
|
|
1446
|
-
(
|
|
1442
|
+
}), t.current.querySelectorAll('[data-type="richtext"]').forEach((p) => {
|
|
1443
|
+
const D = p.dataset.key;
|
|
1444
|
+
if (D) {
|
|
1445
|
+
const T = p.getAttribute("data-node-type") || "", z = T === "report-module" ? (p.innerHTML || "").replace(/[\u200B]/g, "").trim() : (p.textContent || "").replace(/[\u200B]/g, "").trim();
|
|
1446
|
+
(T === "report-module" || z) && (N[D] = z);
|
|
1447
1447
|
}
|
|
1448
|
-
}), t.current.querySelectorAll('[data-type="datepicker"]').forEach((
|
|
1449
|
-
const
|
|
1450
|
-
if (
|
|
1451
|
-
const
|
|
1452
|
-
|
|
1448
|
+
}), t.current.querySelectorAll('[data-type="datepicker"]').forEach((p) => {
|
|
1449
|
+
const D = p.dataset.key;
|
|
1450
|
+
if (D) {
|
|
1451
|
+
const T = (p.getAttribute("data-value") || "").trim();
|
|
1452
|
+
T && (N[D] = T);
|
|
1453
1453
|
}
|
|
1454
|
-
})),
|
|
1454
|
+
})), Pn(
|
|
1455
1455
|
t,
|
|
1456
1456
|
m,
|
|
1457
1457
|
s,
|
|
1458
1458
|
o,
|
|
1459
1459
|
N,
|
|
1460
|
-
|
|
1460
|
+
b,
|
|
1461
1461
|
A,
|
|
1462
1462
|
E
|
|
1463
|
-
),
|
|
1464
|
-
const { key: $, offset: e } =
|
|
1463
|
+
), S?.current) {
|
|
1464
|
+
const { key: $, offset: e } = S.current;
|
|
1465
1465
|
setTimeout(() => {
|
|
1466
1466
|
if (!t.current) return;
|
|
1467
1467
|
const n = t.current.querySelector(
|
|
@@ -1469,22 +1469,22 @@ function Hn(t, m, s, o, g = {}, T, M, A, E) {
|
|
|
1469
1469
|
);
|
|
1470
1470
|
if (n) {
|
|
1471
1471
|
try {
|
|
1472
|
-
const r = document.createRange(),
|
|
1472
|
+
const r = document.createRange(), c = document.createTreeWalker(
|
|
1473
1473
|
n,
|
|
1474
1474
|
NodeFilter.SHOW_TEXT,
|
|
1475
1475
|
null
|
|
1476
1476
|
);
|
|
1477
|
-
let
|
|
1478
|
-
for (;
|
|
1479
|
-
const z =
|
|
1480
|
-
if (
|
|
1481
|
-
|
|
1477
|
+
let p = 0, D = null, T = 0;
|
|
1478
|
+
for (; c.nextNode(); ) {
|
|
1479
|
+
const z = c.currentNode, j = z.textContent?.length || 0;
|
|
1480
|
+
if (p + j >= e) {
|
|
1481
|
+
D = z, T = e - p;
|
|
1482
1482
|
break;
|
|
1483
1483
|
}
|
|
1484
|
-
|
|
1484
|
+
p += j;
|
|
1485
1485
|
}
|
|
1486
|
-
if (
|
|
1487
|
-
r.setStart(
|
|
1486
|
+
if (D) {
|
|
1487
|
+
r.setStart(D, Math.min(T, D.textContent?.length || 0)), r.collapse(!0);
|
|
1488
1488
|
const z = window.getSelection();
|
|
1489
1489
|
z && (z.removeAllRanges(), z.addRange(r), n.focus());
|
|
1490
1490
|
} else {
|
|
@@ -1495,23 +1495,23 @@ function Hn(t, m, s, o, g = {}, T, M, A, E) {
|
|
|
1495
1495
|
} catch {
|
|
1496
1496
|
const r = document.createRange();
|
|
1497
1497
|
r.selectNodeContents(n), r.collapse(!1);
|
|
1498
|
-
const
|
|
1499
|
-
|
|
1498
|
+
const c = window.getSelection();
|
|
1499
|
+
c && (c.removeAllRanges(), c.addRange(r), n.focus());
|
|
1500
1500
|
}
|
|
1501
|
-
|
|
1501
|
+
S.current = null;
|
|
1502
1502
|
}
|
|
1503
1503
|
}, 0);
|
|
1504
1504
|
}
|
|
1505
|
-
}, [m, s, o, t,
|
|
1505
|
+
}, [m, s, o, t, b, S, I, A, E]);
|
|
1506
1506
|
pe(() => {
|
|
1507
1507
|
C();
|
|
1508
1508
|
}, [C]);
|
|
1509
1509
|
}
|
|
1510
|
-
function
|
|
1510
|
+
function On(t, m, s, o) {
|
|
1511
1511
|
pe(() => {
|
|
1512
|
-
const
|
|
1513
|
-
if (!
|
|
1514
|
-
const
|
|
1512
|
+
const b = t.current;
|
|
1513
|
+
if (!b) return;
|
|
1514
|
+
const S = (E) => E.type?.startsWith("image/") ? !0 : /\.(png|jpe?g|gif|webp|bmp|svg)$/i.test(E.name || ""), I = (E) => {
|
|
1515
1515
|
const C = E.target?.closest(".upload-info-icon");
|
|
1516
1516
|
if (C && C.classList.contains("upload-info-icon")) {
|
|
1517
1517
|
const k = C.dataset.uploadKey;
|
|
@@ -1526,7 +1526,7 @@ function Pn(t, m, s, o) {
|
|
|
1526
1526
|
const k = N.dataset.key;
|
|
1527
1527
|
if (k) {
|
|
1528
1528
|
const H = s[k];
|
|
1529
|
-
H &&
|
|
1529
|
+
H && S(H) && o({ key: k, anchorEl: N, type: "upload-preview" });
|
|
1530
1530
|
}
|
|
1531
1531
|
}
|
|
1532
1532
|
}, A = (E) => {
|
|
@@ -1535,7 +1535,7 @@ function Pn(t, m, s, o) {
|
|
|
1535
1535
|
const H = C.closest('[data-type="upload"]');
|
|
1536
1536
|
if (N && H && H.contains(N))
|
|
1537
1537
|
return;
|
|
1538
|
-
if (!N || !
|
|
1538
|
+
if (!N || !b.contains(N))
|
|
1539
1539
|
o(null);
|
|
1540
1540
|
else {
|
|
1541
1541
|
const $ = N.closest('[data-type="upload"]');
|
|
@@ -1551,72 +1551,72 @@ function Pn(t, m, s, o) {
|
|
|
1551
1551
|
o(null);
|
|
1552
1552
|
}
|
|
1553
1553
|
};
|
|
1554
|
-
return
|
|
1555
|
-
|
|
1554
|
+
return b.addEventListener("mouseover", I, !0), b.addEventListener("mouseout", A, !0), () => {
|
|
1555
|
+
b.removeEventListener("mouseover", I, !0), b.removeEventListener("mouseout", A, !0);
|
|
1556
1556
|
};
|
|
1557
1557
|
}, [m, s, t, o]);
|
|
1558
1558
|
}
|
|
1559
|
-
function
|
|
1559
|
+
function Rn(t, m, s, o) {
|
|
1560
1560
|
pe(() => {
|
|
1561
1561
|
if (!t.current) return;
|
|
1562
|
-
const
|
|
1562
|
+
const b = (E) => {
|
|
1563
1563
|
if (o === "hideTagClose")
|
|
1564
1564
|
return;
|
|
1565
1565
|
const C = E.currentTarget, N = C.dataset.tooltip, k = C.dataset.tagKey || "";
|
|
1566
1566
|
N && s({ key: k, anchorEl: C, type: "tag" });
|
|
1567
|
-
},
|
|
1567
|
+
}, S = () => {
|
|
1568
1568
|
s(null);
|
|
1569
1569
|
};
|
|
1570
|
-
let
|
|
1570
|
+
let I;
|
|
1571
1571
|
const A = () => {
|
|
1572
1572
|
if (!t.current) return;
|
|
1573
1573
|
t.current.querySelectorAll(
|
|
1574
1574
|
".tag-node[data-tooltip]"
|
|
1575
1575
|
).forEach((C) => {
|
|
1576
|
-
C.addEventListener("mouseenter",
|
|
1576
|
+
C.addEventListener("mouseenter", b), C.addEventListener("mouseleave", S);
|
|
1577
1577
|
});
|
|
1578
1578
|
};
|
|
1579
|
-
return
|
|
1580
|
-
|
|
1579
|
+
return I = requestAnimationFrame(() => {
|
|
1580
|
+
I = requestAnimationFrame(A);
|
|
1581
1581
|
}), () => {
|
|
1582
|
-
cancelAnimationFrame(
|
|
1582
|
+
cancelAnimationFrame(I), t.current && t.current.querySelectorAll(
|
|
1583
1583
|
".tag-node[data-tooltip]"
|
|
1584
1584
|
).forEach((C) => {
|
|
1585
|
-
C.removeEventListener("mouseenter",
|
|
1585
|
+
C.removeEventListener("mouseenter", b), C.removeEventListener("mouseleave", S);
|
|
1586
1586
|
});
|
|
1587
1587
|
};
|
|
1588
1588
|
}, [m, t, s, o]);
|
|
1589
1589
|
}
|
|
1590
|
-
function
|
|
1590
|
+
function Gn(t, m, s) {
|
|
1591
1591
|
pe(() => {
|
|
1592
1592
|
const o = t.current;
|
|
1593
1593
|
if (!o) return;
|
|
1594
|
-
const
|
|
1595
|
-
const A =
|
|
1594
|
+
const b = (I) => {
|
|
1595
|
+
const A = I.target?.closest(".variable-info-icon");
|
|
1596
1596
|
if (A && A.classList.contains("variable-info-icon")) {
|
|
1597
1597
|
const E = A.dataset.variableKey;
|
|
1598
1598
|
E && s({ key: E, anchorEl: A, type: "variable" });
|
|
1599
1599
|
}
|
|
1600
|
-
},
|
|
1601
|
-
const A =
|
|
1600
|
+
}, S = (I) => {
|
|
1601
|
+
const A = I.target?.closest(".variable-info-icon"), E = I.relatedTarget;
|
|
1602
1602
|
A && A.classList.contains("variable-info-icon") && (!E || !o.contains(E) ? s(null) : E.closest(".variable-info-icon") || s(null));
|
|
1603
1603
|
};
|
|
1604
|
-
return o.addEventListener("mouseover",
|
|
1605
|
-
o.removeEventListener("mouseover",
|
|
1604
|
+
return o.addEventListener("mouseover", b, !0), o.addEventListener("mouseout", S, !0), () => {
|
|
1605
|
+
o.removeEventListener("mouseover", b, !0), o.removeEventListener("mouseout", S, !0);
|
|
1606
1606
|
};
|
|
1607
1607
|
}, [m, t, s]);
|
|
1608
1608
|
}
|
|
1609
|
-
function
|
|
1609
|
+
function Fn(t, m, s, o) {
|
|
1610
1610
|
pe(() => {
|
|
1611
1611
|
if (!t.current) return;
|
|
1612
|
-
const
|
|
1612
|
+
const b = (C) => C.type?.startsWith("image/") ? !0 : /\.(png|jpe?g|gif|webp|bmp|svg)$/i.test(C.name || ""), S = (C) => {
|
|
1613
1613
|
const N = C.currentTarget, k = N.dataset.fileName, H = N.closest('[data-type="upload"]'), $ = H?.dataset.key || "", e = $ ? s[$] : null;
|
|
1614
|
-
if (e &&
|
|
1614
|
+
if (e && b(e)) {
|
|
1615
1615
|
o({ key: $, anchorEl: H || N, type: "upload-preview" });
|
|
1616
1616
|
return;
|
|
1617
1617
|
}
|
|
1618
1618
|
k && o({ key: $, anchorEl: H || N, type: "upload-label" });
|
|
1619
|
-
},
|
|
1619
|
+
}, I = () => {
|
|
1620
1620
|
o(null);
|
|
1621
1621
|
};
|
|
1622
1622
|
let A;
|
|
@@ -1625,7 +1625,7 @@ function Rn(t, m, s, o) {
|
|
|
1625
1625
|
t.current.querySelectorAll(
|
|
1626
1626
|
".upload-label[data-file-name]"
|
|
1627
1627
|
).forEach((N) => {
|
|
1628
|
-
N.addEventListener("mouseenter",
|
|
1628
|
+
N.addEventListener("mouseenter", S), N.addEventListener("mouseleave", I);
|
|
1629
1629
|
});
|
|
1630
1630
|
};
|
|
1631
1631
|
return A = requestAnimationFrame(() => {
|
|
@@ -1634,28 +1634,28 @@ function Rn(t, m, s, o) {
|
|
|
1634
1634
|
cancelAnimationFrame(A), t.current && t.current.querySelectorAll(
|
|
1635
1635
|
".upload-label[data-file-name]"
|
|
1636
1636
|
).forEach((N) => {
|
|
1637
|
-
N.removeEventListener("mouseenter",
|
|
1637
|
+
N.removeEventListener("mouseenter", S), N.removeEventListener("mouseleave", I);
|
|
1638
1638
|
});
|
|
1639
1639
|
};
|
|
1640
1640
|
}, [m, s, t, o]);
|
|
1641
1641
|
}
|
|
1642
|
-
function
|
|
1642
|
+
function zn(t, m, s, o) {
|
|
1643
1643
|
pe(() => {
|
|
1644
|
-
const
|
|
1645
|
-
|
|
1644
|
+
const b = setTimeout(() => {
|
|
1645
|
+
ct(t, m, s), ut(t, m, s, o);
|
|
1646
1646
|
}, 0);
|
|
1647
|
-
return () => clearTimeout(
|
|
1647
|
+
return () => clearTimeout(b);
|
|
1648
1648
|
}, [s, m, t, o]);
|
|
1649
1649
|
}
|
|
1650
|
-
function
|
|
1650
|
+
function Yn(t, m) {
|
|
1651
1651
|
const s = se(0), o = se(0);
|
|
1652
1652
|
pe(() => {
|
|
1653
1653
|
if (!t.current) return;
|
|
1654
|
-
let
|
|
1655
|
-
const
|
|
1656
|
-
|
|
1654
|
+
let b = !1, S = 0;
|
|
1655
|
+
const I = (p) => p instanceof HTMLElement ? !!(p.closest(".rte-datepicker-wrapper") || p.closest(".rte-datepicker-host") || p.closest(".ant-picker") || p.closest(".ant-picker-dropdown")) : !1, A = (p) => p instanceof HTMLElement ? !!(p.closest(".rte-select-wrapper") || p.closest(".rte-select-host") || p.closest(".ant-select") || p.closest(".ant-select-dropdown")) : !1, E = (p) => {
|
|
1656
|
+
b = !0, I(p.target) && (s.current = Date.now(), console.log("[SelectionCtrl] mousedown on datepicker target")), A(p.target) && (o.current = Date.now(), console.log("[SelectionCtrl] mousedown on select target"));
|
|
1657
1657
|
}, C = () => {
|
|
1658
|
-
|
|
1658
|
+
b = !1, S = Date.now();
|
|
1659
1659
|
};
|
|
1660
1660
|
let N = !1, k = 0;
|
|
1661
1661
|
const H = () => {
|
|
@@ -1664,27 +1664,27 @@ function Fn(t, m) {
|
|
|
1664
1664
|
N = !1, k = Date.now();
|
|
1665
1665
|
}, e = () => {
|
|
1666
1666
|
k = Date.now();
|
|
1667
|
-
}, n = (
|
|
1668
|
-
|
|
1667
|
+
}, n = (p) => {
|
|
1668
|
+
I(p.target) && (s.current = Date.now(), console.log("[SelectionCtrl] focusin datepicker target")), A(p.target) && (o.current = Date.now(), console.log("[SelectionCtrl] focusin select target"));
|
|
1669
1669
|
}, r = () => {
|
|
1670
1670
|
if (Date.now() - s.current < 800 || Date.now() - o.current < 800) {
|
|
1671
1671
|
console.log("[SelectionCtrl] skip selectionchange due to recent picker/select interaction");
|
|
1672
1672
|
return;
|
|
1673
1673
|
}
|
|
1674
|
-
const
|
|
1675
|
-
if (
|
|
1676
|
-
|
|
1674
|
+
const p = document.activeElement;
|
|
1675
|
+
if (p && (p.closest(".rte-datepicker-wrapper") || p.closest(".rte-datepicker-host") || p.closest(".ant-picker-dropdown") || // Antd dropdown
|
|
1676
|
+
p.tagName === "INPUT" && p.closest(".ant-picker") || p.closest(".rte-select-wrapper") || p.closest(".rte-select-host") || p.closest(".ant-select") || p.closest(".ant-select-dropdown"))) {
|
|
1677
1677
|
console.log("[SelectionCtrl] activeElement is picker/select; skip");
|
|
1678
1678
|
return;
|
|
1679
1679
|
}
|
|
1680
1680
|
if (!t.current) return;
|
|
1681
|
-
const
|
|
1682
|
-
if (!
|
|
1681
|
+
const D = window.getSelection();
|
|
1682
|
+
if (!D || D.rangeCount === 0 || m.current || b || N || Date.now() - k < 500)
|
|
1683
1683
|
return;
|
|
1684
|
-
const
|
|
1685
|
-
if (!
|
|
1686
|
-
return t.current.contains(
|
|
1687
|
-
const z =
|
|
1684
|
+
const T = D.getRangeAt(0);
|
|
1685
|
+
if (!T.collapsed)
|
|
1686
|
+
return t.current.contains(T.commonAncestorContainer), void 0;
|
|
1687
|
+
const z = D.anchorNode;
|
|
1688
1688
|
if (!z || !t.current.contains(z))
|
|
1689
1689
|
return;
|
|
1690
1690
|
let j = !1, Y = !1;
|
|
@@ -1699,7 +1699,7 @@ function Fn(t, m) {
|
|
|
1699
1699
|
return;
|
|
1700
1700
|
let F = null;
|
|
1701
1701
|
if (z.nodeType === Node.ELEMENT_NODE ? F = z.closest('[data-type="variable"]') : z.nodeType === Node.TEXT_NODE && z.parentElement && (F = z.parentElement.closest('[data-type="variable"]')), !F) {
|
|
1702
|
-
if (Date.now() -
|
|
1702
|
+
if (Date.now() - S > 500)
|
|
1703
1703
|
return;
|
|
1704
1704
|
const O = t.current.querySelectorAll('[data-type="variable"]');
|
|
1705
1705
|
if (O.length > 0) {
|
|
@@ -1711,120 +1711,120 @@ function Fn(t, m) {
|
|
|
1711
1711
|
}
|
|
1712
1712
|
if (!G && O.length > 0 && (G = O[0]), G) {
|
|
1713
1713
|
const _ = document.createRange();
|
|
1714
|
-
_.selectNodeContents(G), _.collapse(!1),
|
|
1714
|
+
_.selectNodeContents(G), _.collapse(!1), D.removeAllRanges(), D.addRange(_), G.focus();
|
|
1715
1715
|
} else
|
|
1716
|
-
|
|
1716
|
+
D.removeAllRanges();
|
|
1717
1717
|
} else
|
|
1718
|
-
|
|
1718
|
+
D.removeAllRanges();
|
|
1719
1719
|
}
|
|
1720
|
-
},
|
|
1721
|
-
return
|
|
1722
|
-
const
|
|
1723
|
-
|
|
1720
|
+
}, c = t.current;
|
|
1721
|
+
return c && (c.addEventListener("compositionstart", H), c.addEventListener("compositionend", $), c.addEventListener("input", e)), document.addEventListener("mousedown", E), document.addEventListener("mouseup", C), document.addEventListener("focusin", n), document.addEventListener("selectionchange", r), () => {
|
|
1722
|
+
const p = t.current;
|
|
1723
|
+
p && (p.removeEventListener("compositionstart", H), p.removeEventListener("compositionend", $), p.removeEventListener("input", e)), document.removeEventListener("mousedown", E), document.removeEventListener("mouseup", C), document.removeEventListener("focusin", n), document.removeEventListener("selectionchange", r);
|
|
1724
1724
|
};
|
|
1725
1725
|
}, [t, m]);
|
|
1726
1726
|
}
|
|
1727
|
-
function
|
|
1727
|
+
function jn(t) {
|
|
1728
1728
|
return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
|
|
1729
1729
|
}
|
|
1730
|
-
var Je = { exports: {} },
|
|
1731
|
-
function
|
|
1732
|
-
return
|
|
1730
|
+
var Je = { exports: {} }, Wn = Je.exports, qt;
|
|
1731
|
+
function Dt() {
|
|
1732
|
+
return qt || (qt = 1, function(t, m) {
|
|
1733
1733
|
(function(s, o) {
|
|
1734
1734
|
t.exports = o();
|
|
1735
|
-
})(
|
|
1736
|
-
var s = 1e3, o = 6e4,
|
|
1737
|
-
var
|
|
1738
|
-
return "[" +
|
|
1739
|
-
} },
|
|
1740
|
-
var B = String(
|
|
1741
|
-
return !B || B.length >=
|
|
1742
|
-
},
|
|
1743
|
-
var
|
|
1744
|
-
return (
|
|
1745
|
-
}, m: function
|
|
1746
|
-
if (
|
|
1747
|
-
var B = 12 * (v.year() -
|
|
1748
|
-
return +(-(B + (v -
|
|
1749
|
-
}, a: function(
|
|
1750
|
-
return
|
|
1751
|
-
}, p: function(
|
|
1752
|
-
return { M: k, y: $, w: N, d: C, D: e, h: E, m: A, s:
|
|
1753
|
-
}, u: function(
|
|
1754
|
-
return
|
|
1735
|
+
})(Wn, function() {
|
|
1736
|
+
var s = 1e3, o = 6e4, b = 36e5, S = "millisecond", I = "second", A = "minute", E = "hour", C = "day", N = "week", k = "month", H = "quarter", $ = "year", e = "date", n = "Invalid Date", r = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/, c = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g, p = { name: "en", weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), ordinal: function(u) {
|
|
1737
|
+
var f = ["th", "st", "nd", "rd"], v = u % 100;
|
|
1738
|
+
return "[" + u + (f[(v - 20) % 10] || f[v] || f[0]) + "]";
|
|
1739
|
+
} }, D = function(u, f, v) {
|
|
1740
|
+
var B = String(u);
|
|
1741
|
+
return !B || B.length >= f ? u : "" + Array(f + 1 - B.length).join(v) + u;
|
|
1742
|
+
}, T = { s: D, z: function(u) {
|
|
1743
|
+
var f = -u.utcOffset(), v = Math.abs(f), B = Math.floor(v / 60), L = v % 60;
|
|
1744
|
+
return (f <= 0 ? "+" : "-") + D(B, 2, "0") + ":" + D(L, 2, "0");
|
|
1745
|
+
}, m: function u(f, v) {
|
|
1746
|
+
if (f.date() < v.date()) return -u(v, f);
|
|
1747
|
+
var B = 12 * (v.year() - f.year()) + (v.month() - f.month()), L = f.clone().add(B, k), W = v - L < 0, d = f.clone().add(B + (W ? -1 : 1), k);
|
|
1748
|
+
return +(-(B + (v - L) / (W ? L - d : d - L)) || 0);
|
|
1749
|
+
}, a: function(u) {
|
|
1750
|
+
return u < 0 ? Math.ceil(u) || 0 : Math.floor(u);
|
|
1751
|
+
}, p: function(u) {
|
|
1752
|
+
return { M: k, y: $, w: N, d: C, D: e, h: E, m: A, s: I, ms: S, Q: H }[u] || String(u || "").toLowerCase().replace(/s$/, "");
|
|
1753
|
+
}, u: function(u) {
|
|
1754
|
+
return u === void 0;
|
|
1755
1755
|
} }, z = "en", j = {};
|
|
1756
|
-
j[z] =
|
|
1757
|
-
var Y = "$isDayjsObject", F = function(
|
|
1758
|
-
return
|
|
1759
|
-
}, O = function
|
|
1760
|
-
var
|
|
1761
|
-
if (!
|
|
1762
|
-
if (typeof
|
|
1763
|
-
var W =
|
|
1764
|
-
j[W] && (
|
|
1765
|
-
var
|
|
1766
|
-
if (!
|
|
1756
|
+
j[z] = p;
|
|
1757
|
+
var Y = "$isDayjsObject", F = function(u) {
|
|
1758
|
+
return u instanceof R || !(!u || !u[Y]);
|
|
1759
|
+
}, O = function u(f, v, B) {
|
|
1760
|
+
var L;
|
|
1761
|
+
if (!f) return z;
|
|
1762
|
+
if (typeof f == "string") {
|
|
1763
|
+
var W = f.toLowerCase();
|
|
1764
|
+
j[W] && (L = W), v && (j[W] = v, L = W);
|
|
1765
|
+
var d = f.split("-");
|
|
1766
|
+
if (!L && d.length > 1) return u(d[0]);
|
|
1767
1767
|
} else {
|
|
1768
|
-
var U =
|
|
1769
|
-
j[U] =
|
|
1768
|
+
var U = f.name;
|
|
1769
|
+
j[U] = f, L = U;
|
|
1770
1770
|
}
|
|
1771
|
-
return !B &&
|
|
1772
|
-
}, G = function(
|
|
1773
|
-
if (F(
|
|
1774
|
-
var v = typeof
|
|
1775
|
-
return v.date =
|
|
1776
|
-
}, _ =
|
|
1777
|
-
_.l = O, _.i = F, _.w = function(
|
|
1778
|
-
return G(
|
|
1771
|
+
return !B && L && (z = L), L || !B && z;
|
|
1772
|
+
}, G = function(u, f) {
|
|
1773
|
+
if (F(u)) return u.clone();
|
|
1774
|
+
var v = typeof f == "object" ? f : {};
|
|
1775
|
+
return v.date = u, v.args = arguments, new R(v);
|
|
1776
|
+
}, _ = T;
|
|
1777
|
+
_.l = O, _.i = F, _.w = function(u, f) {
|
|
1778
|
+
return G(u, { locale: f.$L, utc: f.$u, x: f.$x, $offset: f.$offset });
|
|
1779
1779
|
};
|
|
1780
1780
|
var R = function() {
|
|
1781
|
-
function
|
|
1781
|
+
function u(v) {
|
|
1782
1782
|
this.$L = O(v.locale, null, !0), this.parse(v), this.$x = this.$x || v.x || {}, this[Y] = !0;
|
|
1783
1783
|
}
|
|
1784
|
-
var
|
|
1785
|
-
return
|
|
1784
|
+
var f = u.prototype;
|
|
1785
|
+
return f.parse = function(v) {
|
|
1786
1786
|
this.$d = function(B) {
|
|
1787
|
-
var
|
|
1788
|
-
if (
|
|
1789
|
-
if (_.u(
|
|
1790
|
-
if (
|
|
1791
|
-
if (typeof
|
|
1792
|
-
var
|
|
1793
|
-
if (
|
|
1794
|
-
var U =
|
|
1795
|
-
return W ? new Date(Date.UTC(
|
|
1787
|
+
var L = B.date, W = B.utc;
|
|
1788
|
+
if (L === null) return /* @__PURE__ */ new Date(NaN);
|
|
1789
|
+
if (_.u(L)) return /* @__PURE__ */ new Date();
|
|
1790
|
+
if (L instanceof Date) return new Date(L);
|
|
1791
|
+
if (typeof L == "string" && !/Z$/i.test(L)) {
|
|
1792
|
+
var d = L.match(r);
|
|
1793
|
+
if (d) {
|
|
1794
|
+
var U = d[2] - 1 || 0, ee = (d[7] || "0").substring(0, 3);
|
|
1795
|
+
return W ? new Date(Date.UTC(d[1], U, d[3] || 1, d[4] || 0, d[5] || 0, d[6] || 0, ee)) : new Date(d[1], U, d[3] || 1, d[4] || 0, d[5] || 0, d[6] || 0, ee);
|
|
1796
1796
|
}
|
|
1797
1797
|
}
|
|
1798
|
-
return new Date(
|
|
1798
|
+
return new Date(L);
|
|
1799
1799
|
}(v), this.init();
|
|
1800
|
-
},
|
|
1800
|
+
}, f.init = function() {
|
|
1801
1801
|
var v = this.$d;
|
|
1802
1802
|
this.$y = v.getFullYear(), this.$M = v.getMonth(), this.$D = v.getDate(), this.$W = v.getDay(), this.$H = v.getHours(), this.$m = v.getMinutes(), this.$s = v.getSeconds(), this.$ms = v.getMilliseconds();
|
|
1803
|
-
},
|
|
1803
|
+
}, f.$utils = function() {
|
|
1804
1804
|
return _;
|
|
1805
|
-
},
|
|
1805
|
+
}, f.isValid = function() {
|
|
1806
1806
|
return this.$d.toString() !== n;
|
|
1807
|
-
},
|
|
1808
|
-
var
|
|
1809
|
-
return this.startOf(B) <=
|
|
1810
|
-
},
|
|
1807
|
+
}, f.isSame = function(v, B) {
|
|
1808
|
+
var L = G(v);
|
|
1809
|
+
return this.startOf(B) <= L && L <= this.endOf(B);
|
|
1810
|
+
}, f.isAfter = function(v, B) {
|
|
1811
1811
|
return G(v) < this.startOf(B);
|
|
1812
|
-
},
|
|
1812
|
+
}, f.isBefore = function(v, B) {
|
|
1813
1813
|
return this.endOf(B) < G(v);
|
|
1814
|
-
},
|
|
1815
|
-
return _.u(v) ? this[B] : this.set(
|
|
1816
|
-
},
|
|
1814
|
+
}, f.$g = function(v, B, L) {
|
|
1815
|
+
return _.u(v) ? this[B] : this.set(L, v);
|
|
1816
|
+
}, f.unix = function() {
|
|
1817
1817
|
return Math.floor(this.valueOf() / 1e3);
|
|
1818
|
-
},
|
|
1818
|
+
}, f.valueOf = function() {
|
|
1819
1819
|
return this.$d.getTime();
|
|
1820
|
-
},
|
|
1821
|
-
var
|
|
1822
|
-
var be = _.w(
|
|
1820
|
+
}, f.startOf = function(v, B) {
|
|
1821
|
+
var L = this, W = !!_.u(B) || B, d = _.p(v), U = function(he, ye) {
|
|
1822
|
+
var be = _.w(L.$u ? Date.UTC(L.$y, ye, he) : new Date(L.$y, ye, he), L);
|
|
1823
1823
|
return W ? be : be.endOf(C);
|
|
1824
1824
|
}, ee = function(he, ye) {
|
|
1825
|
-
return _.w(
|
|
1825
|
+
return _.w(L.toDate()[he].apply(L.toDate("s"), (W ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(ye)), L);
|
|
1826
1826
|
}, ie = this.$W, me = this.$M, fe = this.$D, ke = "set" + (this.$u ? "UTC" : "");
|
|
1827
|
-
switch (
|
|
1827
|
+
switch (d) {
|
|
1828
1828
|
case $:
|
|
1829
1829
|
return W ? U(1, 0) : U(31, 11);
|
|
1830
1830
|
case k:
|
|
@@ -1839,43 +1839,43 @@ function Mt() {
|
|
|
1839
1839
|
return ee(ke + "Minutes", 1);
|
|
1840
1840
|
case A:
|
|
1841
1841
|
return ee(ke + "Seconds", 2);
|
|
1842
|
-
case
|
|
1842
|
+
case I:
|
|
1843
1843
|
return ee(ke + "Milliseconds", 3);
|
|
1844
1844
|
default:
|
|
1845
1845
|
return this.clone();
|
|
1846
1846
|
}
|
|
1847
|
-
},
|
|
1847
|
+
}, f.endOf = function(v) {
|
|
1848
1848
|
return this.startOf(v, !1);
|
|
1849
|
-
},
|
|
1850
|
-
var
|
|
1849
|
+
}, f.$set = function(v, B) {
|
|
1850
|
+
var L, W = _.p(v), d = "set" + (this.$u ? "UTC" : ""), U = (L = {}, L[C] = d + "Date", L[e] = d + "Date", L[k] = d + "Month", L[$] = d + "FullYear", L[E] = d + "Hours", L[A] = d + "Minutes", L[I] = d + "Seconds", L[S] = d + "Milliseconds", L)[W], ee = W === C ? this.$D + (B - this.$W) : B;
|
|
1851
1851
|
if (W === k || W === $) {
|
|
1852
1852
|
var ie = this.clone().set(e, 1);
|
|
1853
1853
|
ie.$d[U](ee), ie.init(), this.$d = ie.set(e, Math.min(this.$D, ie.daysInMonth())).$d;
|
|
1854
1854
|
} else U && this.$d[U](ee);
|
|
1855
1855
|
return this.init(), this;
|
|
1856
|
-
},
|
|
1856
|
+
}, f.set = function(v, B) {
|
|
1857
1857
|
return this.clone().$set(v, B);
|
|
1858
|
-
},
|
|
1858
|
+
}, f.get = function(v) {
|
|
1859
1859
|
return this[_.p(v)]();
|
|
1860
|
-
},
|
|
1861
|
-
var
|
|
1860
|
+
}, f.add = function(v, B) {
|
|
1861
|
+
var L, W = this;
|
|
1862
1862
|
v = Number(v);
|
|
1863
|
-
var
|
|
1863
|
+
var d = _.p(B), U = function(me) {
|
|
1864
1864
|
var fe = G(W);
|
|
1865
1865
|
return _.w(fe.date(fe.date() + Math.round(me * v)), W);
|
|
1866
1866
|
};
|
|
1867
|
-
if (
|
|
1868
|
-
if (
|
|
1869
|
-
if (
|
|
1870
|
-
if (
|
|
1871
|
-
var ee = (
|
|
1867
|
+
if (d === k) return this.set(k, this.$M + v);
|
|
1868
|
+
if (d === $) return this.set($, this.$y + v);
|
|
1869
|
+
if (d === C) return U(1);
|
|
1870
|
+
if (d === N) return U(7);
|
|
1871
|
+
var ee = (L = {}, L[A] = o, L[E] = b, L[I] = s, L)[d] || 1, ie = this.$d.getTime() + v * ee;
|
|
1872
1872
|
return _.w(ie, this);
|
|
1873
|
-
},
|
|
1873
|
+
}, f.subtract = function(v, B) {
|
|
1874
1874
|
return this.add(-1 * v, B);
|
|
1875
|
-
},
|
|
1876
|
-
var B = this,
|
|
1877
|
-
if (!this.isValid()) return
|
|
1878
|
-
var W = v || "YYYY-MM-DDTHH:mm:ssZ",
|
|
1875
|
+
}, f.format = function(v) {
|
|
1876
|
+
var B = this, L = this.$locale();
|
|
1877
|
+
if (!this.isValid()) return L.invalidDate || n;
|
|
1878
|
+
var W = v || "YYYY-MM-DDTHH:mm:ssZ", d = _.z(this), U = this.$H, ee = this.$m, ie = this.$M, me = L.weekdays, fe = L.months, ke = L.meridiem, ne = function(ye, be, Ee, $e) {
|
|
1879
1879
|
return ye && (ye[be] || ye(B, W)) || Ee[be].slice(0, $e);
|
|
1880
1880
|
}, ae = function(ye) {
|
|
1881
1881
|
return _.s(U % 12 || 12, ye, "0");
|
|
@@ -1883,7 +1883,7 @@ function Mt() {
|
|
|
1883
1883
|
var $e = ye < 12 ? "AM" : "PM";
|
|
1884
1884
|
return Ee ? $e.toLowerCase() : $e;
|
|
1885
1885
|
};
|
|
1886
|
-
return W.replace(
|
|
1886
|
+
return W.replace(c, function(ye, be) {
|
|
1887
1887
|
return be || function(Ee) {
|
|
1888
1888
|
switch (Ee) {
|
|
1889
1889
|
case "YY":
|
|
@@ -1895,7 +1895,7 @@ function Mt() {
|
|
|
1895
1895
|
case "MM":
|
|
1896
1896
|
return _.s(ie + 1, 2, "0");
|
|
1897
1897
|
case "MMM":
|
|
1898
|
-
return ne(
|
|
1898
|
+
return ne(L.monthsShort, ie, fe, 3);
|
|
1899
1899
|
case "MMMM":
|
|
1900
1900
|
return ne(fe, ie);
|
|
1901
1901
|
case "D":
|
|
@@ -1905,9 +1905,9 @@ function Mt() {
|
|
|
1905
1905
|
case "d":
|
|
1906
1906
|
return String(B.$W);
|
|
1907
1907
|
case "dd":
|
|
1908
|
-
return ne(
|
|
1908
|
+
return ne(L.weekdaysMin, B.$W, me, 2);
|
|
1909
1909
|
case "ddd":
|
|
1910
|
-
return ne(
|
|
1910
|
+
return ne(L.weekdaysShort, B.$W, me, 3);
|
|
1911
1911
|
case "dddd":
|
|
1912
1912
|
return me[B.$W];
|
|
1913
1913
|
case "H":
|
|
@@ -1933,16 +1933,16 @@ function Mt() {
|
|
|
1933
1933
|
case "SSS":
|
|
1934
1934
|
return _.s(B.$ms, 3, "0");
|
|
1935
1935
|
case "Z":
|
|
1936
|
-
return
|
|
1936
|
+
return d;
|
|
1937
1937
|
}
|
|
1938
1938
|
return null;
|
|
1939
|
-
}(ye) ||
|
|
1939
|
+
}(ye) || d.replace(":", "");
|
|
1940
1940
|
});
|
|
1941
|
-
},
|
|
1941
|
+
}, f.utcOffset = function() {
|
|
1942
1942
|
return 15 * -Math.round(this.$d.getTimezoneOffset() / 15);
|
|
1943
|
-
},
|
|
1944
|
-
var W,
|
|
1945
|
-
return _.m(
|
|
1943
|
+
}, f.diff = function(v, B, L) {
|
|
1944
|
+
var W, d = this, U = _.p(B), ee = G(v), ie = (ee.utcOffset() - this.utcOffset()) * o, me = this - ee, fe = function() {
|
|
1945
|
+
return _.m(d, ee);
|
|
1946
1946
|
};
|
|
1947
1947
|
switch (U) {
|
|
1948
1948
|
case $:
|
|
@@ -1961,129 +1961,129 @@ function Mt() {
|
|
|
1961
1961
|
W = (me - ie) / 864e5;
|
|
1962
1962
|
break;
|
|
1963
1963
|
case E:
|
|
1964
|
-
W = me /
|
|
1964
|
+
W = me / b;
|
|
1965
1965
|
break;
|
|
1966
1966
|
case A:
|
|
1967
1967
|
W = me / o;
|
|
1968
1968
|
break;
|
|
1969
|
-
case
|
|
1969
|
+
case I:
|
|
1970
1970
|
W = me / s;
|
|
1971
1971
|
break;
|
|
1972
1972
|
default:
|
|
1973
1973
|
W = me;
|
|
1974
1974
|
}
|
|
1975
|
-
return
|
|
1976
|
-
},
|
|
1975
|
+
return L ? W : _.a(W);
|
|
1976
|
+
}, f.daysInMonth = function() {
|
|
1977
1977
|
return this.endOf(k).$D;
|
|
1978
|
-
},
|
|
1978
|
+
}, f.$locale = function() {
|
|
1979
1979
|
return j[this.$L];
|
|
1980
|
-
},
|
|
1980
|
+
}, f.locale = function(v, B) {
|
|
1981
1981
|
if (!v) return this.$L;
|
|
1982
|
-
var
|
|
1983
|
-
return W && (
|
|
1984
|
-
},
|
|
1982
|
+
var L = this.clone(), W = O(v, B, !0);
|
|
1983
|
+
return W && (L.$L = W), L;
|
|
1984
|
+
}, f.clone = function() {
|
|
1985
1985
|
return _.w(this.$d, this);
|
|
1986
|
-
},
|
|
1986
|
+
}, f.toDate = function() {
|
|
1987
1987
|
return new Date(this.valueOf());
|
|
1988
|
-
},
|
|
1988
|
+
}, f.toJSON = function() {
|
|
1989
1989
|
return this.isValid() ? this.toISOString() : null;
|
|
1990
|
-
},
|
|
1990
|
+
}, f.toISOString = function() {
|
|
1991
1991
|
return this.$d.toISOString();
|
|
1992
|
-
},
|
|
1992
|
+
}, f.toString = function() {
|
|
1993
1993
|
return this.$d.toUTCString();
|
|
1994
|
-
},
|
|
1994
|
+
}, u;
|
|
1995
1995
|
}(), J = R.prototype;
|
|
1996
|
-
return G.prototype = J, [["$ms",
|
|
1997
|
-
J[
|
|
1998
|
-
return this.$g(
|
|
1996
|
+
return G.prototype = J, [["$ms", S], ["$s", I], ["$m", A], ["$H", E], ["$W", C], ["$M", k], ["$y", $], ["$D", e]].forEach(function(u) {
|
|
1997
|
+
J[u[1]] = function(f) {
|
|
1998
|
+
return this.$g(f, u[0], u[1]);
|
|
1999
1999
|
};
|
|
2000
|
-
}), G.extend = function(
|
|
2001
|
-
return
|
|
2002
|
-
}, G.locale = O, G.isDayjs = F, G.unix = function(
|
|
2003
|
-
return G(1e3 *
|
|
2000
|
+
}), G.extend = function(u, f) {
|
|
2001
|
+
return u.$i || (u(f, R, G), u.$i = !0), G;
|
|
2002
|
+
}, G.locale = O, G.isDayjs = F, G.unix = function(u) {
|
|
2003
|
+
return G(1e3 * u);
|
|
2004
2004
|
}, G.en = j[z], G.Ls = j, G.p = {}, G;
|
|
2005
2005
|
});
|
|
2006
2006
|
}(Je)), Je.exports;
|
|
2007
2007
|
}
|
|
2008
|
-
var
|
|
2009
|
-
const Qe = /* @__PURE__ */
|
|
2010
|
-
var Ze = { exports: {} },
|
|
2011
|
-
function
|
|
2012
|
-
return
|
|
2008
|
+
var Un = Dt();
|
|
2009
|
+
const Qe = /* @__PURE__ */ jn(Un);
|
|
2010
|
+
var Ze = { exports: {} }, Kn = Ze.exports, At;
|
|
2011
|
+
function Xn() {
|
|
2012
|
+
return At || (At = 1, function(t, m) {
|
|
2013
2013
|
(function(s, o) {
|
|
2014
|
-
t.exports = o(
|
|
2015
|
-
})(
|
|
2016
|
-
function o(
|
|
2017
|
-
return
|
|
2014
|
+
t.exports = o(Dt());
|
|
2015
|
+
})(Kn, function(s) {
|
|
2016
|
+
function o(I) {
|
|
2017
|
+
return I && typeof I == "object" && "default" in I ? I : { default: I };
|
|
2018
2018
|
}
|
|
2019
|
-
var
|
|
2020
|
-
return A === "W" ?
|
|
2021
|
-
}, weekStart: 1, yearStart: 4, formats: { LT: "HH:mm", LTS: "HH:mm:ss", L: "YYYY/MM/DD", LL: "YYYY年M月D日", LLL: "YYYY年M月D日Ah点mm分", LLLL: "YYYY年M月D日ddddAh点mm分", l: "YYYY/M/D", ll: "YYYY年M月D日", lll: "YYYY年M月D日 HH:mm", llll: "YYYY年M月D日dddd HH:mm" }, relativeTime: { future: "%s内", past: "%s前", s: "几秒", m: "1 分钟", mm: "%d 分钟", h: "1 小时", hh: "%d 小时", d: "1 天", dd: "%d 天", M: "1 个月", MM: "%d 个月", y: "1 年", yy: "%d 年" }, meridiem: function(
|
|
2022
|
-
var E = 100 *
|
|
2019
|
+
var b = o(s), S = { name: "zh-cn", weekdays: "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"), weekdaysShort: "周日_周一_周二_周三_周四_周五_周六".split("_"), weekdaysMin: "日_一_二_三_四_五_六".split("_"), months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"), monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"), ordinal: function(I, A) {
|
|
2020
|
+
return A === "W" ? I + "周" : I + "日";
|
|
2021
|
+
}, weekStart: 1, yearStart: 4, formats: { LT: "HH:mm", LTS: "HH:mm:ss", L: "YYYY/MM/DD", LL: "YYYY年M月D日", LLL: "YYYY年M月D日Ah点mm分", LLLL: "YYYY年M月D日ddddAh点mm分", l: "YYYY/M/D", ll: "YYYY年M月D日", lll: "YYYY年M月D日 HH:mm", llll: "YYYY年M月D日dddd HH:mm" }, relativeTime: { future: "%s内", past: "%s前", s: "几秒", m: "1 分钟", mm: "%d 分钟", h: "1 小时", hh: "%d 小时", d: "1 天", dd: "%d 天", M: "1 个月", MM: "%d 个月", y: "1 年", yy: "%d 年" }, meridiem: function(I, A) {
|
|
2022
|
+
var E = 100 * I + A;
|
|
2023
2023
|
return E < 600 ? "凌晨" : E < 900 ? "早上" : E < 1100 ? "上午" : E < 1300 ? "中午" : E < 1800 ? "下午" : "晚上";
|
|
2024
2024
|
} };
|
|
2025
|
-
return
|
|
2025
|
+
return b.default.locale(S, null, !0), S;
|
|
2026
2026
|
});
|
|
2027
2027
|
}(Ze)), Ze.exports;
|
|
2028
2028
|
}
|
|
2029
|
-
|
|
2030
|
-
function
|
|
2029
|
+
Xn();
|
|
2030
|
+
function He(t) {
|
|
2031
2031
|
"@babel/helpers - typeof";
|
|
2032
|
-
return
|
|
2032
|
+
return He = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(m) {
|
|
2033
2033
|
return typeof m;
|
|
2034
2034
|
} : function(m) {
|
|
2035
2035
|
return m && typeof Symbol == "function" && m.constructor === Symbol && m !== Symbol.prototype ? "symbol" : typeof m;
|
|
2036
|
-
},
|
|
2036
|
+
}, He(t);
|
|
2037
2037
|
}
|
|
2038
|
-
function
|
|
2039
|
-
if (
|
|
2038
|
+
function Jn(t, m) {
|
|
2039
|
+
if (He(t) != "object" || !t) return t;
|
|
2040
2040
|
var s = t[Symbol.toPrimitive];
|
|
2041
2041
|
if (s !== void 0) {
|
|
2042
2042
|
var o = s.call(t, m);
|
|
2043
|
-
if (
|
|
2043
|
+
if (He(o) != "object") return o;
|
|
2044
2044
|
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
2045
2045
|
}
|
|
2046
2046
|
return (m === "string" ? String : Number)(t);
|
|
2047
2047
|
}
|
|
2048
|
-
function
|
|
2049
|
-
var m =
|
|
2050
|
-
return
|
|
2048
|
+
function Qn(t) {
|
|
2049
|
+
var m = Jn(t, "string");
|
|
2050
|
+
return He(m) == "symbol" ? m : m + "";
|
|
2051
2051
|
}
|
|
2052
|
-
function
|
|
2053
|
-
return (m =
|
|
2052
|
+
function Zn(t, m, s) {
|
|
2053
|
+
return (m = Qn(m)) in t ? Object.defineProperty(t, m, {
|
|
2054
2054
|
value: s,
|
|
2055
2055
|
enumerable: !0,
|
|
2056
2056
|
configurable: !0,
|
|
2057
2057
|
writable: !0
|
|
2058
2058
|
}) : t[m] = s, t;
|
|
2059
2059
|
}
|
|
2060
|
-
function
|
|
2060
|
+
function _t(t, m) {
|
|
2061
2061
|
var s = Object.keys(t);
|
|
2062
2062
|
if (Object.getOwnPropertySymbols) {
|
|
2063
2063
|
var o = Object.getOwnPropertySymbols(t);
|
|
2064
|
-
m && (o = o.filter(function(
|
|
2065
|
-
return Object.getOwnPropertyDescriptor(t,
|
|
2064
|
+
m && (o = o.filter(function(b) {
|
|
2065
|
+
return Object.getOwnPropertyDescriptor(t, b).enumerable;
|
|
2066
2066
|
})), s.push.apply(s, o);
|
|
2067
2067
|
}
|
|
2068
2068
|
return s;
|
|
2069
2069
|
}
|
|
2070
|
-
function
|
|
2070
|
+
function Lt(t) {
|
|
2071
2071
|
for (var m = 1; m < arguments.length; m++) {
|
|
2072
2072
|
var s = arguments[m] != null ? arguments[m] : {};
|
|
2073
|
-
m % 2 ?
|
|
2074
|
-
|
|
2075
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(s)) :
|
|
2073
|
+
m % 2 ? _t(Object(s), !0).forEach(function(o) {
|
|
2074
|
+
Zn(t, o, s[o]);
|
|
2075
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(s)) : _t(Object(s)).forEach(function(o) {
|
|
2076
2076
|
Object.defineProperty(t, o, Object.getOwnPropertyDescriptor(s, o));
|
|
2077
2077
|
});
|
|
2078
2078
|
}
|
|
2079
2079
|
return t;
|
|
2080
2080
|
}
|
|
2081
|
-
var
|
|
2081
|
+
var er = {
|
|
2082
2082
|
yearFormat: "YYYY",
|
|
2083
2083
|
dayFormat: "D",
|
|
2084
2084
|
cellMeridiemFormat: "A",
|
|
2085
2085
|
monthBeforeYear: !0
|
|
2086
|
-
},
|
|
2086
|
+
}, tr = Lt(Lt({}, er), {}, {
|
|
2087
2087
|
locale: "zh_CN",
|
|
2088
2088
|
today: "今天",
|
|
2089
2089
|
now: "此刻",
|
|
@@ -2111,10 +2111,10 @@ var Qn = {
|
|
|
2111
2111
|
cellDateFormat: "D",
|
|
2112
2112
|
monthBeforeYear: !1
|
|
2113
2113
|
});
|
|
2114
|
-
const
|
|
2114
|
+
const nr = {
|
|
2115
2115
|
placeholder: "请选择时间",
|
|
2116
2116
|
rangePlaceholder: ["开始时间", "结束时间"]
|
|
2117
|
-
},
|
|
2117
|
+
}, Bt = {
|
|
2118
2118
|
lang: Object.assign({
|
|
2119
2119
|
placeholder: "请选择日期",
|
|
2120
2120
|
yearPlaceholder: "请选择年份",
|
|
@@ -2126,23 +2126,23 @@ const er = {
|
|
|
2126
2126
|
rangeMonthPlaceholder: ["开始月份", "结束月份"],
|
|
2127
2127
|
rangeQuarterPlaceholder: ["开始季度", "结束季度"],
|
|
2128
2128
|
rangeWeekPlaceholder: ["开始周", "结束周"]
|
|
2129
|
-
},
|
|
2130
|
-
timePickerLocale: Object.assign({},
|
|
2129
|
+
}, tr),
|
|
2130
|
+
timePickerLocale: Object.assign({}, nr)
|
|
2131
2131
|
};
|
|
2132
|
-
|
|
2132
|
+
Bt.lang.ok = "确定";
|
|
2133
2133
|
Qe.locale("zh-cn");
|
|
2134
|
-
const { RangePicker:
|
|
2135
|
-
const s = t.dataset.key, o = t.dataset.value,
|
|
2134
|
+
const { RangePicker: rr } = un, ar = ({ host: t, onChange: m }) => {
|
|
2135
|
+
const s = t.dataset.key, o = t.dataset.value, b = t.dataset.placeholder, S = t.dataset.limitRange ? parseInt(t.dataset.limitRange, 10) : void 0, I = t.dataset.disableFuture === "true", [A, E] = le(() => {
|
|
2136
2136
|
if (!o) return null;
|
|
2137
2137
|
const n = o.split(",");
|
|
2138
2138
|
return n.length === 2 && n[0] && n[1] ? [Qe(n[0]), Qe(n[1])] : null;
|
|
2139
2139
|
}), [C, N] = le(null);
|
|
2140
|
-
return
|
|
2141
|
-
/* @__PURE__ */
|
|
2142
|
-
|
|
2140
|
+
return mt(
|
|
2141
|
+
/* @__PURE__ */ M("div", { className: "rte-datepicker-wrapper", contentEditable: !1, style: { display: "inline-block", verticalAlign: "middle", width: "260px", marginLeft: "4px", marginRight: "4px", fontSize: "16px", height: "30px", lineHeight: "30px" }, children: /* @__PURE__ */ M(
|
|
2142
|
+
rr,
|
|
2143
2143
|
{
|
|
2144
2144
|
value: A,
|
|
2145
|
-
disabledDate: (n) => n ?
|
|
2145
|
+
disabledDate: (n) => n ? I && n.isAfter(Qe(), "day") ? !0 : !S || !C || !C[0] ? !1 : Math.abs(n.diff(C[0], "days")) > S : !1,
|
|
2146
2146
|
onCalendarChange: (n) => {
|
|
2147
2147
|
console.log("[DatePicker] onCalendarChange", n?.map((r) => r?.format("YYYY-MM-DD") || null)), N(n);
|
|
2148
2148
|
},
|
|
@@ -2156,29 +2156,29 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2156
2156
|
onOpenChange: (n) => {
|
|
2157
2157
|
console.log("[DatePicker] onOpenChange", n), N(n ? A : null);
|
|
2158
2158
|
},
|
|
2159
|
-
placeholder: [
|
|
2159
|
+
placeholder: [b || "开始日期", b || "结束日期"],
|
|
2160
2160
|
style: { width: "100%" },
|
|
2161
2161
|
size: "small",
|
|
2162
2162
|
allowClear: !0,
|
|
2163
|
-
locale:
|
|
2163
|
+
locale: Bt,
|
|
2164
2164
|
getPopupContainer: () => document.body,
|
|
2165
2165
|
popupClassName: "rte-datepicker-dropdown"
|
|
2166
2166
|
}
|
|
2167
2167
|
) }),
|
|
2168
2168
|
t
|
|
2169
2169
|
);
|
|
2170
|
-
},
|
|
2170
|
+
}, or = (t) => {
|
|
2171
2171
|
const [m, s] = le([]);
|
|
2172
2172
|
return pe(() => {
|
|
2173
2173
|
const o = t.current;
|
|
2174
2174
|
if (!o) return;
|
|
2175
|
-
const
|
|
2176
|
-
const
|
|
2177
|
-
|
|
2175
|
+
const b = () => {
|
|
2176
|
+
const I = o.querySelectorAll(".rte-datepicker-host"), A = [];
|
|
2177
|
+
I.forEach((E) => {
|
|
2178
2178
|
const C = E.getAttribute("data-key");
|
|
2179
2179
|
C && A.push(
|
|
2180
|
-
/* @__PURE__ */
|
|
2181
|
-
|
|
2180
|
+
/* @__PURE__ */ M(
|
|
2181
|
+
ar,
|
|
2182
2182
|
{
|
|
2183
2183
|
host: E,
|
|
2184
2184
|
onChange: () => {
|
|
@@ -2193,10 +2193,10 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2193
2193
|
);
|
|
2194
2194
|
}), s(A);
|
|
2195
2195
|
};
|
|
2196
|
-
|
|
2197
|
-
const
|
|
2196
|
+
b();
|
|
2197
|
+
const S = new MutationObserver((I) => {
|
|
2198
2198
|
let A = !1;
|
|
2199
|
-
for (const E of
|
|
2199
|
+
for (const E of I)
|
|
2200
2200
|
if (E.type === "childList") {
|
|
2201
2201
|
let C = !1;
|
|
2202
2202
|
if (E.addedNodes.forEach((N) => {
|
|
@@ -2214,18 +2214,18 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2214
2214
|
break;
|
|
2215
2215
|
}
|
|
2216
2216
|
}
|
|
2217
|
-
A &&
|
|
2217
|
+
A && b();
|
|
2218
2218
|
});
|
|
2219
|
-
return
|
|
2219
|
+
return S.observe(o, { childList: !0, subtree: !0 }), () => S.disconnect();
|
|
2220
2220
|
}, [t]), m;
|
|
2221
|
-
},
|
|
2221
|
+
}, sr = ({
|
|
2222
2222
|
config: t,
|
|
2223
2223
|
onSend: m,
|
|
2224
2224
|
isProcessing: s = !1,
|
|
2225
2225
|
disabled: o = !1,
|
|
2226
|
-
width:
|
|
2227
|
-
lockStructure:
|
|
2228
|
-
agentOptions:
|
|
2226
|
+
width: b,
|
|
2227
|
+
lockStructure: S = !1,
|
|
2228
|
+
agentOptions: I = [],
|
|
2229
2229
|
onAgentSelect: A,
|
|
2230
2230
|
onAgentExit: E,
|
|
2231
2231
|
loading: C = !1,
|
|
@@ -2236,10 +2236,10 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2236
2236
|
maxHeight: e,
|
|
2237
2237
|
minHeight: n,
|
|
2238
2238
|
className: r = "",
|
|
2239
|
-
onEditorAreaClick:
|
|
2240
|
-
autoCollapseOnScroll:
|
|
2241
|
-
scrollContainerRef:
|
|
2242
|
-
atBottomOffset:
|
|
2239
|
+
onEditorAreaClick: c,
|
|
2240
|
+
autoCollapseOnScroll: p,
|
|
2241
|
+
scrollContainerRef: D,
|
|
2242
|
+
atBottomOffset: T = 10,
|
|
2243
2243
|
atBottomExitOffset: z,
|
|
2244
2244
|
collapseOnScrollAtBottom: j = !1,
|
|
2245
2245
|
scrollEndDebounceMs: Y = 120,
|
|
@@ -2249,35 +2249,35 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2249
2249
|
collapsed: _,
|
|
2250
2250
|
defaultCollapsed: R,
|
|
2251
2251
|
onCollapsedChange: J,
|
|
2252
|
-
reportAnalyze:
|
|
2253
|
-
nodeDefaults:
|
|
2252
|
+
reportAnalyze: u,
|
|
2253
|
+
nodeDefaults: f
|
|
2254
2254
|
}) => {
|
|
2255
|
-
const [v, B] =
|
|
2256
|
-
}),
|
|
2255
|
+
const [v, B] = dn.useMessage(), L = se(null), W = se(null), d = se(null), U = se(null), [ee, ie] = le({}), [me, fe] = le(null), [ke, ne] = le(null), [ae, he] = le(null), ye = se(!1), be = se(null), [Ee, $e] = le(!1), [Pe, Ve] = le({}), tt = se(() => {
|
|
2256
|
+
}), _e = se({}), Oe = se({}), Re = se(null), [Pt, Ge] = le(!0), yt = se(null), [Vt, Ot] = le(0), Fe = typeof _ == "boolean", [ze, Rt] = le(
|
|
2257
2257
|
R ?? !1
|
|
2258
|
-
), [Ie,
|
|
2258
|
+
), [Ie, Gt] = le(!1), nt = se(!1), ht = se(ze), gt = se(window), rt = se(null), De = ce(
|
|
2259
2259
|
(a, l) => {
|
|
2260
|
-
(
|
|
2260
|
+
(Fe ? _ : ht.current) !== a && (Fe || Rt(a), J?.(a, l));
|
|
2261
2261
|
},
|
|
2262
|
-
[
|
|
2262
|
+
[Fe, _, J]
|
|
2263
2263
|
);
|
|
2264
2264
|
pe(() => {
|
|
2265
|
-
|
|
2266
|
-
}, [
|
|
2265
|
+
ht.current = ze;
|
|
2266
|
+
}, [ze]), pe(() => {
|
|
2267
2267
|
nt.current = Ie;
|
|
2268
|
-
}, [Ie]),
|
|
2269
|
-
const a =
|
|
2268
|
+
}, [Ie]), Be(() => {
|
|
2269
|
+
const a = yt.current;
|
|
2270
2270
|
if (!a) return;
|
|
2271
2271
|
const l = () => {
|
|
2272
2272
|
const x = Math.ceil(a.getBoundingClientRect().height || 0);
|
|
2273
|
-
|
|
2273
|
+
Ot((h) => h === x ? h : x);
|
|
2274
2274
|
};
|
|
2275
2275
|
if (l(), typeof ResizeObserver > "u") return;
|
|
2276
|
-
const
|
|
2277
|
-
return
|
|
2276
|
+
const i = new ResizeObserver(() => l());
|
|
2277
|
+
return i.observe(a), () => i.disconnect();
|
|
2278
2278
|
}, []), pe(() => {
|
|
2279
|
-
if (!
|
|
2280
|
-
const a =
|
|
2279
|
+
if (!p) return;
|
|
2280
|
+
const a = D?.current ?? null, i = ((V) => {
|
|
2281
2281
|
let K = V;
|
|
2282
2282
|
for (; K && K !== document.body; ) {
|
|
2283
2283
|
const re = window.getComputedStyle(K), oe = re.overflowY, de = re.overflowX, ge = (oe === "auto" || oe === "scroll") && K.scrollHeight > K.clientHeight + 1, xe = (de === "auto" || de === "scroll") && K.scrollWidth > K.clientWidth + 1;
|
|
@@ -2285,9 +2285,10 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2285
2285
|
K = K.parentElement;
|
|
2286
2286
|
}
|
|
2287
2287
|
return null;
|
|
2288
|
-
})(
|
|
2289
|
-
|
|
2290
|
-
|
|
2288
|
+
})(L.current?.parentElement ?? null), x = a ?? i ?? window;
|
|
2289
|
+
gt.current = x;
|
|
2290
|
+
let h = 0, P = 0, w = null, y = -1, q = "none";
|
|
2291
|
+
const g = () => {
|
|
2291
2292
|
if (x === window) {
|
|
2292
2293
|
const K = document.documentElement;
|
|
2293
2294
|
return {
|
|
@@ -2311,18 +2312,18 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2311
2312
|
V.scrollTop = V.scrollHeight;
|
|
2312
2313
|
}
|
|
2313
2314
|
}, X = () => {
|
|
2314
|
-
const V =
|
|
2315
|
+
const V = T, K = Math.max(
|
|
2315
2316
|
V + 1,
|
|
2316
2317
|
typeof z == "number" ? z : V + 16
|
|
2317
2318
|
), re = nt.current;
|
|
2318
2319
|
if (x === window) {
|
|
2319
2320
|
const ge = document.documentElement;
|
|
2320
|
-
if (ge.scrollHeight <= ge.clientHeight +
|
|
2321
|
+
if (ge.scrollHeight <= ge.clientHeight + T) return !1;
|
|
2321
2322
|
const xe = ge.scrollHeight - ge.scrollTop - ge.clientHeight;
|
|
2322
2323
|
return re ? xe <= K : xe <= V;
|
|
2323
2324
|
}
|
|
2324
2325
|
const oe = x;
|
|
2325
|
-
if (oe.scrollHeight <= oe.clientHeight +
|
|
2326
|
+
if (oe.scrollHeight <= oe.clientHeight + T) return !1;
|
|
2326
2327
|
const de = oe.scrollHeight - oe.scrollTop - oe.clientHeight;
|
|
2327
2328
|
return re ? de <= K : de <= V;
|
|
2328
2329
|
}, Z = (V = !1) => {
|
|
@@ -2332,95 +2333,95 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2332
2333
|
P = re;
|
|
2333
2334
|
}
|
|
2334
2335
|
const K = X();
|
|
2335
|
-
if (
|
|
2336
|
+
if (Gt((re) => re === K ? re : K), K) {
|
|
2336
2337
|
j && q === "up" || (De(!1, "bottom"), !j && q !== "up" && window.requestAnimationFrame(() => te()));
|
|
2337
2338
|
return;
|
|
2338
2339
|
}
|
|
2339
2340
|
De(!0, "scroll");
|
|
2340
2341
|
}, Q = () => {
|
|
2341
2342
|
{
|
|
2342
|
-
const { scrollTop: V } =
|
|
2343
|
-
y >= 0 && (V > y ? q = "down" : V < y && (q = "up")), j && y >= 0 && nt.current && V < y && De(!0, "scroll"), y = V;
|
|
2343
|
+
const { scrollTop: V } = g();
|
|
2344
|
+
y >= 0 && (V > y ? q = "down" : V < y && (q = "up")), j && y >= 0 && nt.current && V < y && (rt.current = L.current?.getBoundingClientRect().height ?? null, De(!0, "scroll")), y = V;
|
|
2344
2345
|
}
|
|
2345
|
-
|
|
2346
|
-
|
|
2346
|
+
h || (h = window.requestAnimationFrame(() => {
|
|
2347
|
+
h = 0, Z();
|
|
2347
2348
|
}), Y && Y > 0 && (w && window.clearTimeout(w), w = window.setTimeout(() => {
|
|
2348
2349
|
Z(!0);
|
|
2349
2350
|
}, Y)));
|
|
2350
2351
|
};
|
|
2351
|
-
return x === window ? window.addEventListener("scroll", Q, { passive: !0 }) : x.addEventListener("scroll", Q, { passive: !0 }), y =
|
|
2352
|
-
x === window ? window.removeEventListener("scroll", Q) : x.removeEventListener("scroll", Q), w && window.clearTimeout(w),
|
|
2352
|
+
return x === window ? window.addEventListener("scroll", Q, { passive: !0 }) : x.addEventListener("scroll", Q, { passive: !0 }), y = g().scrollTop, Z(!0), () => {
|
|
2353
|
+
x === window ? window.removeEventListener("scroll", Q) : x.removeEventListener("scroll", Q), w && window.clearTimeout(w), h && window.cancelAnimationFrame(h);
|
|
2353
2354
|
};
|
|
2354
|
-
}, [
|
|
2355
|
-
const [
|
|
2355
|
+
}, [p, D, T, z, G, j, Y, De]);
|
|
2356
|
+
const [Ne, Ce] = le(() => {
|
|
2356
2357
|
const a = {};
|
|
2357
2358
|
return t.forEach((l) => {
|
|
2358
2359
|
l.type === "multi-variable" && l.key && (a[l.key] = 1);
|
|
2359
2360
|
}), a;
|
|
2360
|
-
}),
|
|
2361
|
+
}), at = se({}), bt = se({}), vt = se({});
|
|
2361
2362
|
pe(() => {
|
|
2362
|
-
|
|
2363
|
+
bt.current = ee;
|
|
2363
2364
|
}, [ee]), pe(() => {
|
|
2364
|
-
|
|
2365
|
-
}, [
|
|
2366
|
-
const
|
|
2365
|
+
vt.current = Ne;
|
|
2366
|
+
}, [Ne]);
|
|
2367
|
+
const ot = ce((a) => a.find((i) => i.type === "tag")?.text || null, []), xt = se(t), qe = se(null);
|
|
2367
2368
|
pe(() => {
|
|
2368
|
-
const a =
|
|
2369
|
-
if (a && a !== l &&
|
|
2370
|
-
const
|
|
2371
|
-
|
|
2369
|
+
const a = ot(xt.current), l = ot(t);
|
|
2370
|
+
if (a && a !== l && d.current) {
|
|
2371
|
+
const i = {};
|
|
2372
|
+
d.current.querySelectorAll('[data-type="variable"]').forEach((w) => {
|
|
2372
2373
|
const y = w.dataset.key;
|
|
2373
2374
|
if (y) {
|
|
2374
2375
|
const q = w.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
2375
|
-
q && (
|
|
2376
|
+
q && (i[y] = q);
|
|
2376
2377
|
}
|
|
2377
|
-
}),
|
|
2378
|
+
}), d.current.querySelectorAll('[data-type="select"]').forEach((w) => {
|
|
2378
2379
|
const y = w.dataset.key;
|
|
2379
2380
|
if (y) {
|
|
2380
2381
|
const q = (w.getAttribute("data-value") || "").trim();
|
|
2381
|
-
q && (
|
|
2382
|
+
q && (i[y] = q);
|
|
2382
2383
|
}
|
|
2383
|
-
}),
|
|
2384
|
+
}), d.current.querySelectorAll('[data-type="textarea"]').forEach((w) => {
|
|
2384
2385
|
const y = w.dataset.key;
|
|
2385
2386
|
if (y) {
|
|
2386
2387
|
const q = w.value.replace(/[\u200B]/g, "").trim();
|
|
2387
|
-
q && (
|
|
2388
|
+
q && (i[y] = q);
|
|
2388
2389
|
}
|
|
2389
|
-
}),
|
|
2390
|
-
variableValues:
|
|
2391
|
-
files: { ...
|
|
2392
|
-
multiVariableCounts: { ...
|
|
2390
|
+
}), at.current[a] = {
|
|
2391
|
+
variableValues: i,
|
|
2392
|
+
files: { ...bt.current },
|
|
2393
|
+
multiVariableCounts: { ...vt.current }
|
|
2393
2394
|
};
|
|
2394
2395
|
}
|
|
2395
|
-
if (l &&
|
|
2396
|
-
const
|
|
2397
|
-
|
|
2396
|
+
if (l && at.current[l]) {
|
|
2397
|
+
const i = at.current[l];
|
|
2398
|
+
qe.current = i, ie(i.files), Ce(i.multiVariableCounts);
|
|
2398
2399
|
} else if (l) {
|
|
2399
|
-
|
|
2400
|
-
const
|
|
2400
|
+
qe.current = null;
|
|
2401
|
+
const i = {};
|
|
2401
2402
|
t.forEach((x) => {
|
|
2402
|
-
x.type === "multi-variable" && x.key && (
|
|
2403
|
-
}), Ce(
|
|
2403
|
+
x.type === "multi-variable" && x.key && (i[x.key] = 1);
|
|
2404
|
+
}), Ce(i), ie({});
|
|
2404
2405
|
} else
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
}, [t,
|
|
2408
|
-
|
|
2409
|
-
|
|
2406
|
+
qe.current = null, Ce({}), ie({});
|
|
2407
|
+
xt.current = t;
|
|
2408
|
+
}, [t, ot]), Be(() => {
|
|
2409
|
+
qe.current && d.current && (d.current.__tempVariableValues = qe.current.variableValues, setTimeout(() => {
|
|
2410
|
+
qe.current && (qe.current = null);
|
|
2410
2411
|
}, 0));
|
|
2411
2412
|
});
|
|
2412
|
-
const ve =
|
|
2413
|
+
const ve = dt(() => {
|
|
2413
2414
|
if (!t || t.length === 0) return t;
|
|
2414
|
-
const a = [], l = (
|
|
2415
|
-
for (const
|
|
2416
|
-
if (a.push(
|
|
2417
|
-
const x =
|
|
2418
|
-
|
|
2415
|
+
const a = [], l = (i) => i.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
2416
|
+
for (const i of t) {
|
|
2417
|
+
if (a.push(i), i.type !== "report-url" || !i.key) continue;
|
|
2418
|
+
const x = Pe[i.key], h = x?.status ?? "idle", P = x?.modules ?? [];
|
|
2419
|
+
h === "loading" && a.push({
|
|
2419
2420
|
type: "text",
|
|
2420
2421
|
className: "rte-report-parsing",
|
|
2421
2422
|
text: `解析中...
|
|
2422
2423
|
`
|
|
2423
|
-
}),
|
|
2424
|
+
}), h === "error" && x?.error && a.push({
|
|
2424
2425
|
type: "text",
|
|
2425
2426
|
className: "rte-report-error",
|
|
2426
2427
|
text: `解析失败:${l(x.error)}
|
|
@@ -2428,7 +2429,7 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2428
2429
|
}), P.length > 0 && (P.forEach((w, y) => {
|
|
2429
2430
|
a.push({
|
|
2430
2431
|
type: "report-module",
|
|
2431
|
-
key: `${
|
|
2432
|
+
key: `${i.key}__module_${y}`,
|
|
2432
2433
|
placeholder: "可编辑,内容不能为空",
|
|
2433
2434
|
required: !0,
|
|
2434
2435
|
minHeight: 80,
|
|
@@ -2439,75 +2440,75 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2439
2440
|
` }));
|
|
2440
2441
|
}
|
|
2441
2442
|
return a;
|
|
2442
|
-
}, [t,
|
|
2443
|
-
|
|
2444
|
-
|
|
2443
|
+
}, [t, Pe]);
|
|
2444
|
+
Vn(
|
|
2445
|
+
d,
|
|
2445
2446
|
ve,
|
|
2446
2447
|
ee,
|
|
2447
|
-
|
|
2448
|
-
|
|
2449
|
-
|
|
2448
|
+
S,
|
|
2449
|
+
Ne,
|
|
2450
|
+
Re,
|
|
2450
2451
|
void 0,
|
|
2451
2452
|
$,
|
|
2452
|
-
|
|
2453
|
-
),
|
|
2454
|
-
const
|
|
2453
|
+
f
|
|
2454
|
+
), On(d, ve, ee, he), Rn(d, ve, he, $), Fn(d, ve, ee, he), Gn(d, ve, he), zn(d, ve, ee, $e), Yn(d, ye);
|
|
2455
|
+
const Ft = Hn(d), zt = or(d), st = ce((a) => {
|
|
2455
2456
|
const l = a.trim();
|
|
2456
2457
|
if (!l) return { url: "" };
|
|
2457
|
-
let
|
|
2458
|
+
let i = null;
|
|
2458
2459
|
try {
|
|
2459
|
-
|
|
2460
|
+
i = new URL(l);
|
|
2460
2461
|
} catch {
|
|
2461
2462
|
try {
|
|
2462
|
-
|
|
2463
|
+
i = new URL(`https://${l}`);
|
|
2463
2464
|
} catch {
|
|
2464
2465
|
return { url: l };
|
|
2465
2466
|
}
|
|
2466
2467
|
}
|
|
2467
|
-
const x =
|
|
2468
|
+
const x = i.pathname.split("/").filter(Boolean), h = x.findIndex((q) => q === "report"), P = h >= 0 ? x[h + 1] : void 0, w = x[0] && x[0].length <= 5 ? x[0] : void 0, y = i.searchParams.get("agentId") || void 0;
|
|
2468
2469
|
return { url: l, reportId: P, agentId: y, lang: w };
|
|
2469
|
-
}, []),
|
|
2470
|
+
}, []), wt = ce(() => {
|
|
2470
2471
|
const a = {};
|
|
2471
|
-
if (!
|
|
2472
|
-
const l =
|
|
2472
|
+
if (!d.current) return a;
|
|
2473
|
+
const l = d.current;
|
|
2473
2474
|
return l.querySelectorAll('[data-type="variable"]').forEach((y) => {
|
|
2474
2475
|
const q = y.dataset.key;
|
|
2475
2476
|
if (!q) return;
|
|
2476
|
-
const
|
|
2477
|
-
|
|
2477
|
+
const g = y.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
2478
|
+
g && (a[q] = g);
|
|
2478
2479
|
}), l.querySelectorAll('[data-type="select"]').forEach((y) => {
|
|
2479
2480
|
const q = y.dataset.key;
|
|
2480
2481
|
if (!q) return;
|
|
2481
|
-
const
|
|
2482
|
-
|
|
2482
|
+
const g = (y.getAttribute("data-value") || "").trim();
|
|
2483
|
+
g && (a[q] = g);
|
|
2483
2484
|
}), l.querySelectorAll('[data-type="textarea"]').forEach((y) => {
|
|
2484
2485
|
const q = y.dataset.key;
|
|
2485
2486
|
if (!q) return;
|
|
2486
|
-
const
|
|
2487
|
-
|
|
2487
|
+
const g = y.value.replace(/[\u200B]/g, "").trim();
|
|
2488
|
+
g && (a[q] = g);
|
|
2488
2489
|
}), l.querySelectorAll('[data-type="richtext"]').forEach((y) => {
|
|
2489
2490
|
const q = y.dataset.key;
|
|
2490
2491
|
if (!q) return;
|
|
2491
|
-
const
|
|
2492
|
-
|
|
2492
|
+
const g = (y.textContent || "").replace(/[\u200B]/g, "").trim();
|
|
2493
|
+
g && (a[q] = g);
|
|
2493
2494
|
}), l.querySelectorAll('[data-type="datepicker"]').forEach((y) => {
|
|
2494
2495
|
const q = y.dataset.key;
|
|
2495
2496
|
if (!q) return;
|
|
2496
|
-
const
|
|
2497
|
-
|
|
2497
|
+
const g = (y.getAttribute("data-value") || "").trim();
|
|
2498
|
+
g && (a[q] = g);
|
|
2498
2499
|
}), a;
|
|
2499
|
-
}, []),
|
|
2500
|
-
(a) => (a?.modules || []).map((
|
|
2501
|
-
const
|
|
2502
|
-
return { title:
|
|
2500
|
+
}, []), kt = ce(
|
|
2501
|
+
(a) => (a?.modules || []).map((i, x) => {
|
|
2502
|
+
const h = (i?.title || `模块${x + 1}`).trim() || `模块${x + 1}`, P = (i?.content || "").trim(), w = P.length > 0 ? P : `请补充:${h}`;
|
|
2503
|
+
return { title: h, content: w };
|
|
2503
2504
|
}),
|
|
2504
2505
|
[]
|
|
2505
|
-
),
|
|
2506
|
+
), $t = ce(
|
|
2506
2507
|
(a, l) => {
|
|
2507
|
-
const
|
|
2508
|
+
const i = (l || "").trim();
|
|
2508
2509
|
if (!a) return;
|
|
2509
|
-
if (!
|
|
2510
|
-
|
|
2510
|
+
if (!i) {
|
|
2511
|
+
Ve((w) => ({
|
|
2511
2512
|
...w,
|
|
2512
2513
|
[a]: { status: "idle", modules: [], lastParsedUrl: void 0, error: void 0 }
|
|
2513
2514
|
}));
|
|
@@ -2516,29 +2517,29 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2516
2517
|
try {
|
|
2517
2518
|
const w = window.getSelection();
|
|
2518
2519
|
if (w && w.rangeCount > 0) {
|
|
2519
|
-
const y = w.getRangeAt(0), q = y.startContainer,
|
|
2520
|
-
if (
|
|
2520
|
+
const y = w.getRangeAt(0), q = y.startContainer, g = q.nodeType === Node.ELEMENT_NODE ? q.closest(`[data-type="variable"][data-key="${a}"]`) : q.parentElement?.closest(`[data-type="variable"][data-key="${a}"]`);
|
|
2521
|
+
if (g && d.current?.contains(g)) {
|
|
2521
2522
|
const te = document.createRange();
|
|
2522
|
-
te.setStartBefore(
|
|
2523
|
+
te.setStartBefore(g), te.setEnd(y.startContainer, y.startOffset);
|
|
2523
2524
|
const X = te.toString().length;
|
|
2524
|
-
|
|
2525
|
+
Re.current = { key: a, offset: X };
|
|
2525
2526
|
}
|
|
2526
2527
|
}
|
|
2527
2528
|
} catch {
|
|
2528
2529
|
}
|
|
2529
|
-
const x =
|
|
2530
|
-
if (x?.lastParsedUrl && x.lastParsedUrl ===
|
|
2531
|
-
|
|
2530
|
+
const x = Pe[a];
|
|
2531
|
+
if (x?.lastParsedUrl && x.lastParsedUrl === i && x.status === "loading") return;
|
|
2532
|
+
Ve((w) => ({
|
|
2532
2533
|
...w,
|
|
2533
2534
|
[a]: {
|
|
2534
2535
|
...w[a] || { modules: [] },
|
|
2535
2536
|
status: "loading",
|
|
2536
2537
|
error: void 0,
|
|
2537
|
-
lastParsedUrl:
|
|
2538
|
+
lastParsedUrl: i
|
|
2538
2539
|
}
|
|
2539
2540
|
}));
|
|
2540
|
-
const
|
|
2541
|
-
(
|
|
2541
|
+
const h = st(i);
|
|
2542
|
+
(u || (async (w) => ({
|
|
2542
2543
|
modules: [
|
|
2543
2544
|
{
|
|
2544
2545
|
title: "第1张:人群+场景直击图",
|
|
@@ -2550,62 +2551,62 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2550
2551
|
content: "左侧:杂乱堆放、难清理;右侧:分区收纳、拿取方便。文案≤15字,绑定人群+场景+需求。"
|
|
2551
2552
|
}
|
|
2552
2553
|
]
|
|
2553
|
-
})))(
|
|
2554
|
-
const y =
|
|
2555
|
-
if (
|
|
2556
|
-
const q =
|
|
2557
|
-
y.forEach((
|
|
2558
|
-
q[`${a}__module_${te}`] =
|
|
2559
|
-
}),
|
|
2554
|
+
})))(h).then((w) => {
|
|
2555
|
+
const y = kt(w);
|
|
2556
|
+
if (d.current) {
|
|
2557
|
+
const q = wt();
|
|
2558
|
+
y.forEach((g, te) => {
|
|
2559
|
+
q[`${a}__module_${te}`] = g.content;
|
|
2560
|
+
}), d.current.__tempVariableValues = q;
|
|
2560
2561
|
}
|
|
2561
|
-
|
|
2562
|
+
Ve((q) => ({
|
|
2562
2563
|
...q,
|
|
2563
|
-
[a]: { status: "success", error: void 0, lastParsedUrl:
|
|
2564
|
+
[a]: { status: "success", error: void 0, lastParsedUrl: i, modules: y }
|
|
2564
2565
|
}));
|
|
2565
2566
|
}).catch((w) => {
|
|
2566
2567
|
const y = w instanceof Error ? w.message : String(w);
|
|
2567
|
-
|
|
2568
|
+
Ve((q) => ({
|
|
2568
2569
|
...q,
|
|
2569
2570
|
[a]: {
|
|
2570
2571
|
...q[a] || { modules: [] },
|
|
2571
2572
|
status: "error",
|
|
2572
2573
|
error: y || "解析失败",
|
|
2573
|
-
lastParsedUrl:
|
|
2574
|
+
lastParsedUrl: i,
|
|
2574
2575
|
modules: []
|
|
2575
2576
|
}
|
|
2576
2577
|
}));
|
|
2577
2578
|
});
|
|
2578
2579
|
},
|
|
2579
|
-
[
|
|
2580
|
+
[wt, kt, st, u, Pe]
|
|
2580
2581
|
);
|
|
2581
2582
|
pe(() => {
|
|
2582
|
-
tt.current =
|
|
2583
|
-
}, [
|
|
2584
|
-
const a =
|
|
2585
|
-
Object.keys(a).forEach((l) => window.clearTimeout(a[l])),
|
|
2583
|
+
tt.current = $t;
|
|
2584
|
+
}, [$t]), pe(() => () => {
|
|
2585
|
+
const a = _e.current;
|
|
2586
|
+
Object.keys(a).forEach((l) => window.clearTimeout(a[l])), _e.current = {}, Oe.current = {};
|
|
2586
2587
|
}, []), pe(() => {
|
|
2587
2588
|
if (ve.length > 0) {
|
|
2588
|
-
|
|
2589
|
+
Ge(!1);
|
|
2589
2590
|
return;
|
|
2590
2591
|
}
|
|
2591
2592
|
const a = () => {
|
|
2592
|
-
if (!
|
|
2593
|
-
|
|
2593
|
+
if (!d.current) {
|
|
2594
|
+
Ge(!0);
|
|
2594
2595
|
return;
|
|
2595
2596
|
}
|
|
2596
|
-
const
|
|
2597
|
+
const i = d.current.textContent?.replace(/[\u200B\n]/g, "").trim() || "", x = d.current.querySelectorAll('[data-type="variable"]'), h = d.current.querySelectorAll('[data-type="upload"]');
|
|
2597
2598
|
let P = !1;
|
|
2598
2599
|
x.forEach((y) => {
|
|
2599
2600
|
(y.textContent?.replace(/[\u200B\n]/g, "").trim() || "") && (P = !0);
|
|
2600
|
-
}),
|
|
2601
|
+
}), h.forEach((y) => {
|
|
2601
2602
|
y.querySelector(".upload-inner-wrapper.has-file") && (P = !0);
|
|
2602
2603
|
});
|
|
2603
|
-
const w = !
|
|
2604
|
-
|
|
2604
|
+
const w = !i && !P;
|
|
2605
|
+
Ge(w), ve.length === 0 && $e(!w);
|
|
2605
2606
|
};
|
|
2606
2607
|
a();
|
|
2607
2608
|
const l = new MutationObserver(a);
|
|
2608
|
-
return
|
|
2609
|
+
return d.current && l.observe(d.current, {
|
|
2609
2610
|
childList: !0,
|
|
2610
2611
|
subtree: !0,
|
|
2611
2612
|
characterData: !0
|
|
@@ -2613,30 +2614,30 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2613
2614
|
l.disconnect();
|
|
2614
2615
|
};
|
|
2615
2616
|
}, [ve]);
|
|
2616
|
-
const
|
|
2617
|
+
const Yt = (a) => {
|
|
2617
2618
|
if (o) {
|
|
2618
2619
|
a.preventDefault();
|
|
2619
2620
|
return;
|
|
2620
2621
|
}
|
|
2621
2622
|
a.preventDefault();
|
|
2622
|
-
const l = a.clipboardData.getData("text/plain"),
|
|
2623
|
-
if (
|
|
2624
|
-
const x =
|
|
2623
|
+
const l = a.clipboardData.getData("text/plain"), i = window.getSelection();
|
|
2624
|
+
if (i && i.rangeCount > 0) {
|
|
2625
|
+
const x = i.anchorNode;
|
|
2625
2626
|
if (x) {
|
|
2626
|
-
let
|
|
2627
|
-
if (x.nodeType === Node.ELEMENT_NODE ?
|
|
2628
|
-
const P =
|
|
2627
|
+
let h = null;
|
|
2628
|
+
if (x.nodeType === Node.ELEMENT_NODE ? h = x.closest('[data-type="variable"]') : x.nodeType === Node.TEXT_NODE && x.parentElement && (h = x.parentElement.closest('[data-type="variable"]')), h) {
|
|
2629
|
+
const P = h.dataset.multiKey;
|
|
2629
2630
|
if (P) {
|
|
2630
2631
|
const w = /[、,,\s\n\r\t]+/, y = l.split(w).map((q) => q.trim()).filter((q) => q.length > 0);
|
|
2631
2632
|
if (console.log("[Paste Event] 粘贴的内容:", l), console.log("[Paste Event] 拆分后的值:", y), y.length > 1) {
|
|
2632
|
-
const q = parseInt(
|
|
2633
|
+
const q = parseInt(h.dataset.index || "0", 10), g = t.find((de) => de.type === "multi-variable" && de.key === P)?.maxCount || 9, te = Ne[P] || 1, X = Math.min(q + y.length, g);
|
|
2633
2634
|
X > te && Ce((oe) => ({
|
|
2634
2635
|
...oe,
|
|
2635
2636
|
[P]: X
|
|
2636
2637
|
}));
|
|
2637
2638
|
const Z = [];
|
|
2638
2639
|
for (let oe = 0; oe < te; oe++) {
|
|
2639
|
-
const de = `${P}_${oe}`, ge =
|
|
2640
|
+
const de = `${P}_${oe}`, ge = d.current.querySelector(
|
|
2640
2641
|
`[data-type="variable"][data-key="${de}"][data-multi-key="${P}"]`
|
|
2641
2642
|
);
|
|
2642
2643
|
if (ge) {
|
|
@@ -2644,13 +2645,13 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2644
2645
|
Z.push(xe);
|
|
2645
2646
|
}
|
|
2646
2647
|
}
|
|
2647
|
-
Z.splice(q, 1, ...y.slice(0,
|
|
2648
|
-
const Q = Z.slice(0,
|
|
2649
|
-
Q.length > 0 && Q[Q.length - 1] !== "" && Q.length <
|
|
2648
|
+
Z.splice(q, 1, ...y.slice(0, g - q));
|
|
2649
|
+
const Q = Z.slice(0, g);
|
|
2650
|
+
Q.length > 0 && Q[Q.length - 1] !== "" && Q.length < g && Q.push("");
|
|
2650
2651
|
const V = Math.max(Q.length, 1), K = {};
|
|
2651
2652
|
Q.forEach((oe, de) => {
|
|
2652
2653
|
oe && (K[`${P}_${de}`] = oe);
|
|
2653
|
-
}),
|
|
2654
|
+
}), d.current.querySelectorAll(
|
|
2654
2655
|
'[data-type="variable"]'
|
|
2655
2656
|
).forEach((oe) => {
|
|
2656
2657
|
const de = oe.dataset.key, ge = oe.dataset.multiKey;
|
|
@@ -2658,7 +2659,7 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2658
2659
|
const xe = oe.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
2659
2660
|
xe && (K[de] = xe);
|
|
2660
2661
|
}
|
|
2661
|
-
}),
|
|
2662
|
+
}), d.current.__tempVariableValues = K, Ce((oe) => ({
|
|
2662
2663
|
...oe,
|
|
2663
2664
|
[P]: V
|
|
2664
2665
|
})), console.log("[Paste Event] 粘贴完成,已填充到多个输入框,值:", Q);
|
|
@@ -2668,65 +2669,65 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2668
2669
|
}
|
|
2669
2670
|
}
|
|
2670
2671
|
}
|
|
2671
|
-
document.execCommand("insertText", !1, l),
|
|
2672
|
+
document.execCommand("insertText", !1, l), Ct(), setTimeout(() => {
|
|
2672
2673
|
const x = window.getSelection();
|
|
2673
2674
|
if (x && x.rangeCount > 0) {
|
|
2674
|
-
const
|
|
2675
|
-
if (
|
|
2675
|
+
const h = x.anchorNode;
|
|
2676
|
+
if (h) {
|
|
2676
2677
|
let P = null;
|
|
2677
|
-
if (
|
|
2678
|
+
if (h.nodeType === Node.ELEMENT_NODE ? P = h.closest('[data-type="variable"][data-multi-key]') : h.nodeType === Node.TEXT_NODE && h.parentElement && (P = h.parentElement.closest('[data-type="variable"][data-multi-key]')), P) {
|
|
2678
2679
|
const w = P.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
2679
2680
|
/[、,,\s]+/.test(w) && (console.log("[Paste Event] 粘贴后检测到分隔符,内容:", w), console.log("[Paste Event] 提示:失去焦点后将自动拆分"));
|
|
2680
2681
|
}
|
|
2681
2682
|
}
|
|
2682
2683
|
}
|
|
2683
2684
|
}, 0);
|
|
2684
|
-
},
|
|
2685
|
+
}, jt = (a) => {
|
|
2685
2686
|
if (!a.target.files) {
|
|
2686
2687
|
a.target && (a.target.value = ""), fe(null), ne(null);
|
|
2687
2688
|
return;
|
|
2688
2689
|
}
|
|
2689
|
-
const l = 10 * 1024 * 1024,
|
|
2690
|
+
const l = 10 * 1024 * 1024, i = (h) => h.type?.startsWith("image/") ? !0 : /\.(png|jpe?g|gif|webp|bmp|svg)$/i.test(h.name || ""), x = (h) => i(h) && h.size > l;
|
|
2690
2691
|
if (ke && a.target.files && a.target.files.length > 0) {
|
|
2691
|
-
const
|
|
2692
|
+
const h = ke, P = t.find((g) => g.type === "upload" && g.key === h), w = Array.from(a.target.files), y = w.filter((g) => !x(g)), q = w.length - y.length;
|
|
2692
2693
|
if (q > 0 && v.error(`已自动过滤 ${q} 张超过 10MB 的图片,仅允许上传 10MB 以内图片`), P && typeof P.maxCount == "number" && typeof P.minCount == "number") {
|
|
2693
|
-
const
|
|
2694
|
+
const g = P.maxCount;
|
|
2694
2695
|
let te = 0;
|
|
2695
2696
|
ie((X) => {
|
|
2696
|
-
for (let K = 0; K <
|
|
2697
|
-
const re = `${
|
|
2697
|
+
for (let K = 0; K < g; K++) {
|
|
2698
|
+
const re = `${h}-${K}`;
|
|
2698
2699
|
X[re] && (te = K + 1);
|
|
2699
2700
|
}
|
|
2700
|
-
const Z =
|
|
2701
|
+
const Z = g - te, Q = y.slice(0, Z), V = { ...X };
|
|
2701
2702
|
return Q.forEach((K, re) => {
|
|
2702
|
-
const oe = `${
|
|
2703
|
+
const oe = `${h}-${te + re}`;
|
|
2703
2704
|
V[oe] = K;
|
|
2704
2705
|
}), V;
|
|
2705
2706
|
});
|
|
2706
2707
|
}
|
|
2707
2708
|
} else if (me && a.target.files[0]) {
|
|
2708
|
-
const
|
|
2709
|
-
x(
|
|
2709
|
+
const h = a.target.files[0], P = me;
|
|
2710
|
+
x(h) ? v.error("图片大小不能超过 10MB(仅允许上传 10MB 以内图片)") : ie((w) => ({ ...w, [P]: h }));
|
|
2710
2711
|
}
|
|
2711
2712
|
a.target && (a.target.value = ""), fe(null), ne(null);
|
|
2712
|
-
},
|
|
2713
|
+
}, Et = (a) => {
|
|
2713
2714
|
ie((l) => {
|
|
2714
|
-
const
|
|
2715
|
-
return delete
|
|
2715
|
+
const i = { ...l };
|
|
2716
|
+
return delete i[a], i;
|
|
2716
2717
|
});
|
|
2717
|
-
},
|
|
2718
|
+
}, Wt = (a) => {
|
|
2718
2719
|
const l = a.target;
|
|
2719
2720
|
if (l.closest(".rte-datepicker-wrapper") || l.closest(".rte-datepicker-host") || l.closest(".rte-select-wrapper") || l.closest(".rte-select-host") || l.closest(".ant-select-dropdown"))
|
|
2720
2721
|
return;
|
|
2721
2722
|
if (l.closest(".tag-close-btn")) {
|
|
2722
|
-
if (a.preventDefault(), a.stopPropagation(),
|
|
2723
|
+
if (a.preventDefault(), a.stopPropagation(), S)
|
|
2723
2724
|
return;
|
|
2724
|
-
he(null), E ? E() :
|
|
2725
|
+
he(null), E ? E() : d.current && (d.current.innerHTML = "", d.current.focus());
|
|
2725
2726
|
return;
|
|
2726
2727
|
}
|
|
2727
|
-
if (
|
|
2728
|
-
const
|
|
2729
|
-
if (
|
|
2728
|
+
if (S) {
|
|
2729
|
+
const h = l.closest(".tag-node"), P = l.closest('[data-type="text"]');
|
|
2730
|
+
if (h || P) {
|
|
2730
2731
|
a.preventDefault(), a.stopPropagation();
|
|
2731
2732
|
const w = window.getSelection();
|
|
2732
2733
|
w && w.removeAllRanges();
|
|
@@ -2734,18 +2735,18 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2734
2735
|
}
|
|
2735
2736
|
}
|
|
2736
2737
|
l.closest('[data-type="variable"]') || (be.current = { x: a.clientX, y: a.clientY }, ye.current = !1, l.closest(".file-remove-btn") && (a.preventDefault(), a.stopPropagation()));
|
|
2737
|
-
},
|
|
2738
|
+
}, Ut = (a) => {
|
|
2738
2739
|
if (!a.target.closest('[data-type="variable"]') && be.current) {
|
|
2739
|
-
const x = Math.abs(a.clientX - be.current.x),
|
|
2740
|
-
(x > 3 ||
|
|
2740
|
+
const x = Math.abs(a.clientX - be.current.x), h = Math.abs(a.clientY - be.current.y);
|
|
2741
|
+
(x > 3 || h > 3) && (ye.current = !0);
|
|
2741
2742
|
}
|
|
2742
|
-
},
|
|
2743
|
+
}, Kt = (a) => {
|
|
2743
2744
|
if (a.target.closest('[data-type="variable"]')) {
|
|
2744
2745
|
be.current = null, ye.current = !1;
|
|
2745
2746
|
return;
|
|
2746
2747
|
}
|
|
2747
2748
|
be.current = null, ye.current = !1;
|
|
2748
|
-
},
|
|
2749
|
+
}, Xt = (a) => {
|
|
2749
2750
|
if (o)
|
|
2750
2751
|
return;
|
|
2751
2752
|
const l = a.target;
|
|
@@ -2763,10 +2764,10 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2763
2764
|
q && q.removeAllRanges();
|
|
2764
2765
|
return;
|
|
2765
2766
|
}
|
|
2766
|
-
if (
|
|
2767
|
+
if (S && l.closest(".tag-node")) {
|
|
2767
2768
|
a.preventDefault(), a.stopPropagation();
|
|
2768
|
-
const
|
|
2769
|
-
|
|
2769
|
+
const g = window.getSelection();
|
|
2770
|
+
g && g.removeAllRanges();
|
|
2770
2771
|
return;
|
|
2771
2772
|
}
|
|
2772
2773
|
if (l.closest('[data-type="variable"]')) {
|
|
@@ -2774,15 +2775,15 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2774
2775
|
return;
|
|
2775
2776
|
setTimeout(() => {
|
|
2776
2777
|
const q = window.getSelection();
|
|
2777
|
-
q && !q.isCollapsed ||
|
|
2778
|
+
q && !q.isCollapsed || it(d);
|
|
2778
2779
|
}, 10);
|
|
2779
2780
|
return;
|
|
2780
2781
|
}
|
|
2781
2782
|
const w = l.closest(".file-remove-btn");
|
|
2782
2783
|
if (w) {
|
|
2783
2784
|
a.preventDefault(), a.stopPropagation();
|
|
2784
|
-
const q = w.closest('[data-type="upload"]'),
|
|
2785
|
-
if (
|
|
2785
|
+
const q = w.closest('[data-type="upload"]'), g = q?.dataset.key, te = q?.dataset.batchKey;
|
|
2786
|
+
if (g)
|
|
2786
2787
|
if (te) {
|
|
2787
2788
|
const X = t.find((Z) => Z.type === "upload" && Z.key === te);
|
|
2788
2789
|
if (X && typeof X.maxCount == "number" && typeof X.minCount == "number") {
|
|
@@ -2791,7 +2792,7 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2791
2792
|
const V = { ...Q }, K = [];
|
|
2792
2793
|
for (let re = 0; re < Z; re++) {
|
|
2793
2794
|
const oe = `${te}-${re}`, de = V[oe];
|
|
2794
|
-
de != null && oe !==
|
|
2795
|
+
de != null && oe !== g && K.push(de);
|
|
2795
2796
|
}
|
|
2796
2797
|
for (let re = 0; re < Z; re++)
|
|
2797
2798
|
delete V[`${te}-${re}`];
|
|
@@ -2800,17 +2801,17 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2800
2801
|
}), V;
|
|
2801
2802
|
});
|
|
2802
2803
|
} else
|
|
2803
|
-
|
|
2804
|
+
Et(g);
|
|
2804
2805
|
} else
|
|
2805
|
-
|
|
2806
|
+
Et(g);
|
|
2806
2807
|
return;
|
|
2807
2808
|
}
|
|
2808
2809
|
const y = l.closest('[data-type="upload"]');
|
|
2809
2810
|
if (y) {
|
|
2810
|
-
const q = y.dataset.key,
|
|
2811
|
+
const q = y.dataset.key, g = y.dataset.batchKey;
|
|
2811
2812
|
if (q)
|
|
2812
|
-
if (
|
|
2813
|
-
const te = t.find((X) => X.type === "upload" && X.key ===
|
|
2813
|
+
if (g) {
|
|
2814
|
+
const te = t.find((X) => X.type === "upload" && X.key === g);
|
|
2814
2815
|
if (te && typeof te.maxCount == "number" && typeof te.minCount == "number") {
|
|
2815
2816
|
const X = te.maxCount;
|
|
2816
2817
|
if (ee[q] != null) {
|
|
@@ -2819,71 +2820,71 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2819
2820
|
}
|
|
2820
2821
|
let Q = 0;
|
|
2821
2822
|
for (let V = 0; V < X; V++)
|
|
2822
|
-
ee[`${
|
|
2823
|
-
Q < X && U.current ? (U.current.multiple = !0, ne(
|
|
2823
|
+
ee[`${g}-${V}`] != null && (Q += 1);
|
|
2824
|
+
Q < X && U.current ? (U.current.multiple = !0, ne(g), U.current.click()) : (U.current && (U.current.multiple = !1), fe(q), U.current?.click());
|
|
2824
2825
|
} else
|
|
2825
2826
|
U.current && (U.current.multiple = !1), fe(q), U.current?.click();
|
|
2826
2827
|
} else
|
|
2827
2828
|
U.current && (U.current.multiple = !1), fe(q), U.current?.click();
|
|
2828
2829
|
return;
|
|
2829
2830
|
}
|
|
2830
|
-
},
|
|
2831
|
-
const
|
|
2832
|
-
if (
|
|
2831
|
+
}, Jt = (a) => {
|
|
2832
|
+
const i = a.target.closest('[data-type="variable"]');
|
|
2833
|
+
if (i) {
|
|
2833
2834
|
const x = window.getSelection();
|
|
2834
2835
|
if (x) {
|
|
2835
|
-
const
|
|
2836
|
+
const h = document.createRange(), P = i.textContent || "";
|
|
2836
2837
|
if (P.replace(/\u200B/g, "")) {
|
|
2837
2838
|
let y = 0, q = P.length;
|
|
2838
2839
|
P.startsWith("") && (y = 1), P.endsWith("") && P.length > 1 && (q = P.length - 1);
|
|
2839
|
-
const
|
|
2840
|
-
|
|
2840
|
+
const g = i.firstChild;
|
|
2841
|
+
g && g.nodeType === Node.TEXT_NODE ? (h.setStart(g, y), h.setEnd(g, q)) : h.selectNodeContents(i);
|
|
2841
2842
|
} else
|
|
2842
|
-
|
|
2843
|
-
x.removeAllRanges(), x.addRange(
|
|
2843
|
+
h.selectNodeContents(i), h.collapse(!0);
|
|
2844
|
+
x.removeAllRanges(), x.addRange(h);
|
|
2844
2845
|
}
|
|
2845
2846
|
}
|
|
2846
|
-
},
|
|
2847
|
+
}, Ct = () => {
|
|
2847
2848
|
if (t.length === 0) {
|
|
2848
|
-
if (
|
|
2849
|
-
const
|
|
2850
|
-
|
|
2849
|
+
if (d.current) {
|
|
2850
|
+
const i = !(d.current.textContent?.replace(/[\u200B\n]/g, "").trim() || "");
|
|
2851
|
+
Ge(i), $e(!i);
|
|
2851
2852
|
}
|
|
2852
2853
|
return;
|
|
2853
2854
|
}
|
|
2854
|
-
|
|
2855
|
+
it(d);
|
|
2855
2856
|
try {
|
|
2856
|
-
const
|
|
2857
|
+
const i = window.getSelection()?.anchorNode ?? null;
|
|
2857
2858
|
let x = null;
|
|
2858
|
-
if (
|
|
2859
|
+
if (i && (i.nodeType === Node.ELEMENT_NODE ? x = i.closest(
|
|
2859
2860
|
'[data-type="variable"][data-node-type="report-url"]'
|
|
2860
|
-
) :
|
|
2861
|
+
) : i.nodeType === Node.TEXT_NODE && i.parentElement && (x = i.parentElement.closest(
|
|
2861
2862
|
'[data-type="variable"][data-node-type="report-url"]'
|
|
2862
2863
|
))), x) {
|
|
2863
|
-
const
|
|
2864
|
-
if (
|
|
2864
|
+
const h = x.dataset.key;
|
|
2865
|
+
if (h) {
|
|
2865
2866
|
const P = x.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
2866
2867
|
if (P) {
|
|
2867
|
-
if (!
|
|
2868
|
-
|
|
2869
|
-
const y =
|
|
2870
|
-
y && window.clearTimeout(y),
|
|
2871
|
-
tt.current(
|
|
2868
|
+
if (!st(P).reportId || Oe.current[h] === P) return;
|
|
2869
|
+
Oe.current[h] = P;
|
|
2870
|
+
const y = _e.current[h];
|
|
2871
|
+
y && window.clearTimeout(y), _e.current[h] = window.setTimeout(() => {
|
|
2872
|
+
tt.current(h, P);
|
|
2872
2873
|
}, 400);
|
|
2873
2874
|
} else {
|
|
2874
|
-
const w =
|
|
2875
|
-
w && window.clearTimeout(w), delete
|
|
2875
|
+
const w = _e.current[h];
|
|
2876
|
+
w && window.clearTimeout(w), delete _e.current[h], Oe.current[h] = "", tt.current(h, "");
|
|
2876
2877
|
}
|
|
2877
2878
|
}
|
|
2878
2879
|
}
|
|
2879
2880
|
} catch {
|
|
2880
2881
|
}
|
|
2881
|
-
if (
|
|
2882
|
-
const x =
|
|
2882
|
+
if (d.current && d.current.querySelectorAll('[data-type="variable"]').forEach((i) => {
|
|
2883
|
+
const x = i.querySelector(".variable-info-icon");
|
|
2883
2884
|
if (x) {
|
|
2884
|
-
let
|
|
2885
|
+
let h = !1;
|
|
2885
2886
|
const P = document.createTreeWalker(
|
|
2886
|
-
|
|
2887
|
+
i,
|
|
2887
2888
|
NodeFilter.SHOW_TEXT,
|
|
2888
2889
|
{
|
|
2889
2890
|
acceptNode: (w) => x.contains(w) ? NodeFilter.FILTER_REJECT : NodeFilter.FILTER_ACCEPT
|
|
@@ -2891,46 +2892,46 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2891
2892
|
);
|
|
2892
2893
|
for (; P.nextNode(); )
|
|
2893
2894
|
if (P.currentNode.textContent?.replace(/[\u200B\n]/g, "").trim()) {
|
|
2894
|
-
|
|
2895
|
+
h = !0;
|
|
2895
2896
|
break;
|
|
2896
2897
|
}
|
|
2897
|
-
|
|
2898
|
+
h ? x.classList.add("hidden") : x.classList.remove("hidden");
|
|
2898
2899
|
}
|
|
2899
|
-
}),
|
|
2900
|
+
}), ct(d, t, ee), ut(d, ve, ee, $e), !d.current) return;
|
|
2900
2901
|
t.filter((l) => l.type === "multi-variable" && l.key).forEach((l) => {
|
|
2901
2902
|
if (!l.key) return;
|
|
2902
|
-
const
|
|
2903
|
-
for (let
|
|
2904
|
-
const te = `${l.key}_${
|
|
2903
|
+
const i = l.maxCount || 9, x = Ne[l.key] || 1, h = [];
|
|
2904
|
+
for (let g = 0; g < x; g++) {
|
|
2905
|
+
const te = `${l.key}_${g}`, X = d.current.querySelector(
|
|
2905
2906
|
`[data-type="variable"][data-key="${te}"][data-multi-key="${l.key}"]`
|
|
2906
2907
|
);
|
|
2907
2908
|
if (X) {
|
|
2908
2909
|
const Z = X.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
2909
|
-
|
|
2910
|
+
h.push(Z);
|
|
2910
2911
|
}
|
|
2911
2912
|
}
|
|
2912
|
-
const w = (
|
|
2913
|
+
const w = (h[h.length - 1] || "") === "";
|
|
2913
2914
|
let y = !1, q = -1;
|
|
2914
|
-
for (let
|
|
2915
|
-
if (
|
|
2916
|
-
y = !0, q =
|
|
2915
|
+
for (let g = 0; g < h.length - 1; g++)
|
|
2916
|
+
if (h[g] === "") {
|
|
2917
|
+
y = !0, q = g;
|
|
2917
2918
|
break;
|
|
2918
2919
|
}
|
|
2919
2920
|
if (y && q >= 0) {
|
|
2920
|
-
const
|
|
2921
|
-
if (
|
|
2922
|
-
const V =
|
|
2921
|
+
const g = window.getSelection();
|
|
2922
|
+
if (g && g.rangeCount > 0) {
|
|
2923
|
+
const V = g.getRangeAt(0), K = V.startContainer, re = K.nodeType === Node.ELEMENT_NODE ? K.closest('[data-type="variable"][data-multi-key]') : K.parentElement?.closest('[data-type="variable"][data-multi-key]');
|
|
2923
2924
|
if (re) {
|
|
2924
2925
|
const oe = re.dataset.key;
|
|
2925
2926
|
if (oe) {
|
|
2926
2927
|
const de = document.createRange();
|
|
2927
2928
|
de.setStartBefore(re), de.setEnd(V.startContainer, V.startOffset);
|
|
2928
2929
|
const ge = de.toString().length;
|
|
2929
|
-
|
|
2930
|
+
Re.current = { key: oe, offset: ge };
|
|
2930
2931
|
}
|
|
2931
2932
|
}
|
|
2932
2933
|
}
|
|
2933
|
-
const te = [...
|
|
2934
|
+
const te = [...h];
|
|
2934
2935
|
for (let V = q; V < te.length - 1; V++)
|
|
2935
2936
|
te[V] = te[V + 1];
|
|
2936
2937
|
te.pop();
|
|
@@ -2939,7 +2940,7 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2939
2940
|
V && (X[`${l.key}_${K}`] = V);
|
|
2940
2941
|
});
|
|
2941
2942
|
const Z = Math.max(w ? te.length : te.length + 1, 1);
|
|
2942
|
-
|
|
2943
|
+
d.current.querySelectorAll(
|
|
2943
2944
|
'[data-type="variable"]'
|
|
2944
2945
|
).forEach((V) => {
|
|
2945
2946
|
const K = V.dataset.key, re = V.dataset.multiKey;
|
|
@@ -2947,17 +2948,17 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2947
2948
|
const oe = V.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
2948
2949
|
oe && (X[K] = oe);
|
|
2949
2950
|
}
|
|
2950
|
-
}),
|
|
2951
|
+
}), d.current.__tempVariableValues = X, Ce((V) => ({
|
|
2951
2952
|
...V,
|
|
2952
2953
|
[l.key]: Z
|
|
2953
2954
|
}));
|
|
2954
2955
|
return;
|
|
2955
2956
|
}
|
|
2956
2957
|
if (!w) {
|
|
2957
|
-
const
|
|
2958
|
+
const g = x - 1, te = `${l.key}_${g}`, X = d.current.querySelector(
|
|
2958
2959
|
`[data-type="variable"][data-key="${te}"][data-multi-key="${l.key}"]`
|
|
2959
2960
|
);
|
|
2960
|
-
if (X && X.innerText.replace(/[\u200B\n]/g, "").trim().length > 0 && x <
|
|
2961
|
+
if (X && X.innerText.replace(/[\u200B\n]/g, "").trim().length > 0 && x < i) {
|
|
2961
2962
|
const Q = window.getSelection();
|
|
2962
2963
|
if (Q && Q.rangeCount > 0) {
|
|
2963
2964
|
const V = Q.getRangeAt(0), K = V.startContainer, re = K.nodeType === Node.ELEMENT_NODE ? K.closest('[data-type="variable"][data-multi-key]') : K.parentElement?.closest('[data-type="variable"][data-multi-key]');
|
|
@@ -2967,7 +2968,7 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2967
2968
|
const de = document.createRange();
|
|
2968
2969
|
de.setStartBefore(re), de.setEnd(V.startContainer, V.startOffset);
|
|
2969
2970
|
const ge = de.toString().length;
|
|
2970
|
-
|
|
2971
|
+
Re.current = { key: oe, offset: ge };
|
|
2971
2972
|
}
|
|
2972
2973
|
}
|
|
2973
2974
|
}
|
|
@@ -2979,49 +2980,49 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
2979
2980
|
}
|
|
2980
2981
|
});
|
|
2981
2982
|
};
|
|
2982
|
-
|
|
2983
|
-
const a =
|
|
2983
|
+
Be(() => {
|
|
2984
|
+
const a = d.current;
|
|
2984
2985
|
if (!a) return;
|
|
2985
|
-
const l = /* @__PURE__ */ new Map(),
|
|
2986
|
+
const l = /* @__PURE__ */ new Map(), i = (P) => {
|
|
2986
2987
|
const w = P.target, y = P.relatedTarget;
|
|
2987
|
-
!w || !
|
|
2988
|
-
if (
|
|
2988
|
+
!w || !d.current || !d.current.contains(w) || y && d.current.contains(y) || setTimeout(() => {
|
|
2989
|
+
if (d.current) {
|
|
2989
2990
|
if (ve.length === 0) {
|
|
2990
|
-
const q =
|
|
2991
|
+
const q = d.current.textContent?.replace(/[\u200B\n]/g, "").trim() || "";
|
|
2991
2992
|
$e(q.length > 0);
|
|
2992
2993
|
return;
|
|
2993
2994
|
}
|
|
2994
|
-
|
|
2995
|
+
it(d), ct(d, ve, ee), ut(d, ve, ee, $e);
|
|
2995
2996
|
}
|
|
2996
2997
|
}, 0);
|
|
2997
2998
|
};
|
|
2998
|
-
a.addEventListener("blur",
|
|
2999
|
+
a.addEventListener("blur", i, !0);
|
|
2999
3000
|
const x = () => {
|
|
3000
|
-
if (!
|
|
3001
|
+
if (!d.current) return;
|
|
3001
3002
|
l.forEach((y, q) => {
|
|
3002
3003
|
q.removeEventListener("blur", y, !1);
|
|
3003
3004
|
}), l.clear();
|
|
3004
|
-
const P =
|
|
3005
|
+
const P = d.current.querySelectorAll(
|
|
3005
3006
|
'[data-type="variable"][data-multi-key]'
|
|
3006
3007
|
), w = (y) => {
|
|
3007
3008
|
y.stopPropagation(), y.stopImmediatePropagation();
|
|
3008
3009
|
const q = y.target;
|
|
3009
|
-
if (!q || !
|
|
3010
|
+
if (!q || !d.current || !d.current.contains(q))
|
|
3010
3011
|
return;
|
|
3011
|
-
const
|
|
3012
|
-
if (!
|
|
3012
|
+
const g = q.closest('[data-type="variable"][data-multi-key]');
|
|
3013
|
+
if (!g || !d.current.contains(g))
|
|
3013
3014
|
return;
|
|
3014
3015
|
let te = !1;
|
|
3015
3016
|
if (l.forEach((de, ge) => {
|
|
3016
|
-
(ge ===
|
|
3017
|
+
(ge === g || ge.contains(q)) && (te = !0);
|
|
3017
3018
|
}), !te)
|
|
3018
3019
|
return;
|
|
3019
|
-
const X =
|
|
3020
|
+
const X = g.dataset.multiKey, Z = g.dataset.key, Q = g.dataset.index;
|
|
3020
3021
|
if (!X || !Z || Q === void 0) return;
|
|
3021
3022
|
const V = y.relatedTarget;
|
|
3022
|
-
if (!(!V || !
|
|
3023
|
+
if (!(!V || !d.current.contains(V)))
|
|
3023
3024
|
return;
|
|
3024
|
-
const re =
|
|
3025
|
+
const re = g.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
3025
3026
|
console.log("[Blur Event] 失去焦点的 multi-variable 输入框:", {
|
|
3026
3027
|
multiKey: X,
|
|
3027
3028
|
currentKey: Z,
|
|
@@ -3034,35 +3035,35 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3034
3035
|
console.log("[Blur Event] 拆分前的内容:", re), console.log("[Blur Event] 拆分后的部分:", de);
|
|
3035
3036
|
const xe = de.slice(0, 9);
|
|
3036
3037
|
if (console.log("[Blur Event] 有效的部分(最多9个):", xe), xe.length > 1) {
|
|
3037
|
-
const Le = t.find((
|
|
3038
|
+
const Le = t.find((Ye) => Ye.type === "multi-variable" && Ye.key === X);
|
|
3038
3039
|
if (Le) {
|
|
3039
|
-
const
|
|
3040
|
-
for (let we = 0; we <
|
|
3041
|
-
const Me = `${X}_${we}`,
|
|
3040
|
+
const Ye = Ne[X] || 1, Tt = parseInt(Q, 10), St = Le.maxCount || 9, je = [];
|
|
3041
|
+
for (let we = 0; we < Ye; we++) {
|
|
3042
|
+
const Me = `${X}_${we}`, We = d.current.querySelector(
|
|
3042
3043
|
`[data-type="variable"][data-key="${Me}"][data-multi-key="${X}"]`
|
|
3043
3044
|
);
|
|
3044
|
-
if (
|
|
3045
|
-
const
|
|
3046
|
-
|
|
3045
|
+
if (We) {
|
|
3046
|
+
const Ue = We.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
3047
|
+
je.push(Ue);
|
|
3047
3048
|
}
|
|
3048
3049
|
}
|
|
3049
|
-
console.log("[Blur Event] 拆分前的所有值:",
|
|
3050
|
-
const Se =
|
|
3051
|
-
console.log("[Blur Event] 拆分后的所有值:", Se), Se.length > 0 && Se[Se.length - 1] !== "" && Se.length <
|
|
3052
|
-
const
|
|
3050
|
+
console.log("[Blur Event] 拆分前的所有值:", je), console.log("[Blur Event] 当前索引:", Tt), console.log("[Blur Event] 要插入的值:", xe), je.splice(Tt, 1, ...xe);
|
|
3051
|
+
const Se = je.slice(0, St);
|
|
3052
|
+
console.log("[Blur Event] 拆分后的所有值:", Se), Se.length > 0 && Se[Se.length - 1] !== "" && Se.length < St && Se.push("");
|
|
3053
|
+
const nn = Math.max(Se.length, 1), lt = {};
|
|
3053
3054
|
Se.forEach((we, Me) => {
|
|
3054
|
-
we && (
|
|
3055
|
-
}),
|
|
3055
|
+
we && (lt[`${X}_${Me}`] = we);
|
|
3056
|
+
}), d.current.querySelectorAll(
|
|
3056
3057
|
'[data-type="variable"]'
|
|
3057
3058
|
).forEach((we) => {
|
|
3058
|
-
const Me = we.dataset.key,
|
|
3059
|
-
if (Me &&
|
|
3060
|
-
const
|
|
3061
|
-
|
|
3059
|
+
const Me = we.dataset.key, We = we.dataset.multiKey;
|
|
3060
|
+
if (Me && We !== X) {
|
|
3061
|
+
const Ue = we.innerText.replace(/[\u200B\n]/g, "").trim();
|
|
3062
|
+
Ue && (lt[Me] = Ue);
|
|
3062
3063
|
}
|
|
3063
|
-
}),
|
|
3064
|
+
}), d.current.__tempVariableValues = lt, Ce((we) => ({
|
|
3064
3065
|
...we,
|
|
3065
|
-
[X]:
|
|
3066
|
+
[X]: nn
|
|
3066
3067
|
}));
|
|
3067
3068
|
}
|
|
3068
3069
|
}
|
|
@@ -3071,16 +3072,16 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3071
3072
|
P.forEach((y) => {
|
|
3072
3073
|
y.addEventListener("blur", w, !1), l.set(y, w);
|
|
3073
3074
|
});
|
|
3074
|
-
},
|
|
3075
|
+
}, h = setTimeout(() => {
|
|
3075
3076
|
x();
|
|
3076
3077
|
}, 0);
|
|
3077
3078
|
return () => {
|
|
3078
|
-
clearTimeout(
|
|
3079
|
+
clearTimeout(h), a.removeEventListener("blur", i, !0), l.forEach((P, w) => {
|
|
3079
3080
|
w.removeEventListener("blur", P, !1);
|
|
3080
3081
|
}), l.clear();
|
|
3081
3082
|
};
|
|
3082
|
-
}, [t, ve,
|
|
3083
|
-
const
|
|
3083
|
+
}, [t, ve, Ne, ee]);
|
|
3084
|
+
const Qt = (a) => {
|
|
3084
3085
|
if (o) {
|
|
3085
3086
|
a.preventDefault();
|
|
3086
3087
|
return;
|
|
@@ -3091,53 +3092,53 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3091
3092
|
}
|
|
3092
3093
|
const l = window.getSelection();
|
|
3093
3094
|
if (l && l.rangeCount > 0) {
|
|
3094
|
-
const
|
|
3095
|
+
const i = l.anchorNode;
|
|
3095
3096
|
let x = null;
|
|
3096
|
-
if (
|
|
3097
|
-
if (a.preventDefault(), a.stopPropagation(),
|
|
3098
|
-
const
|
|
3097
|
+
if (i && (i.nodeType === Node.ELEMENT_NODE ? x = i.closest('[data-type="text"]') : i.nodeType === Node.TEXT_NODE && i.parentElement && (x = i.parentElement.closest('[data-type="text"]'))), x) {
|
|
3098
|
+
if (a.preventDefault(), a.stopPropagation(), d.current) {
|
|
3099
|
+
const h = d.current.querySelector(
|
|
3099
3100
|
'[data-type="variable"], [data-type="upload"]'
|
|
3100
3101
|
);
|
|
3101
|
-
|
|
3102
|
+
h && h.focus();
|
|
3102
3103
|
}
|
|
3103
3104
|
return;
|
|
3104
3105
|
}
|
|
3105
3106
|
}
|
|
3106
|
-
if (
|
|
3107
|
-
const
|
|
3107
|
+
if (S && l && l.rangeCount > 0) {
|
|
3108
|
+
const i = l.anchorNode;
|
|
3108
3109
|
let x = null;
|
|
3109
|
-
if (
|
|
3110
|
-
if (a.preventDefault(), a.stopPropagation(),
|
|
3111
|
-
const
|
|
3110
|
+
if (i && (i.nodeType === Node.ELEMENT_NODE ? x = i.closest(".tag-node") : i.nodeType === Node.TEXT_NODE && i.parentElement && (x = i.parentElement.closest(".tag-node"))), x) {
|
|
3111
|
+
if (a.preventDefault(), a.stopPropagation(), d.current) {
|
|
3112
|
+
const h = d.current.querySelector(
|
|
3112
3113
|
'[data-type="variable"], [data-type="upload"]'
|
|
3113
3114
|
);
|
|
3114
|
-
|
|
3115
|
+
h && h.focus();
|
|
3115
3116
|
}
|
|
3116
3117
|
return;
|
|
3117
3118
|
}
|
|
3118
3119
|
}
|
|
3119
|
-
if (a.key === "Escape" &&
|
|
3120
|
-
if (
|
|
3120
|
+
if (a.key === "Escape" && d.current) {
|
|
3121
|
+
if (S) {
|
|
3121
3122
|
a.preventDefault();
|
|
3122
3123
|
return;
|
|
3123
3124
|
}
|
|
3124
|
-
|
|
3125
|
+
d.current.innerHTML = "", d.current.focus();
|
|
3125
3126
|
}
|
|
3126
3127
|
if (a.key === "Backspace") {
|
|
3127
|
-
const
|
|
3128
|
-
if (
|
|
3129
|
-
const x =
|
|
3130
|
-
if (
|
|
3128
|
+
const i = window.getSelection();
|
|
3129
|
+
if (i && i.rangeCount > 0) {
|
|
3130
|
+
const x = i.getRangeAt(0), h = i.anchorNode;
|
|
3131
|
+
if (S) {
|
|
3131
3132
|
let w = null, y = null;
|
|
3132
|
-
if (
|
|
3133
|
+
if (h && (h.nodeType === Node.ELEMENT_NODE ? (w = h.closest(".tag-node"), y = h.closest('[data-type="text"]')) : h.nodeType === Node.TEXT_NODE && h.parentElement && (w = h.parentElement.closest(".tag-node"), y = h.parentElement.closest('[data-type="text"]'))), (w || y) && x.collapsed && x.startOffset === 0) {
|
|
3133
3134
|
a.preventDefault();
|
|
3134
3135
|
return;
|
|
3135
3136
|
}
|
|
3136
3137
|
}
|
|
3137
3138
|
let P = null;
|
|
3138
|
-
if (
|
|
3139
|
+
if (h && (h.nodeType === Node.ELEMENT_NODE ? P = h.closest(
|
|
3139
3140
|
'[data-type="variable"]'
|
|
3140
|
-
) :
|
|
3141
|
+
) : h.nodeType === Node.TEXT_NODE && h.parentElement && (P = h.parentElement.closest(
|
|
3141
3142
|
'[data-type="variable"]'
|
|
3142
3143
|
))), P) {
|
|
3143
3144
|
if (!x.collapsed)
|
|
@@ -3158,27 +3159,27 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3158
3159
|
}
|
|
3159
3160
|
}
|
|
3160
3161
|
}
|
|
3161
|
-
},
|
|
3162
|
-
if (s || o || C || !Ee || !
|
|
3162
|
+
}, Zt = () => {
|
|
3163
|
+
if (s || o || C || !Ee || !d.current) return;
|
|
3163
3164
|
if (t.length === 0) {
|
|
3164
|
-
const w =
|
|
3165
|
+
const w = d.current.textContent?.replace(/[\u200B\n]/g, "").trim() || "";
|
|
3165
3166
|
if (!w) return;
|
|
3166
|
-
if (m(w, w),
|
|
3167
|
-
|
|
3167
|
+
if (m(w, w), d.current) {
|
|
3168
|
+
d.current.textContent = "";
|
|
3168
3169
|
const y = new Event("input", { bubbles: !0 });
|
|
3169
|
-
|
|
3170
|
+
d.current.dispatchEvent(y);
|
|
3170
3171
|
}
|
|
3171
3172
|
return;
|
|
3172
3173
|
}
|
|
3173
|
-
const a =
|
|
3174
|
+
const a = d.current;
|
|
3174
3175
|
let l = "";
|
|
3175
|
-
const
|
|
3176
|
+
const i = {}, x = /* @__PURE__ */ new Set(), h = (w) => {
|
|
3176
3177
|
if (!(w.nodeType === Node.ELEMENT_NODE && w.style.display === "none")) {
|
|
3177
3178
|
if (w.nodeType === Node.TEXT_NODE)
|
|
3178
3179
|
l += (w.textContent || "").replace(/\u200B/g, "");
|
|
3179
3180
|
else if (w.nodeType === Node.ELEMENT_NODE) {
|
|
3180
|
-
const y = w, q = y.dataset.type,
|
|
3181
|
-
if (q === "variable" &&
|
|
3181
|
+
const y = w, q = y.dataset.type, g = y.dataset.key, te = y.getAttribute("data-node-type") || "";
|
|
3182
|
+
if (q === "variable" && g) {
|
|
3182
3183
|
let X = "";
|
|
3183
3184
|
const Z = document.createTreeWalker(
|
|
3184
3185
|
y,
|
|
@@ -3196,35 +3197,35 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3196
3197
|
if (Q) {
|
|
3197
3198
|
const V = y.dataset.multiKey;
|
|
3198
3199
|
if (V) {
|
|
3199
|
-
(!
|
|
3200
|
-
const K =
|
|
3200
|
+
(!i[V] || !Array.isArray(i[V])) && (i[V] = []);
|
|
3201
|
+
const K = i[V];
|
|
3201
3202
|
K.push(Q), K.length > 1 && (l += " "), l += Q;
|
|
3202
3203
|
} else
|
|
3203
|
-
te === "report-url" ? (
|
|
3204
|
+
te === "report-url" ? (i[`${g}__sourceUrl`] = Q, l += Q) : (i[g] = Q, l += Q);
|
|
3204
3205
|
}
|
|
3205
|
-
} else if (q === "select" &&
|
|
3206
|
+
} else if (q === "select" && g) {
|
|
3206
3207
|
const X = (y.getAttribute("data-value") || "").trim();
|
|
3207
|
-
X && (
|
|
3208
|
-
} else if (q === "textarea" &&
|
|
3208
|
+
X && (i[g] = X, l += X);
|
|
3209
|
+
} else if (q === "textarea" && g) {
|
|
3209
3210
|
const Z = (y.value || "").replace(/\u200B/g, "").trim();
|
|
3210
|
-
Z && (
|
|
3211
|
-
} else if (q === "richtext" &&
|
|
3211
|
+
Z && (i[g] = Z, l += Z);
|
|
3212
|
+
} else if (q === "richtext" && g) {
|
|
3212
3213
|
const Z = (y.textContent || "").replace(/\u200B/g, "").trim();
|
|
3213
3214
|
if (Z)
|
|
3214
3215
|
if (te === "report-module") {
|
|
3215
|
-
const V = (
|
|
3216
|
-
(!
|
|
3216
|
+
const V = (g.match(/^(.*)__module_\d+$/)?.[1] || g).trim();
|
|
3217
|
+
(!i[V] || !Array.isArray(i[V])) && (i[V] = []), i[V].push(Z), x.add(V), l += Z;
|
|
3217
3218
|
} else
|
|
3218
|
-
|
|
3219
|
-
} else if (q === "datepicker" &&
|
|
3219
|
+
i[g] = Z, l += Z;
|
|
3220
|
+
} else if (q === "datepicker" && g) {
|
|
3220
3221
|
const Z = (y.getAttribute("data-value") || "").trim();
|
|
3221
3222
|
if (Z)
|
|
3222
3223
|
if (Z.includes(",")) {
|
|
3223
3224
|
const Q = Z.split(",");
|
|
3224
|
-
Q.length === 2 ? (
|
|
3225
|
+
Q.length === 2 ? (i[g] = Q, l += `[${Q[0]}, ${Q[1]}]`) : (i[g] = Z, l += Z);
|
|
3225
3226
|
} else
|
|
3226
|
-
|
|
3227
|
-
} else if (q === "upload" &&
|
|
3227
|
+
i[g] = Z, l += Z;
|
|
3228
|
+
} else if (q === "upload" && g) {
|
|
3228
3229
|
const X = y.dataset.batchKey;
|
|
3229
3230
|
if (X) {
|
|
3230
3231
|
const Z = t.find((Q) => Q.type === "upload" && Q.key === X);
|
|
@@ -3234,38 +3235,38 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3234
3235
|
const K = `${X}-${V}`, re = ee[K];
|
|
3235
3236
|
re && Q.push(re);
|
|
3236
3237
|
}
|
|
3237
|
-
|
|
3238
|
+
i[X] || (i[X] = Q.length > 0 ? Q : null, Q.length > 0 && (l += ` [附带${Q.length}个文件: ${Q.map((V) => V.name).join(", ")}] `));
|
|
3238
3239
|
} else
|
|
3239
|
-
|
|
3240
|
+
i[g] = ee[g] ?? null, ee[g] && (l += ` [附带文件: ${ee[g]?.name}] `);
|
|
3240
3241
|
} else
|
|
3241
|
-
|
|
3242
|
+
i[g] = ee[g] ?? null, ee[g] && (l += ` [附带文件: ${ee[g]?.name}] `);
|
|
3242
3243
|
} else {
|
|
3243
3244
|
if (y.classList.contains("tag-close-btn") || y.classList.contains("file-remove-btn")) return;
|
|
3244
|
-
y.getAttribute("contenteditable") === "false" && !q && y.classList.contains("tag-node") ? l += y.innerText : y.childNodes.forEach(
|
|
3245
|
+
y.getAttribute("contenteditable") === "false" && !q && y.classList.contains("tag-node") ? l += y.innerText : y.childNodes.forEach(h);
|
|
3245
3246
|
}
|
|
3246
3247
|
}
|
|
3247
3248
|
}
|
|
3248
3249
|
};
|
|
3249
|
-
if (a.childNodes.forEach(
|
|
3250
|
+
if (a.childNodes.forEach(h), l = l.trim(), !l) return;
|
|
3250
3251
|
const P = new FormData();
|
|
3251
|
-
P.append("fullPrompt", l), Object.keys(
|
|
3252
|
-
const y =
|
|
3252
|
+
P.append("fullPrompt", l), Object.keys(i).forEach((w) => {
|
|
3253
|
+
const y = i[w];
|
|
3253
3254
|
y != null && (y instanceof File ? P.append(w, y) : Array.isArray(y) ? t.some(
|
|
3254
|
-
(
|
|
3255
|
-
) || x.has(w) ? y.forEach((
|
|
3256
|
-
|
|
3257
|
-
}) : y.forEach((
|
|
3258
|
-
|
|
3255
|
+
(g) => g.type === "multi-variable" && g.key === w
|
|
3256
|
+
) || x.has(w) ? y.forEach((g) => {
|
|
3257
|
+
g != null && g !== "" && P.append(w, String(g));
|
|
3258
|
+
}) : y.forEach((g, te) => {
|
|
3259
|
+
g != null && (g instanceof File ? P.append(`${w}[${te}]`, g) : typeof g == "string" ? P.append(`${w}[${te}]`, g) : P.append(`${w}[${te}]`, String(g)));
|
|
3259
3260
|
}) : typeof y == "string" ? P.append(w, y) : P.append(w, String(y)));
|
|
3260
3261
|
}), m(P, l);
|
|
3261
|
-
},
|
|
3262
|
+
}, Te = Ie ? !1 : Fe ? _ : ze, en = Math.max(
|
|
3262
3263
|
0,
|
|
3263
|
-
F -
|
|
3264
|
-
),
|
|
3265
|
-
...
|
|
3264
|
+
F - Vt
|
|
3265
|
+
), tn = {
|
|
3266
|
+
...b ? { width: typeof b == "number" ? `${b}px` : b } : {},
|
|
3266
3267
|
...k ? { border: k } : {},
|
|
3267
3268
|
...H ? { background: H } : {},
|
|
3268
|
-
...
|
|
3269
|
+
...Te ? {
|
|
3269
3270
|
height: `${F}px`,
|
|
3270
3271
|
maxHeight: `${F}px`,
|
|
3271
3272
|
minHeight: `${F}px`
|
|
@@ -3274,19 +3275,35 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3274
3275
|
...n ? { minHeight: typeof n == "number" ? `${n}px` : n } : {}
|
|
3275
3276
|
}
|
|
3276
3277
|
};
|
|
3277
|
-
return
|
|
3278
|
-
if (!
|
|
3278
|
+
return Be(() => {
|
|
3279
|
+
if (!Te || !W.current) return;
|
|
3279
3280
|
const l = window.requestAnimationFrame(() => {
|
|
3280
3281
|
W.current && (W.current.scrollTop = 0, W.current.scrollLeft = 0);
|
|
3281
3282
|
});
|
|
3282
3283
|
return () => window.cancelAnimationFrame(l);
|
|
3283
|
-
}, [
|
|
3284
|
+
}, [Te]), Be(() => {
|
|
3285
|
+
if (!Te) return;
|
|
3286
|
+
const a = rt.current;
|
|
3287
|
+
if (!a) return;
|
|
3288
|
+
const l = L.current?.getBoundingClientRect().height ?? 0, i = Math.max(0, a - l);
|
|
3289
|
+
if (i > 0) {
|
|
3290
|
+
const x = gt.current;
|
|
3291
|
+
if (x === window) {
|
|
3292
|
+
const h = document.documentElement;
|
|
3293
|
+
h.scrollTop = Math.max(0, h.scrollTop - i);
|
|
3294
|
+
} else {
|
|
3295
|
+
const h = x;
|
|
3296
|
+
h.scrollTop = Math.max(0, h.scrollTop - i);
|
|
3297
|
+
}
|
|
3298
|
+
}
|
|
3299
|
+
rt.current = null;
|
|
3300
|
+
}, [Te]), /* @__PURE__ */ ue(
|
|
3284
3301
|
"div",
|
|
3285
3302
|
{
|
|
3286
|
-
className: `rich-text-editor${
|
|
3287
|
-
style:
|
|
3303
|
+
className: `rich-text-editor${Te ? " rte-auto-collapsed" : ""}${r ? ` ${r}` : ""}`,
|
|
3304
|
+
style: tn,
|
|
3288
3305
|
"data-disabled": o,
|
|
3289
|
-
ref:
|
|
3306
|
+
ref: L,
|
|
3290
3307
|
children: [
|
|
3291
3308
|
B,
|
|
3292
3309
|
/* @__PURE__ */ ue(
|
|
@@ -3294,25 +3311,25 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3294
3311
|
{
|
|
3295
3312
|
className: "rich-text-editor-content",
|
|
3296
3313
|
ref: W,
|
|
3297
|
-
style:
|
|
3314
|
+
style: Te ? {
|
|
3298
3315
|
// 折叠态:只裁切内容区(footer 保持),高度由 collapsedTotalHeight - footerHeight 得出
|
|
3299
|
-
maxHeight: `${
|
|
3316
|
+
maxHeight: `${en}px`,
|
|
3300
3317
|
overflow: "hidden"
|
|
3301
3318
|
} : void 0,
|
|
3302
3319
|
children: [
|
|
3303
|
-
/* @__PURE__ */
|
|
3320
|
+
/* @__PURE__ */ M(
|
|
3304
3321
|
"div",
|
|
3305
3322
|
{
|
|
3306
|
-
ref:
|
|
3307
|
-
className: `rte-editor ${t.length === 0 ? "rte-editor-default" : ""} ${
|
|
3323
|
+
ref: d,
|
|
3324
|
+
className: `rte-editor ${t.length === 0 ? "rte-editor-default" : ""} ${Pt && N ? "rte-editor-empty" : ""}`,
|
|
3308
3325
|
contentEditable: t.length === 0,
|
|
3309
3326
|
suppressContentEditableWarning: !0,
|
|
3310
3327
|
"data-placeholder": N,
|
|
3311
|
-
onMouseDown:
|
|
3312
|
-
onMouseMove:
|
|
3313
|
-
onMouseUp:
|
|
3328
|
+
onMouseDown: Wt,
|
|
3329
|
+
onMouseMove: Ut,
|
|
3330
|
+
onMouseUp: Kt,
|
|
3314
3331
|
onClick: (a) => {
|
|
3315
|
-
|
|
3332
|
+
Xt(a);
|
|
3316
3333
|
const l = a.target;
|
|
3317
3334
|
if (l) {
|
|
3318
3335
|
const x = [
|
|
@@ -3342,47 +3359,47 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3342
3359
|
].join(",");
|
|
3343
3360
|
if (l.closest(x)) return;
|
|
3344
3361
|
}
|
|
3345
|
-
if (O ||
|
|
3346
|
-
if (
|
|
3347
|
-
De(!
|
|
3362
|
+
if (O || p && !Ie) {
|
|
3363
|
+
if (p && Ie) return;
|
|
3364
|
+
De(!Te, "click");
|
|
3348
3365
|
}
|
|
3349
|
-
|
|
3366
|
+
c && c(a);
|
|
3350
3367
|
},
|
|
3351
|
-
onDoubleClick:
|
|
3352
|
-
onInput:
|
|
3353
|
-
onKeyDown:
|
|
3354
|
-
onPaste:
|
|
3368
|
+
onDoubleClick: Jt,
|
|
3369
|
+
onInput: Ct,
|
|
3370
|
+
onKeyDown: Qt,
|
|
3371
|
+
onPaste: Yt
|
|
3355
3372
|
}
|
|
3356
3373
|
),
|
|
3357
|
-
/* @__PURE__ */
|
|
3374
|
+
/* @__PURE__ */ M(
|
|
3358
3375
|
"input",
|
|
3359
3376
|
{
|
|
3360
3377
|
type: "file",
|
|
3361
3378
|
ref: U,
|
|
3362
3379
|
className: "rte-file-input",
|
|
3363
3380
|
accept: ".csv,.xlsx,.xls,.txt,.pdf,image/*",
|
|
3364
|
-
onChange:
|
|
3381
|
+
onChange: jt
|
|
3365
3382
|
}
|
|
3366
3383
|
)
|
|
3367
3384
|
]
|
|
3368
3385
|
}
|
|
3369
3386
|
),
|
|
3370
|
-
/* @__PURE__ */ ue("div", { className: "rich-text-editor-footer", ref:
|
|
3371
|
-
/* @__PURE__ */
|
|
3387
|
+
/* @__PURE__ */ ue("div", { className: "rich-text-editor-footer", ref: yt, children: [
|
|
3388
|
+
/* @__PURE__ */ M("div", { className: "rich-text-editor-footer-left", children: /* @__PURE__ */ ue("div", { className: "rich-text-editor-brand", children: [
|
|
3372
3389
|
/* @__PURE__ */ ue("div", { className: "rte-brand-badge", children: [
|
|
3373
|
-
/* @__PURE__ */
|
|
3374
|
-
/* @__PURE__ */
|
|
3390
|
+
/* @__PURE__ */ M("img", { src: "https://oospublic.sealseek.cn/file/website/ball.png", alt: "" }),
|
|
3391
|
+
/* @__PURE__ */ M("span", { className: "rte-brand-text", children: "SealSeek 1.0" })
|
|
3375
3392
|
] }),
|
|
3376
|
-
$ !== "hideAgent" && /* @__PURE__ */
|
|
3377
|
-
|
|
3393
|
+
$ !== "hideAgent" && /* @__PURE__ */ M(
|
|
3394
|
+
pn,
|
|
3378
3395
|
{
|
|
3379
3396
|
placement: "topLeft",
|
|
3380
3397
|
menu: {
|
|
3381
|
-
items:
|
|
3398
|
+
items: I.filter((a) => a.isShowNew !== 1).map((a) => ({
|
|
3382
3399
|
key: a.key,
|
|
3383
3400
|
label: /* @__PURE__ */ ue("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: [
|
|
3384
|
-
a.icon && /* @__PURE__ */
|
|
3385
|
-
/* @__PURE__ */
|
|
3401
|
+
a.icon && /* @__PURE__ */ M("i", { className: a.icon }),
|
|
3402
|
+
/* @__PURE__ */ M("span", { children: a.label })
|
|
3386
3403
|
] }),
|
|
3387
3404
|
onClick: () => {
|
|
3388
3405
|
A?.(a);
|
|
@@ -3392,34 +3409,34 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3392
3409
|
trigger: ["click"],
|
|
3393
3410
|
disabled: o || s,
|
|
3394
3411
|
overlayClassName: "rte-agent-dropdown",
|
|
3395
|
-
children: /* @__PURE__ */ ue("div", { className: "rte-agent-badge", style: { cursor:
|
|
3396
|
-
/* @__PURE__ */
|
|
3397
|
-
/* @__PURE__ */
|
|
3412
|
+
children: /* @__PURE__ */ ue("div", { className: "rte-agent-badge", style: { cursor: I.length > 0 ? "pointer" : "default" }, children: [
|
|
3413
|
+
/* @__PURE__ */ M("i", { className: "iconfont icon-zhinengti", style: { fontSize: "16px" } }),
|
|
3414
|
+
/* @__PURE__ */ M("span", { className: "rte-agent-text", children: "智能体" })
|
|
3398
3415
|
] })
|
|
3399
3416
|
}
|
|
3400
3417
|
)
|
|
3401
3418
|
] }) }),
|
|
3402
3419
|
/* @__PURE__ */ ue("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: [
|
|
3403
3420
|
(() => {
|
|
3404
|
-
const a = t.find((
|
|
3421
|
+
const a = t.find((i) => i.type === "tag");
|
|
3405
3422
|
if (!a || !a.text) return null;
|
|
3406
|
-
const l =
|
|
3423
|
+
const l = I.find((i) => i.label === a.text);
|
|
3407
3424
|
return !l || l.points === void 0 || l.points === null ? null : /* @__PURE__ */ ue("div", { className: "rte-points-badge", children: [
|
|
3408
|
-
/* @__PURE__ */
|
|
3425
|
+
/* @__PURE__ */ M("i", { className: "iconfont icon-jifen", style: { marginRight: "4px", fontSize: "16px" } }),
|
|
3409
3426
|
/* @__PURE__ */ ue("span", { style: { fontSize: "16px", lineHeight: "22px" }, children: [
|
|
3410
3427
|
"-",
|
|
3411
3428
|
String(l.points)
|
|
3412
3429
|
] })
|
|
3413
3430
|
] });
|
|
3414
3431
|
})(),
|
|
3415
|
-
/* @__PURE__ */
|
|
3432
|
+
/* @__PURE__ */ M(
|
|
3416
3433
|
"button",
|
|
3417
3434
|
{
|
|
3418
3435
|
type: "button",
|
|
3419
|
-
onClick:
|
|
3436
|
+
onClick: Zt,
|
|
3420
3437
|
disabled: s || o || C || !Ee,
|
|
3421
3438
|
className: "rich-text-editor-send-button",
|
|
3422
|
-
children: s || C ? /* @__PURE__ */
|
|
3439
|
+
children: s || C ? /* @__PURE__ */ M("span", { className: "rte-send-spinner" }) : /* @__PURE__ */ M("i", { className: "iconfont icon-fasong" })
|
|
3423
3440
|
}
|
|
3424
3441
|
)
|
|
3425
3442
|
] })
|
|
@@ -3432,7 +3449,7 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3432
3449
|
};
|
|
3433
3450
|
if (ae.type === "upload")
|
|
3434
3451
|
a = t.find(
|
|
3435
|
-
(
|
|
3452
|
+
(h) => h.type === "upload" && h.key === ae.key
|
|
3436
3453
|
)?.tooltip || "";
|
|
3437
3454
|
else if (ae.type === "tag")
|
|
3438
3455
|
a = ae.anchorEl.dataset.tooltip || "";
|
|
@@ -3441,10 +3458,10 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3441
3458
|
else if (ae.type === "variable")
|
|
3442
3459
|
a = ae.anchorEl.dataset.tooltip || "";
|
|
3443
3460
|
else if (ae.type === "upload-preview") {
|
|
3444
|
-
const x = ee[ae.key],
|
|
3445
|
-
if (x &&
|
|
3461
|
+
const x = ee[ae.key], h = !!x && (x.type?.startsWith("image/") || /\.(png|jpe?g|gif|webp|bmp|svg)$/i.test(x.name || ""));
|
|
3462
|
+
if (x && h) {
|
|
3446
3463
|
const P = URL.createObjectURL(x);
|
|
3447
|
-
a = /* @__PURE__ */
|
|
3464
|
+
a = /* @__PURE__ */ M("div", { className: "rte-upload-preview", children: /* @__PURE__ */ M("img", { className: "rte-upload-preview-img", src: P, alt: x.name }) }), l = {
|
|
3448
3465
|
background: "#fff",
|
|
3449
3466
|
padding: 0,
|
|
3450
3467
|
borderRadius: 4,
|
|
@@ -3454,10 +3471,10 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3454
3471
|
a = "";
|
|
3455
3472
|
}
|
|
3456
3473
|
if (!a) return null;
|
|
3457
|
-
const
|
|
3458
|
-
return
|
|
3459
|
-
/* @__PURE__ */
|
|
3460
|
-
|
|
3474
|
+
const i = ae.type === "upload-preview" ? "#0A0A0A" : "#fff";
|
|
3475
|
+
return mt(
|
|
3476
|
+
/* @__PURE__ */ M(
|
|
3477
|
+
fn,
|
|
3461
3478
|
{
|
|
3462
3479
|
arrow: !1,
|
|
3463
3480
|
overlayClassName: [
|
|
@@ -3465,12 +3482,12 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3465
3482
|
ae.type === "upload-preview" ? "rte-tooltip-preview" : "",
|
|
3466
3483
|
ae.type === "tag" ? "rte-tooltip-tag" : ""
|
|
3467
3484
|
].filter(Boolean).join(" "),
|
|
3468
|
-
title: ae.type === "upload-preview" ? a : /* @__PURE__ */
|
|
3485
|
+
title: ae.type === "upload-preview" ? a : /* @__PURE__ */ M("div", { style: { maxWidth: "200px", fontSize: "12px", color: i }, children: a }),
|
|
3469
3486
|
open: !0,
|
|
3470
3487
|
placement: ae.type === "upload-preview" ? "topLeft" : "top",
|
|
3471
3488
|
getPopupContainer: () => document.body,
|
|
3472
3489
|
overlayInnerStyle: l,
|
|
3473
|
-
children: /* @__PURE__ */
|
|
3490
|
+
children: /* @__PURE__ */ M(
|
|
3474
3491
|
"div",
|
|
3475
3492
|
{
|
|
3476
3493
|
style: {
|
|
@@ -3489,13 +3506,13 @@ const { RangePicker: tr } = ln, nr = ({ host: t, onChange: m }) => {
|
|
|
3489
3506
|
document.body
|
|
3490
3507
|
);
|
|
3491
3508
|
})(),
|
|
3492
|
-
|
|
3493
|
-
|
|
3509
|
+
zt,
|
|
3510
|
+
Ft
|
|
3494
3511
|
]
|
|
3495
3512
|
}
|
|
3496
3513
|
);
|
|
3497
3514
|
};
|
|
3498
|
-
|
|
3515
|
+
sr.__docgenInfo = {
|
|
3499
3516
|
displayName: "RichTextEditor",
|
|
3500
3517
|
description: "结构化富文本输入组件,支持标签、变量输入块、文件上传以及互斥显示逻辑。",
|
|
3501
3518
|
props: {
|
|
@@ -3523,22 +3540,22 @@ ar.__docgenInfo = {
|
|
|
3523
3540
|
}
|
|
3524
3541
|
}
|
|
3525
3542
|
};
|
|
3526
|
-
const
|
|
3543
|
+
const Mt = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAFSSURBVHgB3ZTtccIwDIaVXv83I2SDZgSP0BHMBG0naEZhA2boBGQDswHdQJUOGRxjO0Z8HPDe6eJzJD2W4gjgEYSIn2xwK6EIFHqBGysJpMP3ZB0oRbEtmal1NtIxl4OWWsoxEsvqofJ0rgTNASOYq+7SXKDsuYvAcgkq/PWwBLQWqIfdjeRStaBUc4qzgLi9/BzJNmS/sh6bpvmrTfSFacU3scWy1mQryWdSnXiFE8QVUJINLTuyhWzzz/1OZmTN9hEckqtfUOwIGlGCpVRjE+94JFqpMtTeVzO8/UmPxpZU8Qa7aln8Tb9pfwla4WHWrjPvvbbnTBsX7PmLs83EDAH0BxSw1G31+/1FoDg/vPcXR+wocQS1apj4+P92FfhOoLyuBfYlmPgYnGoCjWADzAkzUyJ430awLmphPaxWQVU22BuuApPkHaanjcXSN3t6/QNjTMSJWDcs1QAAAABJRU5ErkJggg==", lr = [
|
|
3527
3544
|
{ label: "5页", value: 5 },
|
|
3528
3545
|
{ label: "10页", value: 10 },
|
|
3529
3546
|
{ label: "15页", value: 15 },
|
|
3530
3547
|
{ label: "30页", value: 30 }
|
|
3531
|
-
],
|
|
3548
|
+
], ir = ({
|
|
3532
3549
|
autoLoading: t,
|
|
3533
3550
|
batchSize: m,
|
|
3534
3551
|
loadingProgress: s,
|
|
3535
3552
|
loadIcon: o,
|
|
3536
|
-
onBatchSizeChange:
|
|
3537
|
-
onLoadNextPage:
|
|
3538
|
-
onStartAutoLoad:
|
|
3553
|
+
onBatchSizeChange: b,
|
|
3554
|
+
onLoadNextPage: S,
|
|
3555
|
+
onStartAutoLoad: I,
|
|
3539
3556
|
onStopLoad: A
|
|
3540
3557
|
}) => t && s ? /* @__PURE__ */ ue("div", { className: "auto_load_progress", children: [
|
|
3541
|
-
o || /* @__PURE__ */
|
|
3558
|
+
o || /* @__PURE__ */ M("img", { src: Mt, alt: "自动加载", width: 14, height: 14 }),
|
|
3542
3559
|
/* @__PURE__ */ ue("span", { children: [
|
|
3543
3560
|
"正在加载第",
|
|
3544
3561
|
s.currentPage,
|
|
@@ -3546,20 +3563,20 @@ const _t = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAA
|
|
|
3546
3563
|
s.totalPages,
|
|
3547
3564
|
"页"
|
|
3548
3565
|
] }),
|
|
3549
|
-
/* @__PURE__ */
|
|
3550
|
-
|
|
3566
|
+
/* @__PURE__ */ M(
|
|
3567
|
+
mn,
|
|
3551
3568
|
{
|
|
3552
3569
|
percent: s.percentage,
|
|
3553
3570
|
type: "line",
|
|
3554
3571
|
size: [160, 8]
|
|
3555
3572
|
}
|
|
3556
3573
|
),
|
|
3557
|
-
/* @__PURE__ */
|
|
3574
|
+
/* @__PURE__ */ M("span", { onClick: A, className: "auto_load_stop_btn", children: "停止加载" })
|
|
3558
3575
|
] }) : /* @__PURE__ */ ue("div", { className: "auto_load_container", children: [
|
|
3559
|
-
/* @__PURE__ */
|
|
3576
|
+
/* @__PURE__ */ M(
|
|
3560
3577
|
"div",
|
|
3561
3578
|
{
|
|
3562
|
-
onClick:
|
|
3579
|
+
onClick: S,
|
|
3563
3580
|
className: "auto_load_next_btn",
|
|
3564
3581
|
style: {
|
|
3565
3582
|
backgroundColor: t ? "#f5f5f5" : "#2563eb"
|
|
@@ -3579,19 +3596,19 @@ const _t = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAA
|
|
|
3579
3596
|
"div",
|
|
3580
3597
|
{
|
|
3581
3598
|
className: "auto_load_btn",
|
|
3582
|
-
onClick: t ? void 0 :
|
|
3599
|
+
onClick: t ? void 0 : I,
|
|
3583
3600
|
children: [
|
|
3584
|
-
o || /* @__PURE__ */
|
|
3585
|
-
/* @__PURE__ */
|
|
3601
|
+
o || /* @__PURE__ */ M("img", { src: Mt, alt: "自动加载", width: 14, height: 14 }),
|
|
3602
|
+
/* @__PURE__ */ M("span", { children: "自动加载" })
|
|
3586
3603
|
]
|
|
3587
3604
|
}
|
|
3588
3605
|
),
|
|
3589
|
-
/* @__PURE__ */
|
|
3606
|
+
/* @__PURE__ */ M(
|
|
3590
3607
|
et,
|
|
3591
3608
|
{
|
|
3592
3609
|
value: m,
|
|
3593
|
-
onChange:
|
|
3594
|
-
options:
|
|
3610
|
+
onChange: b,
|
|
3611
|
+
options: lr,
|
|
3595
3612
|
disabled: t,
|
|
3596
3613
|
size: "small",
|
|
3597
3614
|
className: "auto_load_select",
|
|
@@ -3601,80 +3618,80 @@ const _t = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAA
|
|
|
3601
3618
|
]
|
|
3602
3619
|
}
|
|
3603
3620
|
)
|
|
3604
|
-
] }),
|
|
3621
|
+
] }), cr = ({
|
|
3605
3622
|
current: t,
|
|
3606
3623
|
loadIcon: m,
|
|
3607
3624
|
pageSize: s,
|
|
3608
3625
|
total: o,
|
|
3609
|
-
cachedPages:
|
|
3610
|
-
loadedCount:
|
|
3611
|
-
autoLoading:
|
|
3626
|
+
cachedPages: b,
|
|
3627
|
+
loadedCount: S,
|
|
3628
|
+
autoLoading: I = !1,
|
|
3612
3629
|
loadingProgress: A,
|
|
3613
3630
|
onChange: E,
|
|
3614
3631
|
onLoadNextPage: C,
|
|
3615
3632
|
onStartAutoLoad: N,
|
|
3616
3633
|
onStopLoading: k
|
|
3617
3634
|
}) => {
|
|
3618
|
-
const [H, $] = le(5), e = Math.ceil(o / s), n =
|
|
3635
|
+
const [H, $] = le(5), e = Math.ceil(o / s), n = dt(() => b.length >= e, [b, e]), r = () => Array.from(
|
|
3619
3636
|
{ length: e },
|
|
3620
|
-
(
|
|
3621
|
-
).filter((
|
|
3637
|
+
(D, T) => T + 1
|
|
3638
|
+
).filter((D) => !b.includes(D)).slice(0, H);
|
|
3622
3639
|
return /* @__PURE__ */ ue("div", { className: "pagination_footer", children: [
|
|
3623
3640
|
/* @__PURE__ */ ue("div", { className: "pagination_leftWrap", children: [
|
|
3624
3641
|
/* @__PURE__ */ ue("span", { className: "pagination_total", children: [
|
|
3625
|
-
/* @__PURE__ */
|
|
3626
|
-
|
|
3642
|
+
/* @__PURE__ */ M(
|
|
3643
|
+
wn,
|
|
3627
3644
|
{
|
|
3628
3645
|
style: { color: "#2563EB", marginRight: "4px" }
|
|
3629
3646
|
}
|
|
3630
3647
|
),
|
|
3631
3648
|
"已加载: ",
|
|
3632
|
-
|
|
3649
|
+
S,
|
|
3633
3650
|
"/",
|
|
3634
3651
|
o,
|
|
3635
3652
|
"条数据"
|
|
3636
3653
|
] }),
|
|
3637
|
-
!n && /* @__PURE__ */
|
|
3638
|
-
|
|
3654
|
+
!n && /* @__PURE__ */ M(
|
|
3655
|
+
ir,
|
|
3639
3656
|
{
|
|
3640
3657
|
loadIcon: m || void 0,
|
|
3641
|
-
autoLoading:
|
|
3658
|
+
autoLoading: I,
|
|
3642
3659
|
batchSize: H,
|
|
3643
3660
|
loadingProgress: A,
|
|
3644
3661
|
disabled: !C || !N,
|
|
3645
3662
|
onBatchSizeChange: $,
|
|
3646
3663
|
onLoadNextPage: () => C?.(),
|
|
3647
3664
|
onStartAutoLoad: () => {
|
|
3648
|
-
const
|
|
3649
|
-
N?.(
|
|
3665
|
+
const p = r();
|
|
3666
|
+
N?.(p);
|
|
3650
3667
|
},
|
|
3651
3668
|
onStopLoad: () => k?.()
|
|
3652
3669
|
}
|
|
3653
3670
|
)
|
|
3654
3671
|
] }),
|
|
3655
|
-
/* @__PURE__ */
|
|
3656
|
-
|
|
3672
|
+
/* @__PURE__ */ M(
|
|
3673
|
+
yn,
|
|
3657
3674
|
{
|
|
3658
3675
|
current: t,
|
|
3659
3676
|
pageSize: s,
|
|
3660
3677
|
total: o,
|
|
3661
|
-
onChange: (
|
|
3678
|
+
onChange: (p) => E(p),
|
|
3662
3679
|
showSizeChanger: !1,
|
|
3663
3680
|
showQuickJumper: !1,
|
|
3664
3681
|
showTotal: () => "",
|
|
3665
|
-
itemRender: (
|
|
3666
|
-
const z =
|
|
3667
|
-
return
|
|
3682
|
+
itemRender: (p, D, T) => {
|
|
3683
|
+
const z = b.includes(p);
|
|
3684
|
+
return D === "prev" || D === "next" || D === "jump-prev" || D === "jump-next" ? /* @__PURE__ */ M("div", { className: "pageBox", children: T }) : /* @__PURE__ */ ue(
|
|
3668
3685
|
"div",
|
|
3669
3686
|
{
|
|
3670
3687
|
className: "pageBox",
|
|
3671
3688
|
style: {
|
|
3672
|
-
backgroundColor: t ===
|
|
3673
|
-
color: t ===
|
|
3689
|
+
backgroundColor: t === p ? "#2563EB" : "#f5f5f5",
|
|
3690
|
+
color: t === p ? "#fff" : z ? "#171717" : "#a3a3a3"
|
|
3674
3691
|
},
|
|
3675
3692
|
children: [
|
|
3676
|
-
|
|
3677
|
-
!z && /* @__PURE__ */
|
|
3693
|
+
p,
|
|
3694
|
+
!z && /* @__PURE__ */ M("span", { className: "unload_spot" })
|
|
3678
3695
|
]
|
|
3679
3696
|
}
|
|
3680
3697
|
);
|
|
@@ -3682,14 +3699,14 @@ const _t = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAA
|
|
|
3682
3699
|
}
|
|
3683
3700
|
)
|
|
3684
3701
|
] });
|
|
3685
|
-
},
|
|
3702
|
+
}, ur = (t) => {
|
|
3686
3703
|
const {
|
|
3687
3704
|
loading: m,
|
|
3688
3705
|
autoLoading: s,
|
|
3689
3706
|
loadingProgress: o,
|
|
3690
|
-
columns:
|
|
3691
|
-
dataSource:
|
|
3692
|
-
total:
|
|
3707
|
+
columns: b = [],
|
|
3708
|
+
dataSource: S = [],
|
|
3709
|
+
total: I,
|
|
3693
3710
|
current: A,
|
|
3694
3711
|
pageSize: E,
|
|
3695
3712
|
cachedPages: C,
|
|
@@ -3699,35 +3716,35 @@ const _t = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAA
|
|
|
3699
3716
|
onStopLoading: $,
|
|
3700
3717
|
...e
|
|
3701
3718
|
} = t, n = se(null), r = ce(
|
|
3702
|
-
(
|
|
3703
|
-
N(
|
|
3704
|
-
key: `${(
|
|
3719
|
+
(c) => {
|
|
3720
|
+
N(c), C.includes(c) && n.current?.scrollTo({
|
|
3721
|
+
key: `${(c - 1) * E + 1}`
|
|
3705
3722
|
});
|
|
3706
3723
|
},
|
|
3707
3724
|
[C, N, E]
|
|
3708
3725
|
);
|
|
3709
3726
|
return /* @__PURE__ */ ue("div", { className: "flex flex-col", children: [
|
|
3710
|
-
/* @__PURE__ */
|
|
3711
|
-
|
|
3727
|
+
/* @__PURE__ */ M(
|
|
3728
|
+
ft,
|
|
3712
3729
|
{
|
|
3713
3730
|
ref: n,
|
|
3714
3731
|
...e,
|
|
3715
|
-
columns:
|
|
3716
|
-
dataSource:
|
|
3732
|
+
columns: b,
|
|
3733
|
+
dataSource: S,
|
|
3717
3734
|
pagination: !1,
|
|
3718
3735
|
virtual: !0
|
|
3719
3736
|
}
|
|
3720
3737
|
),
|
|
3721
|
-
/* @__PURE__ */
|
|
3722
|
-
|
|
3738
|
+
/* @__PURE__ */ M(
|
|
3739
|
+
cr,
|
|
3723
3740
|
{
|
|
3724
3741
|
loading: m,
|
|
3725
3742
|
autoLoading: s,
|
|
3726
3743
|
loadingProgress: o,
|
|
3727
3744
|
current: A,
|
|
3728
3745
|
pageSize: E,
|
|
3729
|
-
total:
|
|
3730
|
-
loadedCount:
|
|
3746
|
+
total: I,
|
|
3747
|
+
loadedCount: S.length,
|
|
3731
3748
|
cachedPages: C,
|
|
3732
3749
|
onChange: r,
|
|
3733
3750
|
onLoadNextPage: k,
|
|
@@ -3737,7 +3754,7 @@ const _t = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAA
|
|
|
3737
3754
|
)
|
|
3738
3755
|
] });
|
|
3739
3756
|
};
|
|
3740
|
-
|
|
3757
|
+
ur.__docgenInfo = {
|
|
3741
3758
|
displayName: "VirtualTable",
|
|
3742
3759
|
description: "虚拟滚动表格组件,支持分页、数据缓存和自动加载功能。",
|
|
3743
3760
|
props: {
|
|
@@ -3844,77 +3861,77 @@ ir.__docgenInfo = {
|
|
|
3844
3861
|
}
|
|
3845
3862
|
}
|
|
3846
3863
|
};
|
|
3847
|
-
const
|
|
3864
|
+
const dr = ({
|
|
3848
3865
|
texts: t = [],
|
|
3849
3866
|
placeholder: m = "请输入内容",
|
|
3850
3867
|
animationSpeed: s = 100,
|
|
3851
3868
|
autoPlay: o = !0,
|
|
3852
|
-
value:
|
|
3853
|
-
onChange:
|
|
3854
|
-
...
|
|
3869
|
+
value: b,
|
|
3870
|
+
onChange: S,
|
|
3871
|
+
...I
|
|
3855
3872
|
}) => {
|
|
3856
|
-
const [A, E] = le(""), [C, N] = le(0), [k, H] = le(!1), [$, e] = le(!1), [n, r] = le(!1),
|
|
3873
|
+
const [A, E] = le(""), [C, N] = le(0), [k, H] = le(!1), [$, e] = le(!1), [n, r] = le(!1), c = se(void 0), p = se(void 0), D = se(t), T = se(C), z = se($), j = se(A);
|
|
3857
3874
|
pe(() => {
|
|
3858
|
-
|
|
3875
|
+
D.current = t, T.current = C, z.current = $, j.current = A;
|
|
3859
3876
|
});
|
|
3860
|
-
const Y = ce((
|
|
3877
|
+
const Y = ce((u, f) => {
|
|
3861
3878
|
let v = 0;
|
|
3862
3879
|
r(!0);
|
|
3863
3880
|
const B = () => {
|
|
3864
|
-
v <
|
|
3881
|
+
v < u.length ? (E(u.slice(0, v + 1)), v++, p.current = window.setTimeout(B, s)) : (r(!1), f?.());
|
|
3865
3882
|
};
|
|
3866
3883
|
B();
|
|
3867
|
-
}, [s]), F = ce((
|
|
3868
|
-
let
|
|
3884
|
+
}, [s]), F = ce((u) => {
|
|
3885
|
+
let f = j.current.length;
|
|
3869
3886
|
const v = () => {
|
|
3870
|
-
|
|
3887
|
+
f > 0 ? (E(j.current.slice(0, f - 1)), f--, p.current = window.setTimeout(v, s / 2)) : u?.();
|
|
3871
3888
|
};
|
|
3872
3889
|
v();
|
|
3873
3890
|
}, [s]), O = ce(() => {
|
|
3874
|
-
if (
|
|
3891
|
+
if (D.current.length === 0 || z.current) return;
|
|
3875
3892
|
H(!0);
|
|
3876
|
-
const
|
|
3893
|
+
const u = D.current[T.current];
|
|
3877
3894
|
j.current ? F(() => {
|
|
3878
|
-
Y(
|
|
3879
|
-
|
|
3880
|
-
N((
|
|
3895
|
+
Y(u, () => {
|
|
3896
|
+
c.current = window.setTimeout(() => {
|
|
3897
|
+
N((f) => (f + 1) % D.current.length), H(!1);
|
|
3881
3898
|
}, 2e3);
|
|
3882
3899
|
});
|
|
3883
|
-
}) : Y(
|
|
3884
|
-
|
|
3885
|
-
N((
|
|
3900
|
+
}) : Y(u, () => {
|
|
3901
|
+
c.current = window.setTimeout(() => {
|
|
3902
|
+
N((f) => (f + 1) % D.current.length), H(!1);
|
|
3886
3903
|
}, 2e3);
|
|
3887
3904
|
});
|
|
3888
3905
|
}, [F, Y]);
|
|
3889
3906
|
return pe(() => (o && t.length > 0 && !$ && O(), () => {
|
|
3890
|
-
|
|
3907
|
+
c.current && window.clearTimeout(c.current), p.current && window.clearTimeout(p.current);
|
|
3891
3908
|
}), [C, $, o, t.length, O]), pe(() => {
|
|
3892
3909
|
!k && o && t.length > 0 && !$ && O();
|
|
3893
3910
|
}, [C, k, o, t.length, $, O]), /* @__PURE__ */ ue("div", { style: { position: "relative" }, children: [
|
|
3894
|
-
/* @__PURE__ */
|
|
3895
|
-
|
|
3911
|
+
/* @__PURE__ */ M(
|
|
3912
|
+
It,
|
|
3896
3913
|
{
|
|
3897
|
-
...
|
|
3898
|
-
value:
|
|
3899
|
-
onChange: (
|
|
3900
|
-
|
|
3914
|
+
...I,
|
|
3915
|
+
value: b,
|
|
3916
|
+
onChange: (u) => {
|
|
3917
|
+
S?.(u.target.value), I.onChange?.(u);
|
|
3901
3918
|
},
|
|
3902
|
-
onFocus: (
|
|
3903
|
-
e(!0),
|
|
3919
|
+
onFocus: (u) => {
|
|
3920
|
+
e(!0), c.current && window.clearTimeout(c.current), p.current && window.clearTimeout(p.current), H(!1), r(!1), I.onFocus?.(u);
|
|
3904
3921
|
},
|
|
3905
|
-
onBlur: (
|
|
3906
|
-
e(!1), !
|
|
3922
|
+
onBlur: (u) => {
|
|
3923
|
+
e(!1), !b && t.length > 0 && (E(""), N(0)), I.onBlur?.(u);
|
|
3907
3924
|
},
|
|
3908
|
-
placeholder: $ ||
|
|
3925
|
+
placeholder: $ || b ? m : A || m,
|
|
3909
3926
|
style: {
|
|
3910
3927
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3911
|
-
...
|
|
3928
|
+
...I.style,
|
|
3912
3929
|
position: "relative",
|
|
3913
3930
|
zIndex: 1
|
|
3914
3931
|
}
|
|
3915
3932
|
}
|
|
3916
3933
|
),
|
|
3917
|
-
!$ && !
|
|
3934
|
+
!$ && !b && A && /* @__PURE__ */ ue(
|
|
3918
3935
|
"div",
|
|
3919
3936
|
{
|
|
3920
3937
|
style: {
|
|
@@ -3934,8 +3951,8 @@ const cr = ({
|
|
|
3934
3951
|
fontFamily: "inherit"
|
|
3935
3952
|
},
|
|
3936
3953
|
children: [
|
|
3937
|
-
/* @__PURE__ */
|
|
3938
|
-
n && /* @__PURE__ */
|
|
3954
|
+
/* @__PURE__ */ M("span", { children: A }),
|
|
3955
|
+
n && /* @__PURE__ */ M(
|
|
3939
3956
|
"span",
|
|
3940
3957
|
{
|
|
3941
3958
|
style: {
|
|
@@ -3951,7 +3968,7 @@ const cr = ({
|
|
|
3951
3968
|
]
|
|
3952
3969
|
}
|
|
3953
3970
|
),
|
|
3954
|
-
/* @__PURE__ */
|
|
3971
|
+
/* @__PURE__ */ M("style", { children: `
|
|
3955
3972
|
@keyframes blink {
|
|
3956
3973
|
0%, 50% { opacity: 1; }
|
|
3957
3974
|
51%, 100% { opacity: 0; }
|
|
@@ -3959,7 +3976,7 @@ const cr = ({
|
|
|
3959
3976
|
` })
|
|
3960
3977
|
] });
|
|
3961
3978
|
};
|
|
3962
|
-
|
|
3979
|
+
dr.__docgenInfo = {
|
|
3963
3980
|
displayName: "DynamicInput",
|
|
3964
3981
|
description: "动态文案输入框组件,支持流式文字动画效果",
|
|
3965
3982
|
props: {
|
|
@@ -4004,7 +4021,7 @@ cr.__docgenInfo = {
|
|
|
4004
4021
|
}
|
|
4005
4022
|
}
|
|
4006
4023
|
};
|
|
4007
|
-
const
|
|
4024
|
+
const pr = ({
|
|
4008
4025
|
texts: t = [],
|
|
4009
4026
|
// 动态文案数组,默认为空数组
|
|
4010
4027
|
placeholder: m = "请输入内容",
|
|
@@ -4013,11 +4030,11 @@ const ur = ({
|
|
|
4013
4030
|
// 打字机动画速度,毫秒
|
|
4014
4031
|
autoPlay: o = !0,
|
|
4015
4032
|
// 是否自动播放动画
|
|
4016
|
-
value:
|
|
4033
|
+
value: b = "",
|
|
4017
4034
|
// 受控模式的值
|
|
4018
|
-
onChange:
|
|
4035
|
+
onChange: S,
|
|
4019
4036
|
// 受控模式的变化回调
|
|
4020
|
-
onSubmit:
|
|
4037
|
+
onSubmit: I,
|
|
4021
4038
|
// 提交回调
|
|
4022
4039
|
maxLength: A = 500,
|
|
4023
4040
|
// 最大字符数限制
|
|
@@ -4034,9 +4051,9 @@ const ur = ({
|
|
|
4034
4051
|
...$
|
|
4035
4052
|
// 其他原生属性
|
|
4036
4053
|
}) => {
|
|
4037
|
-
const [e, n] = le(""), [r,
|
|
4054
|
+
const [e, n] = le(""), [r, c] = le(0), [p, D] = le(!1), [T, z] = le(!1), [j, Y] = le(!1), [F, O] = le(b || ""), G = se(void 0), _ = se(void 0), R = se(t), J = se(r), u = se(T), f = se(e), v = se(null);
|
|
4038
4055
|
pe(() => {
|
|
4039
|
-
R.current = t, J.current = r,
|
|
4056
|
+
R.current = t, J.current = r, u.current = T, f.current = e;
|
|
4040
4057
|
});
|
|
4041
4058
|
const B = ce((ne, ae) => {
|
|
4042
4059
|
let he = 0;
|
|
@@ -4045,62 +4062,62 @@ const ur = ({
|
|
|
4045
4062
|
he < ne.length ? (n(ne.slice(0, he + 1)), he++, _.current = window.setTimeout(ye, s)) : (Y(!1), ae?.());
|
|
4046
4063
|
};
|
|
4047
4064
|
ye();
|
|
4048
|
-
}, [s]),
|
|
4049
|
-
let ae =
|
|
4065
|
+
}, [s]), L = ce((ne) => {
|
|
4066
|
+
let ae = f.current.length;
|
|
4050
4067
|
const he = () => {
|
|
4051
|
-
ae > 0 ? (n(
|
|
4068
|
+
ae > 0 ? (n(f.current.slice(0, ae - 1)), ae--, _.current = window.setTimeout(he, s / 2)) : ne?.();
|
|
4052
4069
|
};
|
|
4053
4070
|
he();
|
|
4054
4071
|
}, [s]), W = ce(() => {
|
|
4055
|
-
if (R.current.length === 0 ||
|
|
4056
|
-
|
|
4072
|
+
if (R.current.length === 0 || u.current) return;
|
|
4073
|
+
D(!0);
|
|
4057
4074
|
const ne = R.current[J.current];
|
|
4058
|
-
|
|
4075
|
+
f.current ? L(() => {
|
|
4059
4076
|
B(ne, () => {
|
|
4060
4077
|
G.current = window.setTimeout(() => {
|
|
4061
|
-
|
|
4078
|
+
c((ae) => (ae + 1) % R.current.length), D(!1);
|
|
4062
4079
|
}, 2e3);
|
|
4063
4080
|
});
|
|
4064
4081
|
}) : B(ne, () => {
|
|
4065
4082
|
G.current = window.setTimeout(() => {
|
|
4066
|
-
|
|
4083
|
+
c((ae) => (ae + 1) % R.current.length), D(!1);
|
|
4067
4084
|
}, 2e3);
|
|
4068
4085
|
});
|
|
4069
|
-
}, [
|
|
4070
|
-
pe(() => (o && t.length > 0 && !
|
|
4086
|
+
}, [L, B]);
|
|
4087
|
+
pe(() => (o && t.length > 0 && !T && W(), () => {
|
|
4071
4088
|
G.current && window.clearTimeout(G.current), _.current && window.clearTimeout(_.current);
|
|
4072
|
-
}), [r,
|
|
4073
|
-
!
|
|
4074
|
-
}, [r,
|
|
4075
|
-
const
|
|
4076
|
-
z(!0), G.current && window.clearTimeout(G.current), _.current && window.clearTimeout(_.current),
|
|
4089
|
+
}), [r, T, o, t.length, W]), pe(() => {
|
|
4090
|
+
!p && o && t.length > 0 && !T && W();
|
|
4091
|
+
}, [r, p, o, t.length, T, W]);
|
|
4092
|
+
const d = (ne) => {
|
|
4093
|
+
z(!0), G.current && window.clearTimeout(G.current), _.current && window.clearTimeout(_.current), D(!1), Y(!1), $.onFocus?.(ne);
|
|
4077
4094
|
}, U = (ne) => {
|
|
4078
|
-
z(!1), !
|
|
4095
|
+
z(!1), !b && t.length > 0 && (n(""), c(0)), $.onBlur?.(ne);
|
|
4079
4096
|
}, ee = (ne) => {
|
|
4080
4097
|
const ae = ne.target.value;
|
|
4081
|
-
A && ae.length > A || (
|
|
4098
|
+
A && ae.length > A || (S ? S(ae) : O(ae), $.onChange?.(ne));
|
|
4082
4099
|
}, ie = () => {
|
|
4083
|
-
const ne =
|
|
4084
|
-
ne.trim() && !N && (
|
|
4100
|
+
const ne = S ? b : F;
|
|
4101
|
+
ne.trim() && !N && (I?.(ne), S || O(""));
|
|
4085
4102
|
}, me = (ne) => {
|
|
4086
4103
|
(ne.ctrlKey || ne.metaKey) && ne.key === "Enter" && (ne.preventDefault(), ie()), $.onKeyDown?.(ne);
|
|
4087
|
-
}, fe =
|
|
4104
|
+
}, fe = S ? b : F, ke = N || !fe.trim() || (A ? fe.length > A : !1);
|
|
4088
4105
|
return /* @__PURE__ */ ue("div", { style: { position: "relative", ...H }, children: [
|
|
4089
4106
|
/* @__PURE__ */ ue("div", { style: { position: "relative" }, children: [
|
|
4090
|
-
/* @__PURE__ */
|
|
4107
|
+
/* @__PURE__ */ M(
|
|
4091
4108
|
"textarea",
|
|
4092
4109
|
{
|
|
4093
4110
|
ref: v,
|
|
4094
|
-
value:
|
|
4111
|
+
value: S ? b : F,
|
|
4095
4112
|
onChange: ee,
|
|
4096
4113
|
onFocus: (ne) => {
|
|
4097
|
-
ne.target.style.borderColor = "#1890ff", ne.target.style.boxShadow = "0 0 0 2px rgba(24, 144, 255, 0.2)",
|
|
4114
|
+
ne.target.style.borderColor = "#1890ff", ne.target.style.boxShadow = "0 0 0 2px rgba(24, 144, 255, 0.2)", d(ne);
|
|
4098
4115
|
},
|
|
4099
4116
|
onBlur: (ne) => {
|
|
4100
4117
|
ne.target.style.borderColor = "#d9d9d9", ne.target.style.boxShadow = "none", U(ne);
|
|
4101
4118
|
},
|
|
4102
4119
|
onKeyDown: me,
|
|
4103
|
-
placeholder:
|
|
4120
|
+
placeholder: T || fe ? m : "",
|
|
4104
4121
|
maxLength: A,
|
|
4105
4122
|
rows: k,
|
|
4106
4123
|
disabled: N,
|
|
@@ -4124,7 +4141,7 @@ const ur = ({
|
|
|
4124
4141
|
...$
|
|
4125
4142
|
}
|
|
4126
4143
|
),
|
|
4127
|
-
!
|
|
4144
|
+
!T && !fe && e && /* @__PURE__ */ ue(
|
|
4128
4145
|
"div",
|
|
4129
4146
|
{
|
|
4130
4147
|
style: {
|
|
@@ -4146,8 +4163,8 @@ const ur = ({
|
|
|
4146
4163
|
lineHeight: "1.5"
|
|
4147
4164
|
},
|
|
4148
4165
|
children: [
|
|
4149
|
-
/* @__PURE__ */
|
|
4150
|
-
j && /* @__PURE__ */
|
|
4166
|
+
/* @__PURE__ */ M("span", { children: e }),
|
|
4167
|
+
j && /* @__PURE__ */ M(
|
|
4151
4168
|
"span",
|
|
4152
4169
|
{
|
|
4153
4170
|
style: {
|
|
@@ -4163,7 +4180,7 @@ const ur = ({
|
|
|
4163
4180
|
]
|
|
4164
4181
|
}
|
|
4165
4182
|
),
|
|
4166
|
-
/* @__PURE__ */
|
|
4183
|
+
/* @__PURE__ */ M(
|
|
4167
4184
|
"div",
|
|
4168
4185
|
{
|
|
4169
4186
|
style: {
|
|
@@ -4172,12 +4189,12 @@ const ur = ({
|
|
|
4172
4189
|
right: 8,
|
|
4173
4190
|
zIndex: 3
|
|
4174
4191
|
},
|
|
4175
|
-
children: /* @__PURE__ */
|
|
4176
|
-
|
|
4192
|
+
children: /* @__PURE__ */ M(
|
|
4193
|
+
Ae,
|
|
4177
4194
|
{
|
|
4178
4195
|
type: "primary",
|
|
4179
4196
|
size: "small",
|
|
4180
|
-
icon: /* @__PURE__ */
|
|
4197
|
+
icon: /* @__PURE__ */ M(kn, {}),
|
|
4181
4198
|
onClick: ie,
|
|
4182
4199
|
disabled: ke,
|
|
4183
4200
|
style: {
|
|
@@ -4210,7 +4227,7 @@ const ur = ({
|
|
|
4210
4227
|
]
|
|
4211
4228
|
}
|
|
4212
4229
|
),
|
|
4213
|
-
/* @__PURE__ */
|
|
4230
|
+
/* @__PURE__ */ M("style", { children: `
|
|
4214
4231
|
@keyframes blink {
|
|
4215
4232
|
0%, 50% { opacity: 1; }
|
|
4216
4233
|
51%, 100% { opacity: 0; }
|
|
@@ -4218,7 +4235,7 @@ const ur = ({
|
|
|
4218
4235
|
` })
|
|
4219
4236
|
] });
|
|
4220
4237
|
};
|
|
4221
|
-
|
|
4238
|
+
pr.__docgenInfo = {
|
|
4222
4239
|
displayName: "DynamicTextArea",
|
|
4223
4240
|
description: "动态文案文本域组件,支持流式文字动画效果",
|
|
4224
4241
|
props: {
|
|
@@ -4304,16 +4321,16 @@ ur.__docgenInfo = {
|
|
|
4304
4321
|
}
|
|
4305
4322
|
}
|
|
4306
4323
|
};
|
|
4307
|
-
const
|
|
4324
|
+
const Ht = ({
|
|
4308
4325
|
src: t,
|
|
4309
4326
|
poster: m,
|
|
4310
4327
|
width: s = 300,
|
|
4311
4328
|
height: o,
|
|
4312
|
-
videoWidth:
|
|
4329
|
+
videoWidth: b,
|
|
4313
4330
|
// 参数保留但不使用,由CSS控制
|
|
4314
|
-
videoHeight:
|
|
4331
|
+
videoHeight: S,
|
|
4315
4332
|
// 参数保留但不使用,由CSS控制
|
|
4316
|
-
showPlayButton:
|
|
4333
|
+
showPlayButton: I = !0,
|
|
4317
4334
|
autoPlayOnHover: A = !0,
|
|
4318
4335
|
onClick: E,
|
|
4319
4336
|
onVideoLoaded: C,
|
|
@@ -4324,29 +4341,29 @@ const Dt = ({
|
|
|
4324
4341
|
style: e,
|
|
4325
4342
|
...n
|
|
4326
4343
|
}) => {
|
|
4327
|
-
const r = se(null), [
|
|
4328
|
-
r.current && (r.current.play(),
|
|
4344
|
+
const r = se(null), [c, p] = le(!1), [D, T] = le(!1), [z, j] = le(!1), Y = ce(() => {
|
|
4345
|
+
r.current && (r.current.play(), p(!0), N?.());
|
|
4329
4346
|
}, [N]), F = ce(() => {
|
|
4330
|
-
r.current && (r.current.pause(),
|
|
4347
|
+
r.current && (r.current.pause(), p(!1), k?.());
|
|
4331
4348
|
}, [k]), O = ce((B) => {
|
|
4332
|
-
B.stopPropagation(),
|
|
4333
|
-
}, [
|
|
4334
|
-
|
|
4335
|
-
}, [A,
|
|
4336
|
-
|
|
4337
|
-
}, [A,
|
|
4349
|
+
B.stopPropagation(), c ? F() : Y();
|
|
4350
|
+
}, [c, Y, F]), G = ce(() => {
|
|
4351
|
+
T(!0), A && !c && Y();
|
|
4352
|
+
}, [A, c, Y]), _ = ce(() => {
|
|
4353
|
+
T(!1), A && c && F();
|
|
4354
|
+
}, [A, c, F]), R = ce(() => {
|
|
4338
4355
|
j(!0), C?.();
|
|
4339
4356
|
}, [C]), J = ce(() => {
|
|
4340
|
-
|
|
4341
|
-
}, [N]),
|
|
4342
|
-
|
|
4343
|
-
}, [k]),
|
|
4344
|
-
|
|
4357
|
+
p(!0), N?.();
|
|
4358
|
+
}, [N]), u = ce(() => {
|
|
4359
|
+
p(!1), k?.();
|
|
4360
|
+
}, [k]), f = ce(() => {
|
|
4361
|
+
p(!1), H?.();
|
|
4345
4362
|
}, [H]), v = ce((B) => {
|
|
4346
4363
|
E?.(B);
|
|
4347
4364
|
}, [E]);
|
|
4348
|
-
return /* @__PURE__ */
|
|
4349
|
-
|
|
4365
|
+
return /* @__PURE__ */ M(
|
|
4366
|
+
pt,
|
|
4350
4367
|
{
|
|
4351
4368
|
...n,
|
|
4352
4369
|
className: `video-card ${$ || ""}`,
|
|
@@ -4365,7 +4382,7 @@ const Dt = ({
|
|
|
4365
4382
|
onMouseLeave: _,
|
|
4366
4383
|
onClick: v,
|
|
4367
4384
|
children: /* @__PURE__ */ ue("div", { className: "video-card-container", children: [
|
|
4368
|
-
/* @__PURE__ */
|
|
4385
|
+
/* @__PURE__ */ M(
|
|
4369
4386
|
"video",
|
|
4370
4387
|
{
|
|
4371
4388
|
ref: r,
|
|
@@ -4374,26 +4391,26 @@ const Dt = ({
|
|
|
4374
4391
|
preload: "metadata",
|
|
4375
4392
|
onLoadedData: R,
|
|
4376
4393
|
onPlay: J,
|
|
4377
|
-
onPause:
|
|
4378
|
-
onEnded:
|
|
4394
|
+
onPause: u,
|
|
4395
|
+
onEnded: f,
|
|
4379
4396
|
muted: !0,
|
|
4380
4397
|
loop: !0
|
|
4381
4398
|
}
|
|
4382
4399
|
),
|
|
4383
|
-
|
|
4400
|
+
I && /* @__PURE__ */ M(
|
|
4384
4401
|
"div",
|
|
4385
4402
|
{
|
|
4386
|
-
className: `video-play-button ${
|
|
4403
|
+
className: `video-play-button ${D ? "hovered" : ""}`,
|
|
4387
4404
|
onClick: O,
|
|
4388
|
-
children:
|
|
4405
|
+
children: c ? /* @__PURE__ */ M($n, { className: "play-icon" }) : /* @__PURE__ */ M(En, { className: "play-icon" })
|
|
4389
4406
|
}
|
|
4390
4407
|
),
|
|
4391
|
-
!z && /* @__PURE__ */
|
|
4408
|
+
!z && /* @__PURE__ */ M("div", { className: "video-loading-mask", children: /* @__PURE__ */ M("div", { className: "loading-spinner" }) })
|
|
4392
4409
|
] })
|
|
4393
4410
|
}
|
|
4394
4411
|
);
|
|
4395
4412
|
};
|
|
4396
|
-
|
|
4413
|
+
Ht.__docgenInfo = {
|
|
4397
4414
|
displayName: "VideoCard",
|
|
4398
4415
|
description: "视频卡片组件,支持鼠标悬浮播放控制",
|
|
4399
4416
|
props: {
|
|
@@ -4494,12 +4511,12 @@ Dt.__docgenInfo = {
|
|
|
4494
4511
|
}
|
|
4495
4512
|
}
|
|
4496
4513
|
};
|
|
4497
|
-
const
|
|
4514
|
+
const fr = (t) => [".mp4", ".webm", ".ogg", ".mov", ".avi", ".wmv", ".flv", ".mkv"].some((s) => t.toLowerCase().includes(s)), mr = (t) => t.type ? t.type : fr(t.url) ? "video" : "image", yr = ({
|
|
4498
4515
|
items: t,
|
|
4499
4516
|
columns: m,
|
|
4500
4517
|
gap: s = 0,
|
|
4501
4518
|
responsive: o = !0,
|
|
4502
|
-
breakpoints:
|
|
4519
|
+
breakpoints: b = {
|
|
4503
4520
|
xs: 1,
|
|
4504
4521
|
sm: 2,
|
|
4505
4522
|
md: 3,
|
|
@@ -4507,31 +4524,31 @@ const dr = (t) => [".mp4", ".webm", ".ogg", ".mov", ".avi", ".wmv", ".flv", ".mk
|
|
|
4507
4524
|
xl: 5,
|
|
4508
4525
|
xxl: 6
|
|
4509
4526
|
},
|
|
4510
|
-
className:
|
|
4511
|
-
style:
|
|
4527
|
+
className: S,
|
|
4528
|
+
style: I,
|
|
4512
4529
|
onClick: A
|
|
4513
4530
|
}) => {
|
|
4514
|
-
const E = se(null), [C, N] = le(m ||
|
|
4531
|
+
const E = se(null), [C, N] = le(m || b.md || 3), k = se(/* @__PURE__ */ new Map()), H = ce(() => {
|
|
4515
4532
|
if (!o || m)
|
|
4516
|
-
return m ||
|
|
4533
|
+
return m || b.md || 3;
|
|
4517
4534
|
const r = window.innerWidth;
|
|
4518
|
-
return r < 576 ?
|
|
4519
|
-
}, [o, m,
|
|
4535
|
+
return r < 576 ? b.xs || 1 : r < 768 ? b.sm || 2 : r < 992 ? b.md || 3 : r < 1200 ? b.lg || 4 : r < 1600 ? b.xl || 5 : b.xxl || 6;
|
|
4536
|
+
}, [o, m, b]), $ = ce(() => {
|
|
4520
4537
|
if (!E.current) return;
|
|
4521
|
-
const r = C,
|
|
4538
|
+
const r = C, c = E.current, D = (c.offsetWidth - s * (r - 1)) / r, T = new Array(r).fill(0);
|
|
4522
4539
|
t.forEach((j, Y) => {
|
|
4523
4540
|
const F = j.id || Y, O = k.current.get(F);
|
|
4524
4541
|
if (!O) return;
|
|
4525
|
-
const G = Math.min(...
|
|
4526
|
-
O.style.position = "absolute", O.style.left = `${R}px`, O.style.top = `${J}px`, O.style.width = `${
|
|
4542
|
+
const G = Math.min(...T), _ = T.indexOf(G), R = _ * (D + s), J = T[_];
|
|
4543
|
+
O.style.position = "absolute", O.style.left = `${R}px`, O.style.top = `${J}px`, O.style.width = `${D}px`, T[_] += O.offsetHeight + s;
|
|
4527
4544
|
});
|
|
4528
|
-
const z = Math.max(...
|
|
4529
|
-
|
|
4545
|
+
const z = Math.max(...T);
|
|
4546
|
+
c.style.height = `${z}px`;
|
|
4530
4547
|
}, [t, C, s]);
|
|
4531
4548
|
pe(() => {
|
|
4532
4549
|
const r = () => {
|
|
4533
|
-
const
|
|
4534
|
-
|
|
4550
|
+
const c = H();
|
|
4551
|
+
c !== C && N(c);
|
|
4535
4552
|
};
|
|
4536
4553
|
if (o)
|
|
4537
4554
|
return window.addEventListener("resize", r), r(), () => window.removeEventListener("resize", r);
|
|
@@ -4546,32 +4563,32 @@ const dr = (t) => [".mp4", ".webm", ".ogg", ".mov", ".avi", ".wmv", ".flv", ".mk
|
|
|
4546
4563
|
}, [$]), n = ce((r) => {
|
|
4547
4564
|
A && A(r), r.onClick?.(r);
|
|
4548
4565
|
}, [A]);
|
|
4549
|
-
return /* @__PURE__ */
|
|
4566
|
+
return /* @__PURE__ */ M(
|
|
4550
4567
|
"div",
|
|
4551
4568
|
{
|
|
4552
4569
|
ref: E,
|
|
4553
|
-
className: `waterfall-container ${
|
|
4570
|
+
className: `waterfall-container ${S || ""}`,
|
|
4554
4571
|
style: {
|
|
4555
4572
|
position: "relative",
|
|
4556
4573
|
width: "100%",
|
|
4557
|
-
...
|
|
4574
|
+
...I
|
|
4558
4575
|
},
|
|
4559
|
-
children: t.map((r,
|
|
4560
|
-
const
|
|
4561
|
-
return /* @__PURE__ */
|
|
4576
|
+
children: t.map((r, c) => {
|
|
4577
|
+
const p = r.id || c, D = mr(r);
|
|
4578
|
+
return /* @__PURE__ */ M(
|
|
4562
4579
|
"div",
|
|
4563
4580
|
{
|
|
4564
|
-
ref: (
|
|
4565
|
-
|
|
4581
|
+
ref: (T) => {
|
|
4582
|
+
T ? k.current.set(p, T) : k.current.delete(p);
|
|
4566
4583
|
},
|
|
4567
4584
|
className: "waterfall-item",
|
|
4568
|
-
children:
|
|
4585
|
+
children: D === "video" ? /* @__PURE__ */ M("div", { style: {
|
|
4569
4586
|
width: "100%",
|
|
4570
4587
|
position: "relative",
|
|
4571
4588
|
paddingBottom: "56.25%",
|
|
4572
4589
|
cursor: A || r.onClick ? "pointer" : "default"
|
|
4573
|
-
}, children: /* @__PURE__ */
|
|
4574
|
-
|
|
4590
|
+
}, children: /* @__PURE__ */ M("div", { style: { position: "absolute", top: 0, left: 0, width: "100%", height: "100%" }, children: /* @__PURE__ */ M(
|
|
4591
|
+
Ht,
|
|
4575
4592
|
{
|
|
4576
4593
|
src: r.url,
|
|
4577
4594
|
poster: r.poster,
|
|
@@ -4582,17 +4599,17 @@ const dr = (t) => [".mp4", ".webm", ".ogg", ".mov", ".avi", ".wmv", ".flv", ".mk
|
|
|
4582
4599
|
autoPlayOnHover: !0,
|
|
4583
4600
|
showPlayButton: !1
|
|
4584
4601
|
}
|
|
4585
|
-
) }) }) : /* @__PURE__ */
|
|
4602
|
+
) }) }) : /* @__PURE__ */ M(
|
|
4586
4603
|
"div",
|
|
4587
4604
|
{
|
|
4588
4605
|
className: "waterfall-image-wrapper",
|
|
4589
4606
|
onClick: () => n(r),
|
|
4590
4607
|
style: { cursor: A || r.onClick ? "pointer" : "default" },
|
|
4591
|
-
children: /* @__PURE__ */
|
|
4608
|
+
children: /* @__PURE__ */ M(
|
|
4592
4609
|
"img",
|
|
4593
4610
|
{
|
|
4594
4611
|
src: r.url,
|
|
4595
|
-
alt: `瀑布流图片 ${
|
|
4612
|
+
alt: `瀑布流图片 ${c + 1}`,
|
|
4596
4613
|
className: "waterfall-image",
|
|
4597
4614
|
onLoad: e,
|
|
4598
4615
|
onError: e,
|
|
@@ -4602,13 +4619,13 @@ const dr = (t) => [".mp4", ".webm", ".ogg", ".mov", ".avi", ".wmv", ".flv", ".mk
|
|
|
4602
4619
|
}
|
|
4603
4620
|
)
|
|
4604
4621
|
},
|
|
4605
|
-
|
|
4622
|
+
p
|
|
4606
4623
|
);
|
|
4607
4624
|
})
|
|
4608
4625
|
}
|
|
4609
4626
|
);
|
|
4610
4627
|
};
|
|
4611
|
-
|
|
4628
|
+
yr.__docgenInfo = {
|
|
4612
4629
|
displayName: "Waterfall",
|
|
4613
4630
|
description: "瀑布流布局组件,支持图片和视频混合展示",
|
|
4614
4631
|
props: {
|
|
@@ -4664,8 +4681,8 @@ fr.__docgenInfo = {
|
|
|
4664
4681
|
}
|
|
4665
4682
|
}
|
|
4666
4683
|
};
|
|
4667
|
-
const
|
|
4668
|
-
algorithm:
|
|
4684
|
+
const kr = {
|
|
4685
|
+
algorithm: hn.defaultAlgorithm,
|
|
4669
4686
|
token: {
|
|
4670
4687
|
// 主色
|
|
4671
4688
|
colorPrimary: "#3b82f6",
|
|
@@ -4731,21 +4748,21 @@ const xr = {
|
|
|
4731
4748
|
}
|
|
4732
4749
|
};
|
|
4733
4750
|
export {
|
|
4734
|
-
|
|
4735
|
-
|
|
4736
|
-
|
|
4737
|
-
|
|
4738
|
-
|
|
4739
|
-
|
|
4740
|
-
|
|
4741
|
-
|
|
4742
|
-
|
|
4743
|
-
|
|
4744
|
-
|
|
4745
|
-
|
|
4746
|
-
|
|
4747
|
-
|
|
4748
|
-
|
|
4749
|
-
|
|
4751
|
+
Dn as AdvancedTable,
|
|
4752
|
+
Sn as AppModal,
|
|
4753
|
+
Ln as BackButton,
|
|
4754
|
+
Cn as Button,
|
|
4755
|
+
Tn as Card,
|
|
4756
|
+
dr as DynamicInput,
|
|
4757
|
+
pr as DynamicTextArea,
|
|
4758
|
+
_n as EmptyAndSpin,
|
|
4759
|
+
Mn as LinkButton,
|
|
4760
|
+
Nn as PageTable,
|
|
4761
|
+
sr as RichTextEditor,
|
|
4762
|
+
Ht as VideoCard,
|
|
4763
|
+
ur as VirtualTable,
|
|
4764
|
+
yr as Waterfall,
|
|
4765
|
+
An as XcIcon,
|
|
4766
|
+
kr as lightTheme
|
|
4750
4767
|
};
|
|
4751
4768
|
//# sourceMappingURL=index.es.js.map
|