@hkyhy/marsun-components-core 0.1.117 → 0.1.119
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/components/AgentHub/Chat/Action/ManageActionButtons.js +1 -1
- package/dist/components/AgentHub/Chat/Action/ManageActionButtons.js.map +1 -1
- package/dist/components/AgentHub/Chat/Action/SessionActionButtons.js +1 -1
- package/dist/components/AgentHub/Chat/Action/SessionActionButtons.js.map +1 -1
- package/dist/components/AgentHub/Chat/Detail/ChatWidgetBlock/index.js +93 -72
- package/dist/components/AgentHub/Chat/Detail/ChatWidgetBlock/index.js.map +1 -1
- package/dist/components/AgentHub/Chat/List/ChatCard/index.js +121 -60
- package/dist/components/AgentHub/Chat/List/ChatCard/index.js.map +1 -1
- package/dist/components/AgentHub/KnowledgeBase/Action/ManageActionButtons.js +1 -1
- package/dist/components/AgentHub/KnowledgeBase/Action/ManageActionButtons.js.map +1 -1
- package/dist/components/AgentHub/KnowledgeBase/Detail/DocumentTable/index.js +9 -2
- package/dist/components/AgentHub/KnowledgeBase/Detail/DocumentTable/index.js.map +1 -1
- package/dist/components/AgentHub/KnowledgeBase/List/KnowledgeCard/index.js +84 -11
- package/dist/components/AgentHub/KnowledgeBase/List/KnowledgeCard/index.js.map +1 -1
- package/dist/components/Audit/AuditLogList.d.ts +4 -0
- package/dist/components/Audit/AuditLogList.js +168 -166
- package/dist/components/Audit/AuditLogList.js.map +1 -1
- package/dist/components/Audit/AuditStepPerfChart.d.ts +10 -0
- package/dist/components/Audit/AuditStepPerfChart.js +51 -0
- package/dist/components/Audit/AuditStepPerfChart.js.map +1 -0
- package/dist/components/Audit/AuditWaterfall.d.ts +5 -1
- package/dist/components/Audit/AuditWaterfall.js +50 -34
- package/dist/components/Audit/AuditWaterfall.js.map +1 -1
- package/dist/components/Audit/Chart/createLazyPlot.d.ts +4 -0
- package/dist/components/Audit/Chart/createLazyPlot.js +12 -11
- package/dist/components/Audit/Chart/createLazyPlot.js.map +1 -1
- package/dist/components/Audit/detailKpi.d.ts +8 -3
- package/dist/components/Audit/detailKpi.js +28 -20
- package/dist/components/Audit/detailKpi.js.map +1 -1
- package/dist/components/Audit/index.d.ts +4 -2
- package/dist/components/Audit/style.module.scss.js +48 -28
- package/dist/components/Audit/style.module.scss.js.map +1 -1
- package/dist/components/ButtonGroup/index.d.ts +22 -0
- package/dist/components/ButtonGroup/index.js +32 -0
- package/dist/components/ButtonGroup/index.js.map +1 -0
- package/dist/components/ButtonGroup/normalizeActionList.d.ts +35 -0
- package/dist/components/ButtonGroup/normalizeActionList.js +20 -0
- package/dist/components/ButtonGroup/normalizeActionList.js.map +1 -0
- package/dist/components/ButtonGroup/style.module.scss.js +7 -0
- package/dist/components/ButtonGroup/style.module.scss.js.map +1 -0
- package/dist/components/Disposition/DispositionBar/style.module.scss.js +6 -6
- package/dist/components/FormInfo/List.js +79 -69
- package/dist/components/FormInfo/List.js.map +1 -1
- package/dist/components/FormInfo/MultiField.js +55 -33
- package/dist/components/FormInfo/MultiField.js.map +1 -1
- package/dist/components/FormInfo/TableList.js +119 -97
- package/dist/components/FormInfo/TableList.js.map +1 -1
- package/dist/components/FormInfo/locale/zh-CN.d.ts +2 -0
- package/dist/components/FormInfo/locale/zh-CN.js +2 -0
- package/dist/components/FormInfo/locale/zh-CN.js.map +1 -1
- package/dist/components/InteractiveBlock/InteractiveBlock.js +1 -1
- package/dist/components/InteractiveBlock/InteractiveBlock.js.map +1 -1
- package/dist/components/Modal/Modal/index.js +1 -1
- package/dist/components/Modal/Modal/index.js.map +1 -1
- package/dist/components/ReactModal/Footer.js +1 -1
- package/dist/components/ReactModal/Footer.js.map +1 -1
- package/dist/components/Tag/TagGroup/index.d.ts +27 -0
- package/dist/components/Tag/TagGroup/index.js +34 -0
- package/dist/components/Tag/TagGroup/index.js.map +1 -0
- package/dist/components/Tag/TagGroup/style.module.scss.js +8 -0
- package/dist/components/Tag/TagGroup/style.module.scss.js.map +1 -0
- package/dist/components/Tag/index.d.ts +2 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +808 -798
- package/dist/index.js.map +1 -1
- package/dist/marsun-components-core.css +1 -1
- package/dist/styles/global.css +1 -1
- package/package.json +1 -1
|
@@ -1,36 +1,56 @@
|
|
|
1
|
-
const t = "
|
|
1
|
+
const t = "_wrap_fkgi3_2", i = "_filter_fkgi3_6", n = "_statsBar_fkgi3_10", _ = "_statsBarCards_fkgi3_18", o = "_detail_fkgi3_23", s = "_actionCode_fkgi3_29", a = "_stepBody_fkgi3_38", g = "_blockLabel_fkgi3_54", e = "_jsonWrap_fkgi3_60", c = "_jsonScroll_fkgi3_65", r = "_jsonBlock_fkgi3_70", k = "_truncateHint_fkgi3_86", l = "_kpiBlock_fkgi3_92", f = "_truncateNote_fkgi3_96", m = "_timing_fkgi3_103", B = "_timingRows_fkgi3_109", d = "_timingRow_fkgi3_109", p = "_timingLabel_fkgi3_123", b = "_timingTrack_fkgi3_132", j = "_timingBar_fkgi3_139", w = "_timingBarThin_fkgi3_147", H = "_timingMs_fkgi3_151", T = "_timingFoot_fkgi3_160", u = "_stepHeader_fkgi3_169", C = "_stepHeaderTitle_fkgi3_178", L = {
|
|
2
2
|
wrap: t,
|
|
3
|
-
filter:
|
|
4
|
-
statsBar:
|
|
3
|
+
filter: i,
|
|
4
|
+
statsBar: n,
|
|
5
5
|
statsBarCards: _,
|
|
6
|
-
detail:
|
|
7
|
-
actionCode:
|
|
8
|
-
stepBody:
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
detail: o,
|
|
7
|
+
actionCode: s,
|
|
8
|
+
stepBody: a,
|
|
9
|
+
blockLabel: g,
|
|
10
|
+
jsonWrap: e,
|
|
11
|
+
jsonScroll: c,
|
|
12
|
+
jsonBlock: r,
|
|
13
|
+
truncateHint: k,
|
|
14
|
+
kpiBlock: l,
|
|
15
|
+
truncateNote: f,
|
|
16
|
+
timing: m,
|
|
17
|
+
timingRows: B,
|
|
18
|
+
timingRow: d,
|
|
19
|
+
timingLabel: p,
|
|
20
|
+
timingTrack: b,
|
|
21
|
+
timingBar: j,
|
|
22
|
+
timingBarThin: w,
|
|
23
|
+
timingMs: H,
|
|
24
|
+
timingFoot: T,
|
|
25
|
+
stepHeader: u,
|
|
26
|
+
stepHeaderTitle: C
|
|
17
27
|
};
|
|
18
28
|
export {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
+
s as actionCode,
|
|
30
|
+
g as blockLabel,
|
|
31
|
+
L as default,
|
|
32
|
+
o as detail,
|
|
33
|
+
i as filter,
|
|
34
|
+
r as jsonBlock,
|
|
35
|
+
c as jsonScroll,
|
|
36
|
+
e as jsonWrap,
|
|
37
|
+
l as kpiBlock,
|
|
38
|
+
n as statsBar,
|
|
29
39
|
_ as statsBarCards,
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
40
|
+
a as stepBody,
|
|
41
|
+
u as stepHeader,
|
|
42
|
+
C as stepHeaderTitle,
|
|
43
|
+
m as timing,
|
|
44
|
+
j as timingBar,
|
|
45
|
+
w as timingBarThin,
|
|
46
|
+
T as timingFoot,
|
|
47
|
+
p as timingLabel,
|
|
48
|
+
H as timingMs,
|
|
49
|
+
d as timingRow,
|
|
50
|
+
B as timingRows,
|
|
51
|
+
b as timingTrack,
|
|
52
|
+
k as truncateHint,
|
|
53
|
+
f as truncateNote,
|
|
34
54
|
t as wrap
|
|
35
55
|
};
|
|
36
56
|
//# sourceMappingURL=style.module.scss.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"style.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { ActionListItem } from './normalizeActionList';
|
|
3
|
+
export type { ActionListItem, ActionListItemInput } from './normalizeActionList';
|
|
4
|
+
export type { NormalizeActionListOptions } from './normalizeActionList';
|
|
5
|
+
export { actionListItem, normalizeActionList } from './normalizeActionList';
|
|
6
|
+
export type ButtonGroupProps = {
|
|
7
|
+
list?: Array<ActionListItem | ((...args: never[]) => unknown)>;
|
|
8
|
+
/** 默认 true:unavailable → hidden,禁止 disabled 占位 */
|
|
9
|
+
hideUnavailable?: boolean;
|
|
10
|
+
moreType?: 'link' | 'default' | string;
|
|
11
|
+
showLength?: number;
|
|
12
|
+
className?: string;
|
|
13
|
+
itemClassName?: string;
|
|
14
|
+
[key: string]: unknown;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* 业务操作组 SSOT:薄封装 `@kne/button-group`。
|
|
18
|
+
* 默认把 `unavailable` 收成 `hidden`(无权限/态到了不可再操作不置灰占位)。
|
|
19
|
+
* 短暂 loading 用 `loading`/`disabled`,勿标 `unavailable`。
|
|
20
|
+
*/
|
|
21
|
+
declare const ButtonGroup: React.FC<ButtonGroupProps>;
|
|
22
|
+
export default ButtonGroup;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { jsx as u } from "react/jsx-runtime";
|
|
2
|
+
import n from "@kne/button-group";
|
|
3
|
+
import e from "classnames";
|
|
4
|
+
import { useMemo as p } from "react";
|
|
5
|
+
import { normalizeActionList as i } from "./normalizeActionList.js";
|
|
6
|
+
import { actionListItem as N } from "./normalizeActionList.js";
|
|
7
|
+
import a from "./style.module.scss.js";
|
|
8
|
+
const B = ({
|
|
9
|
+
list: o,
|
|
10
|
+
hideUnavailable: t = !0,
|
|
11
|
+
className: r,
|
|
12
|
+
...m
|
|
13
|
+
}) => {
|
|
14
|
+
const s = p(
|
|
15
|
+
() => i(o, { hideUnavailable: t }),
|
|
16
|
+
[o, t]
|
|
17
|
+
);
|
|
18
|
+
return /* @__PURE__ */ u(
|
|
19
|
+
n,
|
|
20
|
+
{
|
|
21
|
+
...m,
|
|
22
|
+
list: s,
|
|
23
|
+
className: e("marsun-button-group", a["marsun-button-group"], r)
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
};
|
|
27
|
+
export {
|
|
28
|
+
N as actionListItem,
|
|
29
|
+
B as default,
|
|
30
|
+
i as normalizeActionList
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/ButtonGroup/index.tsx"],"sourcesContent":["import KneButtonGroup from '@kne/button-group';\nimport classNames from 'classnames';\nimport React, { useMemo } from 'react';\nimport { normalizeActionList, type ActionListItem } from './normalizeActionList';\nimport styles from './style.module.scss';\n\nexport type { ActionListItem, ActionListItemInput } from './normalizeActionList';\nexport type { NormalizeActionListOptions } from './normalizeActionList';\nexport { actionListItem, normalizeActionList } from './normalizeActionList';\n\nexport type ButtonGroupProps = {\n list?: Array<ActionListItem | ((...args: never[]) => unknown)>;\n /** 默认 true:unavailable → hidden,禁止 disabled 占位 */\n hideUnavailable?: boolean;\n moreType?: 'link' | 'default' | string;\n showLength?: number;\n className?: string;\n itemClassName?: string;\n [key: string]: unknown;\n};\n\n/**\n * 业务操作组 SSOT:薄封装 `@kne/button-group`。\n * 默认把 `unavailable` 收成 `hidden`(无权限/态到了不可再操作不置灰占位)。\n * 短暂 loading 用 `loading`/`disabled`,勿标 `unavailable`。\n */\nconst ButtonGroup: React.FC<ButtonGroupProps> = ({\n list,\n hideUnavailable = true,\n className,\n ...rest\n}) => {\n const normalized = useMemo(\n () => normalizeActionList(list, { hideUnavailable }),\n [list, hideUnavailable],\n );\n\n return (\n <KneButtonGroup\n {...rest}\n list={normalized}\n className={classNames('marsun-button-group', styles['marsun-button-group'], className)}\n />\n );\n};\n\nexport default ButtonGroup;\n"],"names":["ButtonGroup","list","hideUnavailable","className","rest","normalized","useMemo","normalizeActionList","jsx","KneButtonGroup","classNames","styles"],"mappings":";;;;;;;AA0BA,MAAMA,IAA0C,CAAC;AAAA,EAC/C,MAAAC;AAAA,EACA,iBAAAC,IAAkB;AAAA,EAClB,WAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAMC,IAAaC;AAAA,IACjB,MAAMC,EAAoBN,GAAM,EAAE,iBAAAC,GAAiB;AAAA,IACnD,CAACD,GAAMC,CAAe;AAAA,EAAA;AAGxB,SACE,gBAAAM;AAAA,IAACC;AAAA,IAAA;AAAA,MACE,GAAGL;AAAA,MACJ,MAAMC;AAAA,MACN,WAAWK,EAAW,uBAAuBC,EAAO,qBAAqB,GAAGR,CAAS;AAAA,IAAA;AAAA,EAAA;AAG3F;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 操作组 list 项:无权限或不可再操作 → hidden,禁止用 disabled 占位「已认领」类文案。
|
|
3
|
+
* `unavailable` 为业务态门禁(态到了不可再点);`hidden` 为权限等显隐。
|
|
4
|
+
* 短暂 loading 仍用 `disabled` / `loading`,勿标 `unavailable`。
|
|
5
|
+
*/
|
|
6
|
+
export type ActionListItem = Record<string, unknown> & {
|
|
7
|
+
children?: React.ReactNode;
|
|
8
|
+
hidden?: boolean;
|
|
9
|
+
/** 业务态不可再操作 → 与 hidden 一并视为不渲染 */
|
|
10
|
+
unavailable?: boolean;
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
loading?: boolean;
|
|
13
|
+
onClick?: (...args: never[]) => unknown;
|
|
14
|
+
type?: string;
|
|
15
|
+
size?: string;
|
|
16
|
+
};
|
|
17
|
+
export type NormalizeActionListOptions = {
|
|
18
|
+
/**
|
|
19
|
+
* 默认 true:`unavailable` 合并进 `hidden`,且不再向下游传 `unavailable`。
|
|
20
|
+
* 设为 false 时原样透传(仅调试/逃生)。
|
|
21
|
+
*/
|
|
22
|
+
hideUnavailable?: boolean;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* 规范化 ButtonGroup `list`:不可用项隐藏,不置灰占位。
|
|
26
|
+
*/
|
|
27
|
+
export declare function normalizeActionList<T extends ActionListItem | ((...args: never[]) => unknown)>(list: T[] | null | undefined, options?: NormalizeActionListOptions): T[];
|
|
28
|
+
export type ActionListItemInput = Omit<ActionListItem, 'hidden' | 'unavailable'> & {
|
|
29
|
+
/** 有对应 EP / 角色;false → hidden */
|
|
30
|
+
can?: boolean;
|
|
31
|
+
/** 业务态仍可操作;false → unavailable→hidden */
|
|
32
|
+
available?: boolean;
|
|
33
|
+
};
|
|
34
|
+
/** 构造单条操作:无权限或不可再操作 → hidden(不写 disabled 占位) */
|
|
35
|
+
export declare function actionListItem(input: ActionListItemInput): ActionListItem;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
function l(e, r) {
|
|
2
|
+
const a = (r == null ? void 0 : r.hideUnavailable) !== !1;
|
|
3
|
+
return !Array.isArray(e) || e.length === 0 ? [] : e.map((n) => {
|
|
4
|
+
if (typeof n == "function") return n;
|
|
5
|
+
const t = n, { unavailable: i, hidden: u, ...d } = t;
|
|
6
|
+
return a ? { ...d, hidden: !!u || i === !0 } : n;
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
function f(e) {
|
|
10
|
+
const { can: r = !0, available: a = !0, ...n } = e;
|
|
11
|
+
return {
|
|
12
|
+
...n,
|
|
13
|
+
hidden: !r || !a
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export {
|
|
17
|
+
f as actionListItem,
|
|
18
|
+
l as normalizeActionList
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=normalizeActionList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalizeActionList.js","sources":["../../../src/components/ButtonGroup/normalizeActionList.ts"],"sourcesContent":["/**\n * 操作组 list 项:无权限或不可再操作 → hidden,禁止用 disabled 占位「已认领」类文案。\n * `unavailable` 为业务态门禁(态到了不可再点);`hidden` 为权限等显隐。\n * 短暂 loading 仍用 `disabled` / `loading`,勿标 `unavailable`。\n */\nexport type ActionListItem = Record<string, unknown> & {\n children?: React.ReactNode;\n hidden?: boolean;\n /** 业务态不可再操作 → 与 hidden 一并视为不渲染 */\n unavailable?: boolean;\n disabled?: boolean;\n loading?: boolean;\n onClick?: (...args: never[]) => unknown;\n type?: string;\n size?: string;\n};\n\nexport type NormalizeActionListOptions = {\n /**\n * 默认 true:`unavailable` 合并进 `hidden`,且不再向下游传 `unavailable`。\n * 设为 false 时原样透传(仅调试/逃生)。\n */\n hideUnavailable?: boolean;\n};\n\n/**\n * 规范化 ButtonGroup `list`:不可用项隐藏,不置灰占位。\n */\nexport function normalizeActionList<T extends ActionListItem | ((...args: never[]) => unknown)>(\n list: T[] | null | undefined,\n options?: NormalizeActionListOptions,\n): T[] {\n const hideUnavailable = options?.hideUnavailable !== false;\n if (!Array.isArray(list) || list.length === 0) return [];\n\n return list.map((item) => {\n if (typeof item === 'function') return item;\n const row = item as ActionListItem;\n const { unavailable, hidden, ...rest } = row;\n if (!hideUnavailable) {\n return item;\n }\n const nextHidden = Boolean(hidden) || unavailable === true;\n return { ...rest, hidden: nextHidden } as T;\n });\n}\n\nexport type ActionListItemInput = Omit<ActionListItem, 'hidden' | 'unavailable'> & {\n /** 有对应 EP / 角色;false → hidden */\n can?: boolean;\n /** 业务态仍可操作;false → unavailable→hidden */\n available?: boolean;\n};\n\n/** 构造单条操作:无权限或不可再操作 → hidden(不写 disabled 占位) */\nexport function actionListItem(input: ActionListItemInput): ActionListItem {\n const { can = true, available = true, ...rest } = input;\n return {\n ...rest,\n hidden: !can || !available,\n };\n}\n"],"names":["normalizeActionList","list","options","hideUnavailable","item","row","unavailable","hidden","rest","actionListItem","input","can","available"],"mappings":"AA4BO,SAASA,EACdC,GACAC,GACK;AACL,QAAMC,KAAkBD,KAAA,gBAAAA,EAAS,qBAAoB;AACrD,SAAI,CAAC,MAAM,QAAQD,CAAI,KAAKA,EAAK,WAAW,IAAU,CAAA,IAE/CA,EAAK,IAAI,CAACG,MAAS;AACxB,QAAI,OAAOA,KAAS,WAAY,QAAOA;AACvC,UAAMC,IAAMD,GACN,EAAE,aAAAE,GAAa,QAAAC,GAAQ,GAAGC,MAASH;AACzC,WAAKF,IAIE,EAAE,GAAGK,GAAM,QADC,EAAQD,KAAWD,MAAgB,GAC5B,IAHjBF;AAAA,EAIX,CAAC;AACH;AAUO,SAASK,EAAeC,GAA4C;AACzE,QAAM,EAAE,KAAAC,IAAM,IAAM,WAAAC,IAAY,IAAM,GAAGJ,MAASE;AAClD,SAAO;AAAA,IACL,GAAGF;AAAA,IACH,QAAQ,CAACG,KAAO,CAACC;AAAA,EAAA;AAErB;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"style.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
const s = {
|
|
2
|
-
"marsun-disposition-bar": "_marsun-disposition-
|
|
3
|
-
"marsun-disposition-status": "_marsun-disposition-
|
|
4
|
-
"marsun-disposition-label": "_marsun-disposition-
|
|
5
|
-
"marsun-disposition-lead": "_marsun-disposition-
|
|
6
|
-
"marsun-disposition-badge": "_marsun-disposition-
|
|
7
|
-
"marsun-disposition-actions": "_marsun-disposition-
|
|
2
|
+
"marsun-disposition-bar": "_marsun-disposition-bar_1lz2k_2",
|
|
3
|
+
"marsun-disposition-status": "_marsun-disposition-status_1lz2k_17",
|
|
4
|
+
"marsun-disposition-label": "_marsun-disposition-label_1lz2k_27",
|
|
5
|
+
"marsun-disposition-lead": "_marsun-disposition-lead_1lz2k_34",
|
|
6
|
+
"marsun-disposition-badge": "_marsun-disposition-badge_1lz2k_46",
|
|
7
|
+
"marsun-disposition-actions": "_marsun-disposition-actions_1lz2k_60"
|
|
8
8
|
};
|
|
9
9
|
export {
|
|
10
10
|
s as default
|
|
@@ -1,43 +1,43 @@
|
|
|
1
1
|
import { jsx as t, jsxs as f } from "react/jsx-runtime";
|
|
2
2
|
import { SubList as A } from "@kne/react-form-plus";
|
|
3
|
-
import { Tag as G, Button as D,
|
|
3
|
+
import { Tag as G, Button as D, Popconfirm as J, Divider as Q } from "antd";
|
|
4
4
|
import c from "classnames";
|
|
5
|
-
import { useState as
|
|
6
|
-
import
|
|
7
|
-
import { markNestBlock as
|
|
8
|
-
import
|
|
5
|
+
import { useState as U } from "react";
|
|
6
|
+
import V from "./FormInfo.js";
|
|
7
|
+
import { markNestBlock as X, decorateNestBlocks as Z, isNestBlockType as $, NEST_DEPTH_BEYOND as u } from "./nestBlock.js";
|
|
8
|
+
import ee, { useFormInfoLocale as te } from "./withLocale.js";
|
|
9
9
|
import e from "./style.module.scss.js";
|
|
10
|
-
import
|
|
11
|
-
import { Trash2 as
|
|
12
|
-
import { Plus as
|
|
13
|
-
import
|
|
14
|
-
const
|
|
15
|
-
const { formatMessage:
|
|
16
|
-
className:
|
|
17
|
-
itemClassName:
|
|
18
|
-
removeIcon:
|
|
19
|
-
removeText:
|
|
20
|
-
addText:
|
|
10
|
+
import se from "../Empty/Empty.js";
|
|
11
|
+
import { Trash2 as oe } from "../Icons/Trash2.js";
|
|
12
|
+
import { Plus as re } from "../Icons/Plus.js";
|
|
13
|
+
import ne from "../InfoPage/InfoPage/index.js";
|
|
14
|
+
const ae = ee((I) => {
|
|
15
|
+
const { formatMessage: r } = te(), {
|
|
16
|
+
className: P,
|
|
17
|
+
itemClassName: E,
|
|
18
|
+
removeIcon: L,
|
|
19
|
+
removeText: C,
|
|
20
|
+
addText: w,
|
|
21
21
|
addIcon: S,
|
|
22
|
-
important:
|
|
22
|
+
important: j,
|
|
23
23
|
title: y,
|
|
24
|
-
bordered:
|
|
24
|
+
bordered: O,
|
|
25
25
|
nestDepth: b,
|
|
26
|
-
nestParentTitles:
|
|
27
|
-
styles:
|
|
28
|
-
style:
|
|
29
|
-
...
|
|
26
|
+
nestParentTitles: ie,
|
|
27
|
+
styles: R,
|
|
28
|
+
style: _,
|
|
29
|
+
...M
|
|
30
30
|
} = Object.assign(
|
|
31
31
|
{
|
|
32
|
-
addText:
|
|
33
|
-
addIcon: /* @__PURE__ */ t(
|
|
34
|
-
removeText:
|
|
35
|
-
removeIcon: /* @__PURE__ */ t(
|
|
36
|
-
empty: /* @__PURE__ */ t(
|
|
32
|
+
addText: r({ id: "addText" }),
|
|
33
|
+
addIcon: /* @__PURE__ */ t(re, { size: 14 }),
|
|
34
|
+
removeText: r({ id: "deleteText" }),
|
|
35
|
+
removeIcon: /* @__PURE__ */ t(oe, { size: 14 }),
|
|
36
|
+
empty: /* @__PURE__ */ t(se, { iconType: "simple", description: !1 })
|
|
37
37
|
},
|
|
38
38
|
I
|
|
39
|
-
),
|
|
40
|
-
o.preventDefault(), o.stopPropagation(), F((
|
|
39
|
+
), n = typeof b == "number" ? b : 0, h = !!O, x = n === 0, z = x && h, s = n >= u, N = n === u, v = n + 1, [d, F] = U(!0), m = x && h, g = (o) => {
|
|
40
|
+
o.preventDefault(), o.stopPropagation(), F((a) => !a);
|
|
41
41
|
}, H = s ? /* @__PURE__ */ f("span", { className: e["marsun-form-info-nest-beyond-title"], children: [
|
|
42
42
|
/* @__PURE__ */ f(
|
|
43
43
|
"span",
|
|
@@ -45,9 +45,9 @@ const ne = $((I) => {
|
|
|
45
45
|
className: e["marsun-form-info-nest-level-toggle"],
|
|
46
46
|
role: "button",
|
|
47
47
|
tabIndex: 0,
|
|
48
|
-
"aria-expanded":
|
|
49
|
-
"aria-label":
|
|
50
|
-
{ id:
|
|
48
|
+
"aria-expanded": d,
|
|
49
|
+
"aria-label": r(
|
|
50
|
+
{ id: d ? "nestCollapse" : "nestExpand" },
|
|
51
51
|
{ level: v }
|
|
52
52
|
),
|
|
53
53
|
onClick: g,
|
|
@@ -55,8 +55,8 @@ const ne = $((I) => {
|
|
|
55
55
|
(o.key === "Enter" || o.key === " ") && g(o);
|
|
56
56
|
},
|
|
57
57
|
children: [
|
|
58
|
-
/* @__PURE__ */ t(G, { className: e["marsun-form-info-nest-parent-tag"], children:
|
|
59
|
-
|
|
58
|
+
/* @__PURE__ */ t(G, { className: e["marsun-form-info-nest-parent-tag"], children: r({ id: "nestLevel" }, { level: v }) }),
|
|
59
|
+
d ? "▾" : "▸"
|
|
60
60
|
]
|
|
61
61
|
}
|
|
62
62
|
),
|
|
@@ -65,12 +65,12 @@ const ne = $((I) => {
|
|
|
65
65
|
return /* @__PURE__ */ t(
|
|
66
66
|
A,
|
|
67
67
|
{
|
|
68
|
-
...
|
|
68
|
+
...M,
|
|
69
69
|
listRender: ({
|
|
70
70
|
id: o,
|
|
71
|
-
allowRemove:
|
|
71
|
+
allowRemove: a,
|
|
72
72
|
onRemove: l,
|
|
73
|
-
index:
|
|
73
|
+
index: de,
|
|
74
74
|
list: K,
|
|
75
75
|
title: p,
|
|
76
76
|
...W
|
|
@@ -81,24 +81,24 @@ const ne = $((I) => {
|
|
|
81
81
|
className: e["marsun-form-info-list-item-title-placeholder"],
|
|
82
82
|
"aria-hidden": "true"
|
|
83
83
|
}
|
|
84
|
-
), k =
|
|
84
|
+
), k = Z(
|
|
85
85
|
K || [],
|
|
86
|
-
|
|
86
|
+
n + 1
|
|
87
87
|
), q = k.some(
|
|
88
|
-
(
|
|
88
|
+
(i) => {
|
|
89
89
|
var B;
|
|
90
|
-
return
|
|
90
|
+
return i && typeof i == "object" && "type" in i && $(i.type) && typeof ((B = i.props) == null ? void 0 : B.nestDepth) == "number" && i.props.nestDepth >= u;
|
|
91
91
|
}
|
|
92
92
|
);
|
|
93
93
|
return /* @__PURE__ */ f(
|
|
94
94
|
"div",
|
|
95
95
|
{
|
|
96
96
|
className: c(e["marsun-form-info-list-item"], {
|
|
97
|
-
[e["marsun-form-info-is-important"]]:
|
|
97
|
+
[e["marsun-form-info-is-important"]]: j
|
|
98
98
|
}),
|
|
99
99
|
children: [
|
|
100
100
|
/* @__PURE__ */ t(
|
|
101
|
-
|
|
101
|
+
V,
|
|
102
102
|
{
|
|
103
103
|
...W,
|
|
104
104
|
list: k,
|
|
@@ -106,15 +106,15 @@ const ne = $((I) => {
|
|
|
106
106
|
bordered: !1,
|
|
107
107
|
className: c(e["marsun-form-info-list-item-part"], {
|
|
108
108
|
[e["marsun-form-info-list-item-part-no-title"]]: !T,
|
|
109
|
-
[e["marsun-form-info-list-item-part-in-bordered"]]: !s &&
|
|
110
|
-
[e["marsun-form-info-list-item-part-plain"]]: !s && !
|
|
109
|
+
[e["marsun-form-info-list-item-part-in-bordered"]]: !s && m,
|
|
110
|
+
[e["marsun-form-info-list-item-part-plain"]]: !s && !m,
|
|
111
111
|
[e["marsun-form-info-list-item-part-beyond"]]: s,
|
|
112
112
|
[e["marsun-form-info-list-item-part-wraps-nest-beyond"]]: q
|
|
113
113
|
}),
|
|
114
114
|
styles: {
|
|
115
115
|
header: {
|
|
116
116
|
borderBottom: "none",
|
|
117
|
-
borderRadius:
|
|
117
|
+
borderRadius: m ? "var(--radius-default, 8px)" : "var(--radius-default, 8px) var(--radius-default, 8px) 0 0"
|
|
118
118
|
}
|
|
119
119
|
},
|
|
120
120
|
style: {
|
|
@@ -124,48 +124,58 @@ const ne = $((I) => {
|
|
|
124
124
|
},
|
|
125
125
|
gap: s ? 0 : 16,
|
|
126
126
|
extra: /* @__PURE__ */ t(
|
|
127
|
-
|
|
127
|
+
J,
|
|
128
128
|
{
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
disabled: !
|
|
134
|
-
|
|
135
|
-
children:
|
|
129
|
+
title: r({ id: "deleteConfirm" }),
|
|
130
|
+
okText: r({ id: "deleteConfirmOk" }),
|
|
131
|
+
cancelText: r({ id: "cancel" }),
|
|
132
|
+
okButtonProps: { danger: !0 },
|
|
133
|
+
disabled: !a,
|
|
134
|
+
onConfirm: l,
|
|
135
|
+
children: /* @__PURE__ */ t(
|
|
136
|
+
D,
|
|
137
|
+
{
|
|
138
|
+
type: "link",
|
|
139
|
+
danger: !0,
|
|
140
|
+
className: "btn-no-padding",
|
|
141
|
+
icon: L,
|
|
142
|
+
disabled: !a,
|
|
143
|
+
children: C
|
|
144
|
+
}
|
|
145
|
+
)
|
|
136
146
|
}
|
|
137
147
|
)
|
|
138
148
|
}
|
|
139
149
|
),
|
|
140
|
-
/* @__PURE__ */ t(
|
|
150
|
+
/* @__PURE__ */ t(Q, {})
|
|
141
151
|
]
|
|
142
152
|
},
|
|
143
153
|
o
|
|
144
154
|
);
|
|
145
155
|
},
|
|
146
|
-
children: (o, { allowAdd:
|
|
147
|
-
|
|
156
|
+
children: (o, { allowAdd: a, onAdd: l }) => /* @__PURE__ */ t(
|
|
157
|
+
ne.Part,
|
|
148
158
|
{
|
|
149
|
-
className: c(
|
|
159
|
+
className: c(P, E, e["marsun-form-info-list-part"], {
|
|
150
160
|
[e["marsun-form-info-nest-beyond"]]: s,
|
|
151
|
-
[e["marsun-form-info-nest-beyond-rail"]]:
|
|
152
|
-
[e["marsun-form-info-nest-beyond-collapsed"]]: s && !
|
|
161
|
+
[e["marsun-form-info-nest-beyond-rail"]]: N,
|
|
162
|
+
[e["marsun-form-info-nest-beyond-collapsed"]]: s && !d
|
|
153
163
|
}),
|
|
154
164
|
title: H,
|
|
155
165
|
bordered: z,
|
|
156
|
-
styles:
|
|
157
|
-
style:
|
|
166
|
+
styles: R,
|
|
167
|
+
style: _,
|
|
158
168
|
"data-nest-beyond": s ? "true" : void 0,
|
|
159
|
-
"data-nest-rail":
|
|
160
|
-
"data-nest-depth": String(
|
|
161
|
-
"data-nest-collapsed": s && !
|
|
162
|
-
extra: /* @__PURE__ */ t("div", { className: e["marsun-form-info-extra-container"], children:
|
|
169
|
+
"data-nest-rail": N ? "true" : void 0,
|
|
170
|
+
"data-nest-depth": String(n),
|
|
171
|
+
"data-nest-collapsed": s && !d ? "true" : void 0,
|
|
172
|
+
extra: /* @__PURE__ */ t("div", { className: e["marsun-form-info-extra-container"], children: a && /* @__PURE__ */ t(
|
|
163
173
|
D,
|
|
164
174
|
{
|
|
165
175
|
className: e["marsun-form-info-extra-btn"],
|
|
166
176
|
icon: S,
|
|
167
177
|
onClick: l,
|
|
168
|
-
children:
|
|
178
|
+
children: w
|
|
169
179
|
}
|
|
170
180
|
) }),
|
|
171
181
|
children: o
|
|
@@ -173,8 +183,8 @@ const ne = $((I) => {
|
|
|
173
183
|
)
|
|
174
184
|
}
|
|
175
185
|
);
|
|
176
|
-
}),
|
|
186
|
+
}), Te = X(ae);
|
|
177
187
|
export {
|
|
178
|
-
|
|
188
|
+
Te as default
|
|
179
189
|
};
|
|
180
190
|
//# sourceMappingURL=List.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"List.js","sources":["../../../src/components/FormInfo/List.tsx"],"sourcesContent":["// @ts-nocheck\nimport { SubList } from '@kne/react-form-plus';\nimport { Button, Divider, Tag } from 'antd';\nimport classnames from 'classnames';\nimport { useState, type ReactNode } from 'react';\nimport { Empty } from '@/components/Empty';\nimport { Plus, Trash2 } from '@/components/Icons';\nimport InfoPage from '@/components/InfoPage';\nimport FormInfo from './FormInfo';\nimport { decorateNestBlocks, isNestBlockType, markNestBlock, NEST_DEPTH_BEYOND } from './nestBlock';\nimport type { ListProps } from './types';\nimport withLocale, { useFormInfoLocale } from './withLocale';\nimport style from './style.module.scss';\n\nconst List = withLocale((p: ListProps) => {\n const { formatMessage } = useFormInfoLocale();\n const {\n className,\n itemClassName,\n removeIcon,\n removeText,\n addText,\n addIcon,\n important,\n title,\n bordered,\n nestDepth: nestDepthProp,\n nestParentTitles: _unusedNestParentTitles,\n styles: partStyles,\n style: partStyle,\n ...others\n } = Object.assign(\n {\n addText: formatMessage({ id: 'addText' }),\n addIcon: <Plus size={14} />,\n removeText: formatMessage({ id: 'deleteText' }),\n removeIcon: <Trash2 size={14} />,\n empty: <Empty iconType=\"simple\" description={false} />,\n },\n p,\n );\n\n const nestDepth = typeof nestDepthProp === 'number' ? nestDepthProp : 0;\n const showBorder = !!bordered;\n const isRootList = nestDepth === 0;\n const showOuterBorder = isRootList && showBorder;\n const isNestBeyond = nestDepth >= NEST_DEPTH_BEYOND;\n const showNestRail = nestDepth === NEST_DEPTH_BEYOND;\n const nestLevel = nestDepth + 1;\n const [nestExpanded, setNestExpanded] = useState(true);\n const isCardModeItem = isRootList && showBorder;\n\n const toggleNestExpanded = (e: React.SyntheticEvent) => {\n e.preventDefault();\n e.stopPropagation();\n setNestExpanded((v) => !v);\n };\n\n const partTitle = isNestBeyond ? (\n <span className={style['marsun-form-info-nest-beyond-title']}>\n <span\n className={style['marsun-form-info-nest-level-toggle']}\n role=\"button\"\n tabIndex={0}\n aria-expanded={nestExpanded}\n aria-label={formatMessage(\n { id: nestExpanded ? 'nestCollapse' : 'nestExpand' },\n { level: nestLevel },\n )}\n onClick={toggleNestExpanded}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n toggleNestExpanded(e);\n }\n }}\n >\n <Tag className={style['marsun-form-info-nest-parent-tag']}>\n {formatMessage({ id: 'nestLevel' }, { level: nestLevel })}\n </Tag>\n {nestExpanded ? '▾' : '▸'}\n </span>\n <span className={style['marsun-form-info-nest-beyond-title-text']}>{title}</span>\n </span>\n ) : (\n title\n );\n\n return (\n <SubList\n {...others}\n listRender={({\n id,\n allowRemove,\n onRemove,\n index,\n list: itemList,\n title: itemTitle,\n ...props\n }: {\n id: string;\n allowRemove: boolean;\n onRemove: () => void;\n index: number;\n list?: ReactNode[];\n title?: ReactNode;\n [key: string]: unknown;\n }) => {\n const hasItemTitle = itemTitle != null && itemTitle !== '';\n const titleNode = hasItemTitle ? (\n itemTitle\n ) : (\n <span\n className={style['marsun-form-info-list-item-title-placeholder']}\n aria-hidden=\"true\"\n />\n );\n const nestedList = decorateNestBlocks(\n (itemList || []) as React.ReactElement[],\n nestDepth + 1,\n );\n const itemWrapsNestBeyond = nestedList.some(\n (el) =>\n el &&\n typeof el === 'object' &&\n 'type' in el &&\n isNestBlockType(el.type) &&\n typeof (el as React.ReactElement).props?.nestDepth === 'number' &&\n (el as React.ReactElement).props.nestDepth >= NEST_DEPTH_BEYOND,\n );\n\n return (\n <div\n key={id}\n className={classnames(style['marsun-form-info-list-item'], {\n [style['marsun-form-info-is-important']]: important,\n })}\n >\n <FormInfo\n {...props}\n list={nestedList}\n title={titleNode}\n bordered={false}\n className={classnames(style['marsun-form-info-list-item-part'], {\n [style['marsun-form-info-list-item-part-no-title']]: !hasItemTitle,\n [style['marsun-form-info-list-item-part-in-bordered']]:\n !isNestBeyond && isCardModeItem,\n [style['marsun-form-info-list-item-part-plain']]: !isNestBeyond && !isCardModeItem,\n [style['marsun-form-info-list-item-part-beyond']]: isNestBeyond,\n [style['marsun-form-info-list-item-part-wraps-nest-beyond']]: itemWrapsNestBeyond,\n })}\n styles={{\n header: {\n borderBottom: 'none',\n borderRadius: isCardModeItem\n ? 'var(--radius-default, 8px)'\n : 'var(--radius-default, 8px) var(--radius-default, 8px) 0 0',\n },\n }}\n style={{\n borderRadius: 'var(--radius-default, 8px)',\n overflow: isNestBeyond ? 'visible' : 'hidden',\n padding: 0,\n }}\n gap={isNestBeyond ? 0 : 16}\n extra={\n <Button\n type=\"link\"\n danger\n className=\"btn-no-padding\"\n icon={removeIcon}\n disabled={!allowRemove}\n onClick={onRemove}\n >\n {removeText}\n </Button>\n }\n />\n <Divider />\n </div>\n );\n }}\n >\n {(children: ReactNode, { allowAdd, onAdd }: { allowAdd: boolean; onAdd: () => void }) => (\n <InfoPage.Part\n className={classnames(className, itemClassName, style['marsun-form-info-list-part'], {\n [style['marsun-form-info-nest-beyond']]: isNestBeyond,\n [style['marsun-form-info-nest-beyond-rail']]: showNestRail,\n [style['marsun-form-info-nest-beyond-collapsed']]: isNestBeyond && !nestExpanded,\n })}\n title={partTitle}\n bordered={showOuterBorder}\n styles={partStyles as never}\n style={partStyle as never}\n data-nest-beyond={isNestBeyond ? 'true' : undefined}\n data-nest-rail={showNestRail ? 'true' : undefined}\n data-nest-depth={String(nestDepth)}\n data-nest-collapsed={isNestBeyond && !nestExpanded ? 'true' : undefined}\n extra={\n <div className={style['marsun-form-info-extra-container']}>\n {allowAdd && (\n <Button\n className={style['marsun-form-info-extra-btn']}\n icon={addIcon}\n onClick={onAdd}\n >\n {addText}\n </Button>\n )}\n </div>\n }\n >\n {children}\n </InfoPage.Part>\n )}\n </SubList>\n );\n});\n\nexport default markNestBlock(List);\n"],"names":["List","withLocale","p","formatMessage","useFormInfoLocale","className","itemClassName","removeIcon","removeText","addText","addIcon","important","title","bordered","nestDepthProp","_unusedNestParentTitles","partStyles","partStyle","others","jsx","Plus","Trash2","Empty","nestDepth","showBorder","isRootList","showOuterBorder","isNestBeyond","NEST_DEPTH_BEYOND","showNestRail","nestLevel","nestExpanded","setNestExpanded","useState","isCardModeItem","toggleNestExpanded","e","v","partTitle","jsxs","style","Tag","SubList","id","allowRemove","onRemove","index","itemList","itemTitle","props","hasItemTitle","titleNode","nestedList","decorateNestBlocks","itemWrapsNestBeyond","el","isNestBlockType","_a","classnames","FormInfo","Button","Divider","children","allowAdd","onAdd","InfoPage","List_default","markNestBlock"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"List.js","sources":["../../../src/components/FormInfo/List.tsx"],"sourcesContent":["// @ts-nocheck\nimport { SubList } from '@kne/react-form-plus';\nimport { Button, Divider, Popconfirm, Tag } from 'antd';\nimport classnames from 'classnames';\nimport { useState, type ReactNode } from 'react';\nimport { Empty } from '@/components/Empty';\nimport { Plus, Trash2 } from '@/components/Icons';\nimport InfoPage from '@/components/InfoPage';\nimport FormInfo from './FormInfo';\nimport { decorateNestBlocks, isNestBlockType, markNestBlock, NEST_DEPTH_BEYOND } from './nestBlock';\nimport type { ListProps } from './types';\nimport withLocale, { useFormInfoLocale } from './withLocale';\nimport style from './style.module.scss';\n\nconst List = withLocale((p: ListProps) => {\n const { formatMessage } = useFormInfoLocale();\n const {\n className,\n itemClassName,\n removeIcon,\n removeText,\n addText,\n addIcon,\n important,\n title,\n bordered,\n nestDepth: nestDepthProp,\n nestParentTitles: _unusedNestParentTitles,\n styles: partStyles,\n style: partStyle,\n ...others\n } = Object.assign(\n {\n addText: formatMessage({ id: 'addText' }),\n addIcon: <Plus size={14} />,\n removeText: formatMessage({ id: 'deleteText' }),\n removeIcon: <Trash2 size={14} />,\n empty: <Empty iconType=\"simple\" description={false} />,\n },\n p,\n );\n\n const nestDepth = typeof nestDepthProp === 'number' ? nestDepthProp : 0;\n const showBorder = !!bordered;\n const isRootList = nestDepth === 0;\n const showOuterBorder = isRootList && showBorder;\n const isNestBeyond = nestDepth >= NEST_DEPTH_BEYOND;\n const showNestRail = nestDepth === NEST_DEPTH_BEYOND;\n const nestLevel = nestDepth + 1;\n const [nestExpanded, setNestExpanded] = useState(true);\n const isCardModeItem = isRootList && showBorder;\n\n const toggleNestExpanded = (e: React.SyntheticEvent) => {\n e.preventDefault();\n e.stopPropagation();\n setNestExpanded((v) => !v);\n };\n\n const partTitle = isNestBeyond ? (\n <span className={style['marsun-form-info-nest-beyond-title']}>\n <span\n className={style['marsun-form-info-nest-level-toggle']}\n role=\"button\"\n tabIndex={0}\n aria-expanded={nestExpanded}\n aria-label={formatMessage(\n { id: nestExpanded ? 'nestCollapse' : 'nestExpand' },\n { level: nestLevel },\n )}\n onClick={toggleNestExpanded}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n toggleNestExpanded(e);\n }\n }}\n >\n <Tag className={style['marsun-form-info-nest-parent-tag']}>\n {formatMessage({ id: 'nestLevel' }, { level: nestLevel })}\n </Tag>\n {nestExpanded ? '▾' : '▸'}\n </span>\n <span className={style['marsun-form-info-nest-beyond-title-text']}>{title}</span>\n </span>\n ) : (\n title\n );\n\n return (\n <SubList\n {...others}\n listRender={({\n id,\n allowRemove,\n onRemove,\n index,\n list: itemList,\n title: itemTitle,\n ...props\n }: {\n id: string;\n allowRemove: boolean;\n onRemove: () => void;\n index: number;\n list?: ReactNode[];\n title?: ReactNode;\n [key: string]: unknown;\n }) => {\n const hasItemTitle = itemTitle != null && itemTitle !== '';\n const titleNode = hasItemTitle ? (\n itemTitle\n ) : (\n <span\n className={style['marsun-form-info-list-item-title-placeholder']}\n aria-hidden=\"true\"\n />\n );\n const nestedList = decorateNestBlocks(\n (itemList || []) as React.ReactElement[],\n nestDepth + 1,\n );\n const itemWrapsNestBeyond = nestedList.some(\n (el) =>\n el &&\n typeof el === 'object' &&\n 'type' in el &&\n isNestBlockType(el.type) &&\n typeof (el as React.ReactElement).props?.nestDepth === 'number' &&\n (el as React.ReactElement).props.nestDepth >= NEST_DEPTH_BEYOND,\n );\n\n return (\n <div\n key={id}\n className={classnames(style['marsun-form-info-list-item'], {\n [style['marsun-form-info-is-important']]: important,\n })}\n >\n <FormInfo\n {...props}\n list={nestedList}\n title={titleNode}\n bordered={false}\n className={classnames(style['marsun-form-info-list-item-part'], {\n [style['marsun-form-info-list-item-part-no-title']]: !hasItemTitle,\n [style['marsun-form-info-list-item-part-in-bordered']]:\n !isNestBeyond && isCardModeItem,\n [style['marsun-form-info-list-item-part-plain']]: !isNestBeyond && !isCardModeItem,\n [style['marsun-form-info-list-item-part-beyond']]: isNestBeyond,\n [style['marsun-form-info-list-item-part-wraps-nest-beyond']]: itemWrapsNestBeyond,\n })}\n styles={{\n header: {\n borderBottom: 'none',\n borderRadius: isCardModeItem\n ? 'var(--radius-default, 8px)'\n : 'var(--radius-default, 8px) var(--radius-default, 8px) 0 0',\n },\n }}\n style={{\n borderRadius: 'var(--radius-default, 8px)',\n overflow: isNestBeyond ? 'visible' : 'hidden',\n padding: 0,\n }}\n gap={isNestBeyond ? 0 : 16}\n extra={\n <Popconfirm\n title={formatMessage({ id: 'deleteConfirm' })}\n okText={formatMessage({ id: 'deleteConfirmOk' })}\n cancelText={formatMessage({ id: 'cancel' })}\n okButtonProps={{ danger: true }}\n disabled={!allowRemove}\n onConfirm={onRemove}\n >\n <Button\n type=\"link\"\n danger\n className=\"btn-no-padding\"\n icon={removeIcon}\n disabled={!allowRemove}\n >\n {removeText}\n </Button>\n </Popconfirm>\n }\n />\n <Divider />\n </div>\n );\n }}\n >\n {(children: ReactNode, { allowAdd, onAdd }: { allowAdd: boolean; onAdd: () => void }) => (\n <InfoPage.Part\n className={classnames(className, itemClassName, style['marsun-form-info-list-part'], {\n [style['marsun-form-info-nest-beyond']]: isNestBeyond,\n [style['marsun-form-info-nest-beyond-rail']]: showNestRail,\n [style['marsun-form-info-nest-beyond-collapsed']]: isNestBeyond && !nestExpanded,\n })}\n title={partTitle}\n bordered={showOuterBorder}\n styles={partStyles as never}\n style={partStyle as never}\n data-nest-beyond={isNestBeyond ? 'true' : undefined}\n data-nest-rail={showNestRail ? 'true' : undefined}\n data-nest-depth={String(nestDepth)}\n data-nest-collapsed={isNestBeyond && !nestExpanded ? 'true' : undefined}\n extra={\n <div className={style['marsun-form-info-extra-container']}>\n {allowAdd && (\n <Button\n className={style['marsun-form-info-extra-btn']}\n icon={addIcon}\n onClick={onAdd}\n >\n {addText}\n </Button>\n )}\n </div>\n }\n >\n {children}\n </InfoPage.Part>\n )}\n </SubList>\n );\n});\n\nexport default markNestBlock(List);\n"],"names":["List","withLocale","p","formatMessage","useFormInfoLocale","className","itemClassName","removeIcon","removeText","addText","addIcon","important","title","bordered","nestDepthProp","_unusedNestParentTitles","partStyles","partStyle","others","jsx","Plus","Trash2","Empty","nestDepth","showBorder","isRootList","showOuterBorder","isNestBeyond","NEST_DEPTH_BEYOND","showNestRail","nestLevel","nestExpanded","setNestExpanded","useState","isCardModeItem","toggleNestExpanded","e","v","partTitle","jsxs","style","Tag","SubList","id","allowRemove","onRemove","index","itemList","itemTitle","props","hasItemTitle","titleNode","nestedList","decorateNestBlocks","itemWrapsNestBeyond","el","isNestBlockType","_a","classnames","FormInfo","Popconfirm","Button","Divider","children","allowAdd","onAdd","InfoPage","List_default","markNestBlock"],"mappings":"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"}
|