@hkyhy/marsun-components-core 0.1.101 → 0.1.113

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/components/Editor/VariablePicker.js +13 -13
  2. package/dist/components/Editor/VariablePicker.js.map +1 -1
  3. package/dist/components/Filter/createKneFilterField.js +42 -39
  4. package/dist/components/Filter/createKneFilterField.js.map +1 -1
  5. package/dist/components/Form/SuperSelect.js +48 -45
  6. package/dist/components/Form/SuperSelect.js.map +1 -1
  7. package/dist/components/FormInfo/RichTextField/index.js +46 -69
  8. package/dist/components/FormInfo/RichTextField/index.js.map +1 -1
  9. package/dist/components/FormInfo/VariableMentionInput/index.d.ts +1 -0
  10. package/dist/components/FormInfo/VariableMentionInput/index.js +53 -47
  11. package/dist/components/FormInfo/VariableMentionInput/index.js.map +1 -1
  12. package/dist/components/FormInfo/VariableMentionInput/style.module.scss.js +6 -5
  13. package/dist/components/FormInfo/VariableMentionInput/style.module.scss.js.map +1 -1
  14. package/dist/components/ReactFilter/fields/index.js +33 -26
  15. package/dist/components/ReactFilter/fields/index.js.map +1 -1
  16. package/dist/components/ReactFilter/renderSelectListItemContent.d.ts +8 -0
  17. package/dist/components/ReactFilter/renderSelectListItemContent.js +12 -0
  18. package/dist/components/ReactFilter/renderSelectListItemContent.js.map +1 -0
  19. package/dist/components/Tools/Inbox/InboxBell/InboxBell.d.ts +3 -0
  20. package/dist/components/Tools/Inbox/InboxBell/InboxBell.js +59 -49
  21. package/dist/components/Tools/Inbox/InboxBell/InboxBell.js.map +1 -1
  22. package/dist/components/Tools/Inbox/InboxBell/style.module.scss.js +20 -18
  23. package/dist/components/Tools/Inbox/InboxBell/style.module.scss.js.map +1 -1
  24. package/dist/components/Tools/Inbox/index.d.ts +1 -0
  25. package/dist/components/Tools/Inbox/sanitizeInboxHtml.d.ts +5 -0
  26. package/dist/components/Tools/Inbox/sanitizeInboxHtml.js +14 -0
  27. package/dist/components/Tools/Inbox/sanitizeInboxHtml.js.map +1 -0
  28. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/MessageTemplateAdmin.d.ts +1 -1
  29. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/MessageTemplateAdmin.js +158 -137
  30. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/MessageTemplateAdmin.js.map +1 -1
  31. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/Modal/TemplateFormModal.js +217 -124
  32. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/Modal/TemplateFormModal.js.map +1 -1
  33. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/PushRulesPanel/index.d.ts +8 -1
  34. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/PushRulesPanel/index.js +312 -170
  35. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/PushRulesPanel/index.js.map +1 -1
  36. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/VariablesPanel/index.js +87 -76
  37. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/VariablesPanel/index.js.map +1 -1
  38. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/audienceSlots.d.ts +14 -0
  39. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/audienceSlots.js +31 -0
  40. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/audienceSlots.js.map +1 -0
  41. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/index.d.ts +3 -1
  42. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/style.module.scss.js +18 -6
  43. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/style.module.scss.js.map +1 -1
  44. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/types.d.ts +27 -0
  45. package/dist/components/Tools/MessageCenter/MessageTemplateAdmin/types.js.map +1 -1
  46. package/dist/components/Tools/MessageCenter/MsgCenterAppSwitcher/MsgCenterAppSwitcher.d.ts +22 -0
  47. package/dist/components/Tools/MessageCenter/MsgCenterAppSwitcher/MsgCenterAppSwitcher.js +64 -0
  48. package/dist/components/Tools/MessageCenter/MsgCenterAppSwitcher/MsgCenterAppSwitcher.js.map +1 -0
  49. package/dist/components/Tools/MessageCenter/MsgCenterAppSwitcher/index.d.ts +2 -0
  50. package/dist/components/Tools/MessageCenter/index.d.ts +8 -1
  51. package/dist/components/Tools/MessageCenter/msgCenterAppSwitch.d.ts +39 -0
  52. package/dist/components/Tools/MessageCenter/msgCenterAppSwitch.js +94 -0
  53. package/dist/components/Tools/MessageCenter/msgCenterAppSwitch.js.map +1 -0
  54. package/dist/components/Tools/MessageCenter/useMsgCenterAppKey.d.ts +2 -0
  55. package/dist/components/Tools/MessageCenter/useMsgCenterAppKey.js +18 -0
  56. package/dist/components/Tools/MessageCenter/useMsgCenterAppKey.js.map +1 -0
  57. package/dist/components/Tools/MessageCenter/utils/audienceUserSelectOptions.d.ts +16 -0
  58. package/dist/components/Tools/MessageCenter/utils/audienceUserSelectOptions.js +33 -0
  59. package/dist/components/Tools/MessageCenter/utils/audienceUserSelectOptions.js.map +1 -0
  60. package/dist/components/Tools/MessageCenter/utils/templateCode.js +11 -17
  61. package/dist/components/Tools/MessageCenter/utils/templateCode.js.map +1 -1
  62. package/dist/components/Tools/index.d.ts +3 -2
  63. package/dist/index.js +641 -626
  64. package/dist/index.js.map +1 -1
  65. package/dist/marsun-components-core.css +1 -1
  66. package/dist/node_modules/dompurify/dist/purify.es.js +908 -0
  67. package/dist/node_modules/dompurify/dist/purify.es.js.map +1 -0
  68. package/dist/node_modules/isomorphic-dompurify/dist/browser.js +17 -0
  69. package/dist/node_modules/isomorphic-dompurify/dist/browser.js.map +1 -0
  70. package/dist/styles/global.css +1 -1
  71. package/package.json +9 -1
@@ -1,4 +1,4 @@
1
- import { jsxs as b, jsx as l } from "react/jsx-runtime";
1
+ import { jsxs as b, jsx as t } from "react/jsx-runtime";
2
2
  import { Dropdown as f, Button as h } from "antd";
3
3
  import { useMemo as g } from "react";
4
4
  import { filterVariableFeed as w } from "./variableMention.js";
@@ -8,12 +8,12 @@ const V = ({
8
8
  disabled: i,
9
9
  catalogError: r,
10
10
  onPick: m,
11
- buttonText: c = "插入变量",
12
- size: d = "small",
11
+ buttonText: d = "插入变量",
12
+ size: c = "middle",
13
13
  className: p,
14
14
  getPopupContainer: k
15
15
  }) => {
16
- const a = g(() => w(o, ""), [o]), t = a.length === 0, s = r ? `目录失败:${r}` : t ? "暂无 catalog 变量" : void 0, u = t ? [
16
+ const a = g(() => w(o, ""), [o]), l = a.length === 0, s = r ? `目录失败:${r}` : l ? "暂无 catalog 变量" : void 0, u = l ? [
17
17
  {
18
18
  key: "__empty",
19
19
  disabled: !0,
@@ -22,28 +22,28 @@ const V = ({
22
22
  ] : a.map((e) => ({
23
23
  key: e.key,
24
24
  label: /* @__PURE__ */ b("span", { className: n["var-mention-option"], children: [
25
- e.label ? /* @__PURE__ */ l("span", { className: n["var-mention-label"], children: e.label }) : null,
26
- /* @__PURE__ */ l("span", { className: n["var-mention-token"], children: e.key })
25
+ e.label ? /* @__PURE__ */ t("span", { className: n["var-mention-label"], children: e.label }) : null,
26
+ /* @__PURE__ */ t("span", { className: n["var-mention-token"], children: e.key })
27
27
  ] }),
28
28
  onClick: () => m(e.key)
29
29
  }));
30
- return /* @__PURE__ */ l(
30
+ return /* @__PURE__ */ t(
31
31
  f,
32
32
  {
33
- disabled: i || t,
33
+ disabled: i || l,
34
34
  trigger: ["click"],
35
35
  getPopupContainer: k,
36
- dropdownRender: (e) => /* @__PURE__ */ l("div", { onMouseDown: (y) => y.preventDefault(), children: e }),
36
+ dropdownRender: (e) => /* @__PURE__ */ t("div", { onMouseDown: (y) => y.preventDefault(), children: e }),
37
37
  menu: { items: u },
38
- children: /* @__PURE__ */ l(
38
+ children: /* @__PURE__ */ t(
39
39
  h,
40
40
  {
41
41
  type: "default",
42
- size: d,
43
- disabled: i || t,
42
+ size: c,
43
+ disabled: i || l,
44
44
  title: s,
45
45
  className: p,
46
- children: c
46
+ children: d
47
47
  }
48
48
  )
49
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"VariablePicker.js","sources":["../../../src/components/Editor/VariablePicker.tsx"],"sourcesContent":["import { Button, Dropdown } from 'antd';\nimport type { MenuProps } from 'antd';\nimport React, { useMemo } from 'react';\nimport { filterVariableFeed, type VariableMentionItem } from './variableMention';\nimport styles from '../FormInfo/VariableMentionInput/style.module.scss';\n\nexport type VariablePickerProps = {\n variables?: VariableMentionItem[];\n disabled?: boolean;\n /** catalog 加载失败短文案;有值时优先于「暂无变量」 */\n catalogError?: string;\n onPick: (key: string) => void;\n /** 按钮文案,默认「插入变量」 */\n buttonText?: string;\n size?: 'small' | 'middle' | 'large';\n className?: string;\n getPopupContainer?: (node: HTMLElement) => HTMLElement;\n};\n\n/**\n * Coze/Dify 风格:点选插入变量(中文 + code)。无 `/` 触发。\n */\nexport const VariablePicker: React.FC<VariablePickerProps> = ({\n variables,\n disabled,\n catalogError,\n onPick,\n buttonText = '插入变量',\n size = 'small',\n className,\n getPopupContainer,\n}) => {\n const list = useMemo(() => filterVariableFeed(variables, ''), [variables]);\n const empty = list.length === 0;\n const tip = catalogError ? `目录失败:${catalogError}` : empty ? '暂无 catalog 变量' : undefined;\n\n const items: MenuProps['items'] = empty\n ? [\n {\n key: '__empty',\n disabled: true,\n label: tip || '暂无变量',\n },\n ]\n : list.map((v) => ({\n key: v.key,\n label: (\n <span className={styles['var-mention-option']}>\n {v.label ? <span className={styles['var-mention-label']}>{v.label}</span> : null}\n <span className={styles['var-mention-token']}>{v.key}</span>\n </span>\n ),\n onClick: () => onPick(v.key),\n }));\n\n return (\n <Dropdown\n disabled={disabled || empty}\n trigger={['click']}\n getPopupContainer={getPopupContainer}\n dropdownRender={(menu) => <div onMouseDown={(e) => e.preventDefault()}>{menu}</div>}\n menu={{ items }}\n >\n <Button\n type=\"default\"\n size={size}\n disabled={disabled || empty}\n title={tip}\n className={className}\n >\n {buttonText}\n </Button>\n </Dropdown>\n );\n};\n\nexport default VariablePicker;\n"],"names":["VariablePicker","variables","disabled","catalogError","onPick","buttonText","size","className","getPopupContainer","list","useMemo","filterVariableFeed","empty","tip","items","v","jsxs","styles","jsx","Dropdown","menu","e","Button"],"mappings":";;;;;AAsBO,MAAMA,IAAgD,CAAC;AAAA,EAC5D,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AAAA,EACA,QAAAC;AAAA,EACA,YAAAC,IAAa;AAAA,EACb,MAAAC,IAAO;AAAA,EACP,WAAAC;AAAA,EACA,mBAAAC;AACF,MAAM;AACJ,QAAMC,IAAOC,EAAQ,MAAMC,EAAmBV,GAAW,EAAE,GAAG,CAACA,CAAS,CAAC,GACnEW,IAAQH,EAAK,WAAW,GACxBI,IAAMV,IAAe,QAAQA,CAAY,KAAKS,IAAQ,kBAAkB,QAExEE,IAA4BF,IAC9B;AAAA,IACE;AAAA,MACE,KAAK;AAAA,MACL,UAAU;AAAA,MACV,OAAOC,KAAO;AAAA,IAAA;AAAA,EAChB,IAEFJ,EAAK,IAAI,CAACM,OAAO;AAAA,IACf,KAAKA,EAAE;AAAA,IACP,OACE,gBAAAC,EAAC,QAAA,EAAK,WAAWC,EAAO,oBAAoB,GACzC,UAAA;AAAA,MAAAF,EAAE,0BAAS,QAAA,EAAK,WAAWE,EAAO,mBAAmB,GAAI,UAAAF,EAAE,MAAA,CAAM,IAAU;AAAA,wBAC3E,QAAA,EAAK,WAAWE,EAAO,mBAAmB,GAAI,YAAE,IAAA,CAAI;AAAA,IAAA,GACvD;AAAA,IAEF,SAAS,MAAMb,EAAOW,EAAE,GAAG;AAAA,EAAA,EAC3B;AAEN,SACE,gBAAAG;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,UAAUjB,KAAYU;AAAA,MACtB,SAAS,CAAC,OAAO;AAAA,MACjB,mBAAAJ;AAAA,MACA,gBAAgB,CAACY,MAAS,gBAAAF,EAAC,OAAA,EAAI,aAAa,CAACG,MAAMA,EAAE,eAAA,GAAmB,UAAAD,EAAA,CAAK;AAAA,MAC7E,MAAM,EAAE,OAAAN,EAAA;AAAA,MAER,UAAA,gBAAAI;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,MAAAhB;AAAA,UACA,UAAUJ,KAAYU;AAAA,UACtB,OAAOC;AAAA,UACP,WAAAN;AAAA,UAEC,UAAAF;AAAA,QAAA;AAAA,MAAA;AAAA,IACH;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"VariablePicker.js","sources":["../../../src/components/Editor/VariablePicker.tsx"],"sourcesContent":["import { Button, Dropdown } from 'antd';\nimport type { MenuProps } from 'antd';\nimport React, { useMemo } from 'react';\nimport { filterVariableFeed, type VariableMentionItem } from './variableMention';\nimport styles from '../FormInfo/VariableMentionInput/style.module.scss';\n\nexport type VariablePickerProps = {\n variables?: VariableMentionItem[];\n disabled?: boolean;\n /** catalog 加载失败短文案;有值时优先于「暂无变量」 */\n catalogError?: string;\n onPick: (key: string) => void;\n /** 按钮文案,默认「插入变量」 */\n buttonText?: string;\n size?: 'small' | 'middle' | 'large';\n className?: string;\n getPopupContainer?: (node: HTMLElement) => HTMLElement;\n};\n\n/**\n * Coze/Dify 风格:点选插入变量(中文 + code)。无 `/` 触发。\n */\nexport const VariablePicker: React.FC<VariablePickerProps> = ({\n variables,\n disabled,\n catalogError,\n onPick,\n buttonText = '插入变量',\n size = 'middle',\n className,\n getPopupContainer,\n}) => {\n const list = useMemo(() => filterVariableFeed(variables, ''), [variables]);\n const empty = list.length === 0;\n const tip = catalogError ? `目录失败:${catalogError}` : empty ? '暂无 catalog 变量' : undefined;\n\n const items: MenuProps['items'] = empty\n ? [\n {\n key: '__empty',\n disabled: true,\n label: tip || '暂无变量',\n },\n ]\n : list.map((v) => ({\n key: v.key,\n label: (\n <span className={styles['var-mention-option']}>\n {v.label ? <span className={styles['var-mention-label']}>{v.label}</span> : null}\n <span className={styles['var-mention-token']}>{v.key}</span>\n </span>\n ),\n onClick: () => onPick(v.key),\n }));\n\n return (\n <Dropdown\n disabled={disabled || empty}\n trigger={['click']}\n getPopupContainer={getPopupContainer}\n dropdownRender={(menu) => <div onMouseDown={(e) => e.preventDefault()}>{menu}</div>}\n menu={{ items }}\n >\n <Button\n type=\"default\"\n size={size}\n disabled={disabled || empty}\n title={tip}\n className={className}\n >\n {buttonText}\n </Button>\n </Dropdown>\n );\n};\n\nexport default VariablePicker;\n"],"names":["VariablePicker","variables","disabled","catalogError","onPick","buttonText","size","className","getPopupContainer","list","useMemo","filterVariableFeed","empty","tip","items","v","jsxs","styles","jsx","Dropdown","menu","e","Button"],"mappings":";;;;;AAsBO,MAAMA,IAAgD,CAAC;AAAA,EAC5D,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AAAA,EACA,QAAAC;AAAA,EACA,YAAAC,IAAa;AAAA,EACb,MAAAC,IAAO;AAAA,EACP,WAAAC;AAAA,EACA,mBAAAC;AACF,MAAM;AACJ,QAAMC,IAAOC,EAAQ,MAAMC,EAAmBV,GAAW,EAAE,GAAG,CAACA,CAAS,CAAC,GACnEW,IAAQH,EAAK,WAAW,GACxBI,IAAMV,IAAe,QAAQA,CAAY,KAAKS,IAAQ,kBAAkB,QAExEE,IAA4BF,IAC9B;AAAA,IACE;AAAA,MACE,KAAK;AAAA,MACL,UAAU;AAAA,MACV,OAAOC,KAAO;AAAA,IAAA;AAAA,EAChB,IAEFJ,EAAK,IAAI,CAACM,OAAO;AAAA,IACf,KAAKA,EAAE;AAAA,IACP,OACE,gBAAAC,EAAC,QAAA,EAAK,WAAWC,EAAO,oBAAoB,GACzC,UAAA;AAAA,MAAAF,EAAE,0BAAS,QAAA,EAAK,WAAWE,EAAO,mBAAmB,GAAI,UAAAF,EAAE,MAAA,CAAM,IAAU;AAAA,wBAC3E,QAAA,EAAK,WAAWE,EAAO,mBAAmB,GAAI,YAAE,IAAA,CAAI;AAAA,IAAA,GACvD;AAAA,IAEF,SAAS,MAAMb,EAAOW,EAAE,GAAG;AAAA,EAAA,EAC3B;AAEN,SACE,gBAAAG;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,UAAUjB,KAAYU;AAAA,MACtB,SAAS,CAAC,OAAO;AAAA,MACjB,mBAAAJ;AAAA,MACA,gBAAgB,CAACY,MAAS,gBAAAF,EAAC,OAAA,EAAI,aAAa,CAACG,MAAMA,EAAE,eAAA,GAAmB,UAAAD,EAAA,CAAK;AAAA,MAC7E,MAAM,EAAE,OAAAN,EAAA;AAAA,MAER,UAAA,gBAAAI;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,MAAAhB;AAAA,UACA,UAAUJ,KAAYU;AAAA,UACtB,OAAOC;AAAA,UACP,WAAAN;AAAA,UAEC,UAAAF;AAAA,QAAA;AAAA,MAAA;AAAA,IACH;AAAA,EAAA;AAGN;"}
@@ -1,12 +1,13 @@
1
1
  import { jsx as b } from "react/jsx-runtime";
2
- import { useRef as k, useState as O, useEffect as L, useMemo as P } from "react";
3
- import S from "./FilterPopover/index.js";
2
+ import { useRef as N, useState as E, useEffect as k, useMemo as O } from "react";
3
+ import P from "./FilterPopover/index.js";
4
4
  import { resolveFilterVisible as W } from "./types.js";
5
5
  import { useFilterFieldBridge as $, useFilterRegister as q } from "./useFilterState.js";
6
- import { marsunToKne as a, marsunValueLabel as z, kneValueLabel as G, mergeKneLabelMaps as V, kneToMarsun as H } from "./kneValueAdapter.js";
6
+ import { marsunToKne as n, marsunValueLabel as z, kneValueLabel as G, mergeKneLabelMaps as V, kneToMarsun as H } from "./kneValueAdapter.js";
7
7
  import D from "./createKneFilterField.module.scss.js";
8
8
  import R from "classnames";
9
- function K(u, f) {
9
+ import { renderSelectListItemContent as J } from "../ReactFilter/renderSelectListItemContent.js";
10
+ function g(a, f) {
10
11
  const M = ({
11
12
  filterKey: s,
12
13
  label: T,
@@ -17,88 +18,90 @@ function K(u, f) {
17
18
  active: w,
18
19
  hidden: y,
19
20
  display: A,
20
- dependsOn: j,
21
- clearOnDepsChange: x = !0,
22
- ...N
21
+ dependsOn: I,
22
+ clearOnDepsChange: S = !0,
23
+ renderItemContent: j,
24
+ ...L
23
25
  }) => {
24
- const l = k({
26
+ const l = N({
25
27
  labelMap: {},
26
28
  itemMap: {}
27
- }), [n, c] = O(
28
- () => a(r, { single: t, ...l.current })
29
- ), m = k(e);
30
- m.current = e;
29
+ }), [u, m] = E(
30
+ () => n(r, { single: t, ...l.current })
31
+ ), o = N(e);
32
+ o.current = e;
31
33
  const { resolvedLabel: p } = $({
32
34
  filterKey: s,
33
35
  value: r,
34
36
  label: T,
35
- dependsOn: j,
36
- clearOnDepsChange: x,
37
+ dependsOn: I,
38
+ clearOnDepsChange: S,
37
39
  onDepsClear: () => {
38
40
  var i;
39
- return (i = m.current) == null ? void 0 : i.call(m, void 0);
41
+ return (i = o.current) == null ? void 0 : i.call(o, void 0);
40
42
  }
41
- }), o = q(), d = W({ display: A, hidden: y });
42
- L(() => {
43
- c(a(r, { single: t, ...l.current }));
43
+ }), c = q(), d = W({ display: A, hidden: y });
44
+ k(() => {
45
+ m(n(r, { single: t, ...l.current }));
44
46
  }, [r, t]);
45
- const F = P(() => {
47
+ const F = O(() => {
46
48
  const i = z(r, l.current.labelMap);
47
- return i || G(a(r, { single: t, ...l.current }), t);
49
+ return i || G(n(r, { single: t, ...l.current }), t);
48
50
  }, [r, t]);
49
- if (L(() => {
50
- if (o) {
51
+ if (k(() => {
52
+ if (c) {
51
53
  if (!d) {
52
- o.unregister(s);
54
+ c.unregister(s);
53
55
  return;
54
56
  }
55
- F ? o.register(s, {
57
+ F ? c.register(s, {
56
58
  label: p,
57
59
  valueLabel: F,
58
60
  onRemove: () => e == null ? void 0 : e(void 0)
59
- }) : o.unregister(s);
61
+ }) : c.unregister(s);
60
62
  }
61
63
  }, [F, s, p, d]), !d) return null;
62
- const B = Array.isArray(r) ? r.length > 0 : r != null && r !== "", E = (i) => {
63
- l.current = V(i, l.current), c(i);
64
+ const x = Array.isArray(r) ? r.length > 0 : r != null && r !== "", B = (i) => {
65
+ l.current = V(i, l.current), m(i);
64
66
  };
65
67
  return /* @__PURE__ */ b(
66
- S,
68
+ P,
67
69
  {
68
70
  label: p,
69
- active: w || B,
71
+ active: w || x,
70
72
  width: v,
71
73
  onOpenChange: (i) => {
72
- i && c(a(r, { single: t, ...l.current }));
74
+ i && m(n(r, { single: t, ...l.current }));
73
75
  },
74
76
  onConfirm: () => {
75
- l.current = V(n, l.current), e == null || e(H(n, t));
77
+ l.current = V(u, l.current), e == null || e(H(u, t));
76
78
  },
77
79
  onReset: () => {
78
- c(t ? null : []), e == null || e(void 0);
80
+ m(t ? null : []), e == null || e(void 0);
79
81
  },
80
82
  children: /* @__PURE__ */ b("div", { className: R("kne-filter-field-panel", D["kne-filter-field-panel"]), children: /* @__PURE__ */ b(
81
- u,
83
+ a,
82
84
  {
83
- ...N,
85
+ ...L,
84
86
  className: R(
85
87
  "kne-filter-field-inner",
86
88
  D["kne-filter-field-inner"],
87
- N.className
89
+ L.className
88
90
  ),
89
91
  single: t,
90
92
  allowClear: !1,
91
93
  valueType: "all",
92
- value: n ?? (t ? null : []),
93
- onChange: E
94
+ value: u ?? (t ? null : []),
95
+ onChange: B,
96
+ renderItemContent: j || J
94
97
  }
95
98
  ) })
96
99
  }
97
100
  );
98
101
  };
99
- return M.displayName = `KneFilterField(${u.displayName || u.name || "Component"})`, M;
102
+ return M.displayName = `KneFilterField(${a.displayName || a.name || "Component"})`, M;
100
103
  }
101
104
  export {
102
- K as createKneFilterField
105
+ g as createKneFilterField
103
106
  };
104
107
  //# sourceMappingURL=createKneFilterField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createKneFilterField.js","sources":["../../../src/components/Filter/createKneFilterField.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useRef, useState } from 'react';\nimport FilterPopover from './FilterPopover';\nimport type { BaseFilterProps } from './types';\nimport { resolveFilterVisible } from './types';\nimport { useFilterFieldBridge, useFilterRegister } from './useFilterState';\nimport {\n kneToMarsun,\n kneValueLabel,\n marsunToKne,\n marsunValueLabel,\n mergeKneLabelMaps,\n type KneSelectItem,\n type MarsunSelectValue,\n} from './kneValueAdapter';\nimport styles from './createKneFilterField.module.scss';\nimport classNames from 'classnames';\n\nexport type KneFilterFieldProps = BaseFilterProps & {\n value?: MarsunSelectValue;\n onChange?: (value: MarsunSelectValue) => void;\n /** 对齐 kne:true 单选 */\n single?: boolean;\n /** 面板宽度 */\n panelWidth?: number;\n /** 透传给 kne 组件的其余 props */\n [key: string]: unknown;\n};\n\ntype KneComponentProps = Record<string, unknown> & {\n value?: KneSelectItem | KneSelectItem[] | null;\n onChange?: (v: KneSelectItem | KneSelectItem[] | null) => void;\n single?: boolean;\n valueType?: string;\n allowClear?: boolean;\n className?: string;\n};\n\n/**\n * 将 kne SuperSelect / plus 选择器包进 CommonFilter:FilterPopover 壳 + Marsun 值适配。\n */\nexport function createKneFilterField(\n KneComponent: React.ComponentType<KneComponentProps>,\n defaults?: { panelWidth?: number },\n) {\n const KneFilterField: React.FC<KneFilterFieldProps> = ({\n filterKey,\n label,\n value,\n onChange,\n single = false,\n panelWidth = defaults?.panelWidth ?? 420,\n active,\n hidden,\n display,\n dependsOn,\n clearOnDepsChange = true,\n ...kneRest\n }) => {\n const mapsRef = useRef({\n labelMap: {} as Record<string, string>,\n itemMap: {} as Record<string, KneSelectItem>,\n });\n const [draft, setDraft] = useState<KneSelectItem | KneSelectItem[] | null>(() =>\n marsunToKne(value, { single, ...mapsRef.current }),\n );\n\n const onChangeRef = useRef(onChange);\n onChangeRef.current = onChange;\n\n const { resolvedLabel } = useFilterFieldBridge({\n filterKey,\n value,\n label,\n dependsOn,\n clearOnDepsChange,\n onDepsClear: () => onChangeRef.current?.(undefined),\n });\n\n const registerFn = useFilterRegister();\n const visible = resolveFilterVisible({ display, hidden });\n\n useEffect(() => {\n setDraft(marsunToKne(value, { single, ...mapsRef.current }));\n }, [value, single]);\n\n const valueLabel = useMemo(() => {\n const fromMaps = marsunValueLabel(value, mapsRef.current.labelMap);\n if (fromMaps) return fromMaps;\n return kneValueLabel(marsunToKne(value, { single, ...mapsRef.current }), single);\n }, [value, single]);\n\n useEffect(() => {\n if (!registerFn) return;\n if (!visible) {\n registerFn.unregister(filterKey);\n return;\n }\n if (valueLabel) {\n registerFn.register(filterKey, {\n label: resolvedLabel,\n valueLabel,\n onRemove: () => onChange?.(undefined),\n });\n } else {\n registerFn.unregister(filterKey);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [valueLabel, filterKey, resolvedLabel, visible]);\n\n if (!visible) return null;\n\n const hasValue = Array.isArray(value) ? value.length > 0 : value != null && value !== '';\n\n const handleDraftChange = (next: KneSelectItem | KneSelectItem[] | null) => {\n mapsRef.current = mergeKneLabelMaps(next, mapsRef.current);\n setDraft(next);\n };\n\n return (\n <FilterPopover\n label={resolvedLabel}\n active={active || hasValue}\n width={panelWidth}\n onOpenChange={(open) => {\n if (open) setDraft(marsunToKne(value, { single, ...mapsRef.current }));\n }}\n onConfirm={() => {\n mapsRef.current = mergeKneLabelMaps(draft, mapsRef.current);\n onChange?.(kneToMarsun(draft, single));\n }}\n onReset={() => {\n setDraft(single ? null : []);\n onChange?.(undefined);\n }}\n >\n <div className={classNames('kne-filter-field-panel', styles['kne-filter-field-panel'])}>\n <KneComponent\n {...(kneRest as KneComponentProps)}\n className={classNames(\n 'kne-filter-field-inner',\n styles['kne-filter-field-inner'],\n kneRest.className as string | undefined,\n )}\n single={single}\n allowClear={false}\n valueType=\"all\"\n value={draft ?? (single ? null : [])}\n onChange={handleDraftChange}\n />\n </div>\n </FilterPopover>\n );\n };\n\n KneFilterField.displayName = `KneFilterField(${KneComponent.displayName || KneComponent.name || 'Component'})`;\n return KneFilterField;\n}\n"],"names":["createKneFilterField","KneComponent","defaults","KneFilterField","filterKey","label","value","onChange","single","panelWidth","active","hidden","display","dependsOn","clearOnDepsChange","kneRest","mapsRef","useRef","draft","setDraft","useState","marsunToKne","onChangeRef","resolvedLabel","useFilterFieldBridge","_a","registerFn","useFilterRegister","visible","resolveFilterVisible","useEffect","valueLabel","useMemo","fromMaps","marsunValueLabel","kneValueLabel","hasValue","handleDraftChange","next","mergeKneLabelMaps","jsx","FilterPopover","open","kneToMarsun","classNames","styles"],"mappings":"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"}
1
+ {"version":3,"file":"createKneFilterField.js","sources":["../../../src/components/Filter/createKneFilterField.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useRef, useState } from 'react';\nimport FilterPopover from './FilterPopover';\nimport type { BaseFilterProps } from './types';\nimport { resolveFilterVisible } from './types';\nimport { useFilterFieldBridge, useFilterRegister } from './useFilterState';\nimport {\n kneToMarsun,\n kneValueLabel,\n marsunToKne,\n marsunValueLabel,\n mergeKneLabelMaps,\n type KneSelectItem,\n type MarsunSelectValue,\n} from './kneValueAdapter';\nimport styles from './createKneFilterField.module.scss';\nimport classNames from 'classnames';\nimport { renderSelectListItemContent } from '../ReactFilter/renderSelectListItemContent';\n\nexport type KneFilterFieldProps = BaseFilterProps & {\n value?: MarsunSelectValue;\n onChange?: (value: MarsunSelectValue) => void;\n /** 对齐 kne:true 单选 */\n single?: boolean;\n /** 面板宽度 */\n panelWidth?: number;\n /** 透传给 kne 组件的其余 props */\n [key: string]: unknown;\n};\n\ntype KneComponentProps = Record<string, unknown> & {\n value?: KneSelectItem | KneSelectItem[] | null;\n onChange?: (v: KneSelectItem | KneSelectItem[] | null) => void;\n single?: boolean;\n valueType?: string;\n allowClear?: boolean;\n className?: string;\n};\n\n/**\n * 将 kne SuperSelect / plus 选择器包进 CommonFilter:FilterPopover 壳 + Marsun 值适配。\n */\nexport function createKneFilterField(\n KneComponent: React.ComponentType<KneComponentProps>,\n defaults?: { panelWidth?: number },\n) {\n const KneFilterField: React.FC<KneFilterFieldProps> = ({\n filterKey,\n label,\n value,\n onChange,\n single = false,\n panelWidth = defaults?.panelWidth ?? 420,\n active,\n hidden,\n display,\n dependsOn,\n clearOnDepsChange = true,\n renderItemContent,\n ...kneRest\n }) => {\n const mapsRef = useRef({\n labelMap: {} as Record<string, string>,\n itemMap: {} as Record<string, KneSelectItem>,\n });\n const [draft, setDraft] = useState<KneSelectItem | KneSelectItem[] | null>(() =>\n marsunToKne(value, { single, ...mapsRef.current }),\n );\n\n const onChangeRef = useRef(onChange);\n onChangeRef.current = onChange;\n\n const { resolvedLabel } = useFilterFieldBridge({\n filterKey,\n value,\n label,\n dependsOn,\n clearOnDepsChange,\n onDepsClear: () => onChangeRef.current?.(undefined),\n });\n\n const registerFn = useFilterRegister();\n const visible = resolveFilterVisible({ display, hidden });\n\n useEffect(() => {\n setDraft(marsunToKne(value, { single, ...mapsRef.current }));\n }, [value, single]);\n\n const valueLabel = useMemo(() => {\n const fromMaps = marsunValueLabel(value, mapsRef.current.labelMap);\n if (fromMaps) return fromMaps;\n return kneValueLabel(marsunToKne(value, { single, ...mapsRef.current }), single);\n }, [value, single]);\n\n useEffect(() => {\n if (!registerFn) return;\n if (!visible) {\n registerFn.unregister(filterKey);\n return;\n }\n if (valueLabel) {\n registerFn.register(filterKey, {\n label: resolvedLabel,\n valueLabel,\n onRemove: () => onChange?.(undefined),\n });\n } else {\n registerFn.unregister(filterKey);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [valueLabel, filterKey, resolvedLabel, visible]);\n\n if (!visible) return null;\n\n const hasValue = Array.isArray(value) ? value.length > 0 : value != null && value !== '';\n\n const handleDraftChange = (next: KneSelectItem | KneSelectItem[] | null) => {\n mapsRef.current = mergeKneLabelMaps(next, mapsRef.current);\n setDraft(next);\n };\n\n return (\n <FilterPopover\n label={resolvedLabel}\n active={active || hasValue}\n width={panelWidth}\n onOpenChange={(open) => {\n if (open) setDraft(marsunToKne(value, { single, ...mapsRef.current }));\n }}\n onConfirm={() => {\n mapsRef.current = mergeKneLabelMaps(draft, mapsRef.current);\n onChange?.(kneToMarsun(draft, single));\n }}\n onReset={() => {\n setDraft(single ? null : []);\n onChange?.(undefined);\n }}\n >\n <div className={classNames('kne-filter-field-panel', styles['kne-filter-field-panel'])}>\n <KneComponent\n {...(kneRest as KneComponentProps)}\n className={classNames(\n 'kne-filter-field-inner',\n styles['kne-filter-field-inner'],\n kneRest.className as string | undefined,\n )}\n single={single}\n allowClear={false}\n valueType=\"all\"\n value={draft ?? (single ? null : [])}\n onChange={handleDraftChange}\n renderItemContent={\n (renderItemContent as ((ctx: unknown) => React.ReactNode) | undefined) ||\n renderSelectListItemContent\n }\n />\n </div>\n </FilterPopover>\n );\n };\n\n KneFilterField.displayName = `KneFilterField(${KneComponent.displayName || KneComponent.name || 'Component'})`;\n return KneFilterField;\n}\n"],"names":["createKneFilterField","KneComponent","defaults","KneFilterField","filterKey","label","value","onChange","single","panelWidth","active","hidden","display","dependsOn","clearOnDepsChange","renderItemContent","kneRest","mapsRef","useRef","draft","setDraft","useState","marsunToKne","onChangeRef","resolvedLabel","useFilterFieldBridge","_a","registerFn","useFilterRegister","visible","resolveFilterVisible","useEffect","valueLabel","useMemo","fromMaps","marsunValueLabel","kneValueLabel","hasValue","handleDraftChange","next","mergeKneLabelMaps","jsx","FilterPopover","open","kneToMarsun","classNames","styles","renderSelectListItemContent"],"mappings":"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"}
@@ -1,53 +1,55 @@
1
1
  import { jsx as g } from "react/jsx-runtime";
2
- import R from "@kne/super-select";
2
+ import F from "@kne/super-select";
3
3
  /* empty css */
4
- import * as F from "@kne/react-form-antd";
4
+ import * as I from "@kne/react-form-antd";
5
5
  import T from "classnames";
6
6
  import { useRef as _, useMemo as b } from "react";
7
7
  import { withNormalizedLabelTips as K } from "./normalizeLabelTips.js";
8
8
  import { marsunToKne as U, mergeKneLabelMaps as j, kneToMarsun as z } from "../Filter/kneValueAdapter.js";
9
9
  import D from "./SuperSelect.module.scss.js";
10
- const u = "all";
11
- function G(r, e = u) {
12
- return r == null || r === "" ? !1 : Array.isArray(r) ? r.length === 1 && String(r[0]) === String(e) : String(r) === String(e);
10
+ import { renderSelectListItemContent as G } from "../ReactFilter/renderSelectListItemContent.js";
11
+ const m = "all";
12
+ function O(r, t = m) {
13
+ return r == null || r === "" ? !1 : Array.isArray(r) ? r.length === 1 && String(r[0]) === String(t) : String(r) === String(t);
13
14
  }
14
- function W(r, e = u) {
15
- return r == null || r === "" ? !1 : Array.isArray(r) ? r.length === 1 && String(r[0]) === String(e) : String(r) === String(e);
15
+ function Z(r, t = m) {
16
+ return r == null || r === "" ? !1 : Array.isArray(r) ? r.length === 1 && String(r[0]) === String(t) : String(r) === String(t);
16
17
  }
17
- const I = ({
18
+ const $ = ({
18
19
  value: r,
19
- onChange: e,
20
- disabled: i,
20
+ onChange: t,
21
+ disabled: a,
21
22
  options: c = [],
22
23
  single: o = !1,
23
- allowSelectedAll: L = !1,
24
- selectedAllValue: n = { value: u, label: "全选" },
25
- placeholder: d,
26
- showSearch: m = !0,
24
+ allowSelectedAll: d = !1,
25
+ selectedAllValue: n = { value: m, label: "全选" },
26
+ placeholder: L,
27
+ showSearch: u = !0,
27
28
  allowClear: w = !0,
28
29
  className: y,
29
30
  api: p,
30
31
  getSearchProps: l,
31
- ...k
32
+ renderItemContent: k,
33
+ ...C
32
34
  }) => {
33
- const a = _({
35
+ const i = _({
34
36
  labelMap: {},
35
37
  itemMap: {}
36
38
  }), A = p != null, S = b(() => {
37
- const t = {};
39
+ const e = {};
38
40
  for (const s of c)
39
- t[String(s.value)] = s.label;
40
- return t[String(n.value)] = n.label, t;
41
+ e[String(s.value)] = s.label;
42
+ return e[String(n.value)] = n.label, e;
41
43
  }, [c, n]), N = b(() => {
42
- const t = {
43
- labelMap: { ...S, ...a.current.labelMap },
44
- itemMap: a.current.itemMap
44
+ const e = {
45
+ labelMap: { ...S, ...i.current.labelMap },
46
+ itemMap: i.current.itemMap
45
47
  };
46
- return G(r, n.value) ? [n] : U(r, { single: o, ...t });
47
- }, [r, o, S, n]), h = (t) => {
48
- a.current = j(t, a.current), e == null || e(z(t, o));
49
- }, C = ({ searchText: t }) => ({
50
- keyword: t || "",
48
+ return O(r, n.value) ? [n] : U(r, { single: o, ...e });
49
+ }, [r, o, S, n]), h = (e) => {
50
+ i.current = j(e, i.current), t == null || t(z(e, o));
51
+ }, E = ({ searchText: e }) => ({
52
+ keyword: e || "",
51
53
  currentPage: 1
52
54
  });
53
55
  return /* @__PURE__ */ g(
@@ -59,47 +61,48 @@ const I = ({
59
61
  y
60
62
  ),
61
63
  children: /* @__PURE__ */ g(
62
- R,
64
+ F,
63
65
  {
64
- ...k,
66
+ ...C,
65
67
  value: N,
66
68
  onChange: h,
69
+ renderItemContent: k || G,
67
70
  ...A ? {
68
71
  api: p,
69
- getSearchProps: m ? l || C : l
72
+ getSearchProps: u ? l || E : l
70
73
  } : {
71
74
  options: c,
72
- getSearchCallback: m ? ({ searchText: t }, s) => {
73
- if (!t) return !0;
74
- const f = t.toLowerCase(), E = String(s.label ?? "").toLowerCase(), P = String(s.value ?? "").toLowerCase();
75
- return E.includes(f) || P.includes(f);
75
+ getSearchCallback: u ? ({ searchText: e }, s) => {
76
+ if (!e) return !0;
77
+ const f = e.toLowerCase(), P = String(s.label ?? "").toLowerCase(), R = String(s.value ?? "").toLowerCase();
78
+ return P.includes(f) || R.includes(f);
76
79
  } : void 0
77
80
  },
78
81
  single: o,
79
- allowSelectedAll: !o && L,
82
+ allowSelectedAll: !o && d,
80
83
  selectedAllValue: n,
81
- placeholder: d,
84
+ placeholder: L,
82
85
  isPopup: !0,
83
- allowClear: w && !i,
84
- disabled: i
86
+ allowClear: w && !a,
87
+ disabled: a
85
88
  }
86
89
  )
87
90
  }
88
91
  );
89
92
  }, M = (r) => {
90
- const { useDecorator: e } = F.hooks;
91
- return e({
93
+ const { useDecorator: t } = I.hooks;
94
+ return t({
92
95
  fieldName: "superSelect",
93
96
  ...r
94
- })(I);
97
+ })($);
95
98
  };
96
99
  M.displayName = "SuperSelect";
97
- const X = K(
100
+ const v = K(
98
101
  M
99
102
  );
100
103
  export {
101
- u as SUPER_SELECT_ALL_VALUE,
102
- X as SuperSelect,
103
- W as isSuperSelectAllValue
104
+ m as SUPER_SELECT_ALL_VALUE,
105
+ v as SuperSelect,
106
+ Z as isSuperSelectAllValue
104
107
  };
105
108
  //# sourceMappingURL=SuperSelect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SuperSelect.js","sources":["../../../src/components/Form/SuperSelect.tsx"],"sourcesContent":["/**\n * FormInfo · SuperSelect 字段(对位 kne-union SuperSelectField 精简版)。\n * 经 `hooks.useDecorator` 接入;多选可开 `allowSelectedAll`(值 sentinel 默认 `'all'`)。\n * 对外 form 值为 Marsun 标量/数组(string | string[]),面板内适配 kne `{ label, value }`。\n */\n// @ts-nocheck — @kne/super-select 无完整 TS 类型\nimport KneSuperSelect from '@kne/super-select';\nimport '@kne/super-select/dist/index.css';\nimport * as ReactFormAntd from '@kne/react-form-antd';\nimport classNames from 'classnames';\nimport type { ComponentType, FC, ReactNode } from 'react';\nimport { useMemo, useRef } from 'react';\nimport { withNormalizedLabelTips } from './normalizeLabelTips';\nimport {\n kneToMarsun,\n marsunToKne,\n mergeKneLabelMaps,\n type KneSelectItem,\n type MarsunSelectValue,\n} from '@/components/Filter/kneValueAdapter';\nimport styles from './SuperSelect.module.scss';\n\n/** 与 @kne/super-select 默认 `selectedAllValue.value` 对齐 */\nexport const SUPER_SELECT_ALL_VALUE = 'all';\n\nexport type SuperSelectOption = {\n value: string | number;\n label: string;\n disabled?: boolean;\n [key: string]: unknown;\n};\n\nexport type SuperSelectProps = {\n name: string;\n label?: ReactNode;\n labelTips?: ReactNode | ((props: SuperSelectProps) => ReactNode);\n rule?: string;\n disabled?: boolean;\n placeholder?: string;\n options?: SuperSelectOption[];\n /** true = 单选;默认多选 */\n single?: boolean;\n /** 多选时显示全选(form 值变为 `[selectedAllValue.value]`,默认 `'all'`) */\n allowSelectedAll?: boolean;\n /** 覆盖默认 `{ value: 'all', label: '全选' }` */\n selectedAllValue?: { value: string | number; label: string };\n showSearch?: boolean;\n allowClear?: boolean;\n className?: string;\n /** 透传 kne SuperSelect */\n [key: string]: unknown;\n};\n\ntype FieldRenderProps = {\n value?: MarsunSelectValue;\n onChange?: (v: MarsunSelectValue) => void;\n disabled?: boolean;\n id?: string;\n};\n\ntype KneHooks = {\n useDecorator: (\n opts: Record<string, unknown>,\n ) => (Comp: ComponentType<FieldRenderProps>) => ReactNode;\n};\n\nfunction isSelectAllMarsun(\n value: MarsunSelectValue,\n allValue: string | number = SUPER_SELECT_ALL_VALUE,\n): boolean {\n if (value == null || value === '') return false;\n if (Array.isArray(value)) {\n return value.length === 1 && String(value[0]) === String(allValue);\n }\n return String(value) === String(allValue);\n}\n\n/** 业务写路径:是否为全选 sentinel */\nexport function isSuperSelectAllValue(\n value: unknown,\n allValue: string | number = SUPER_SELECT_ALL_VALUE,\n): boolean {\n if (value == null || value === '') return false;\n if (Array.isArray(value)) {\n return value.length === 1 && String(value[0]) === String(allValue);\n }\n return String(value) === String(allValue);\n}\n\nconst SuperSelectField: FC<\n FieldRenderProps & {\n options?: SuperSelectOption[];\n single?: boolean;\n allowSelectedAll?: boolean;\n selectedAllValue?: { value: string | number; label: string };\n placeholder?: string;\n showSearch?: boolean;\n allowClear?: boolean;\n className?: string;\n /** 有 api 时走远程/分页加载,不再传 options(否则 kne 会忽略 api) */\n api?: unknown;\n getSearchProps?: (searchProps: { searchText?: string }) => Record<string, unknown>;\n [key: string]: unknown;\n }\n> = ({\n value,\n onChange,\n disabled,\n options = [],\n single = false,\n allowSelectedAll = false,\n selectedAllValue = { value: SUPER_SELECT_ALL_VALUE, label: '全选' },\n placeholder,\n showSearch = true,\n allowClear = true,\n className,\n api,\n getSearchProps: getSearchPropsProp,\n ...kneRest\n}) => {\n const mapsRef = useRef({\n labelMap: {} as Record<string, string>,\n itemMap: {} as Record<string, KneSelectItem>,\n });\n const useApi = api != null;\n\n const labelMapFromOptions = useMemo(() => {\n const map: Record<string, string> = {};\n for (const o of options) {\n map[String(o.value)] = o.label;\n }\n map[String(selectedAllValue.value)] = selectedAllValue.label;\n return map;\n }, [options, selectedAllValue]);\n\n const kneValue = useMemo(() => {\n const maps = {\n labelMap: { ...labelMapFromOptions, ...mapsRef.current.labelMap },\n itemMap: mapsRef.current.itemMap,\n };\n if (isSelectAllMarsun(value, selectedAllValue.value)) {\n return [selectedAllValue as KneSelectItem];\n }\n return marsunToKne(value, { single, ...maps });\n }, [value, single, labelMapFromOptions, selectedAllValue]);\n\n const handleChange = (next: KneSelectItem | KneSelectItem[] | null) => {\n mapsRef.current = mergeKneLabelMaps(next, mapsRef.current);\n onChange?.(kneToMarsun(next, single));\n };\n\n const defaultGetSearchProps = ({ searchText }: { searchText?: string }) => ({\n keyword: searchText || '',\n currentPage: 1,\n });\n\n return (\n <div\n className={classNames(\n 'marsun-form-super-select',\n styles['marsun-form-super-select'],\n className,\n )}\n >\n <KneSuperSelect\n {...kneRest}\n value={kneValue}\n onChange={handleChange}\n {...(useApi\n ? {\n api,\n getSearchProps: showSearch\n ? getSearchPropsProp || defaultGetSearchProps\n : getSearchPropsProp,\n }\n : {\n options,\n getSearchCallback: showSearch\n ? ({ searchText }: { searchText?: string }, item: KneSelectItem) => {\n if (!searchText) return true;\n const kw = searchText.toLowerCase();\n const label = String(item.label ?? '').toLowerCase();\n const val = String(item.value ?? '').toLowerCase();\n return label.includes(kw) || val.includes(kw);\n }\n : undefined,\n })}\n single={single}\n allowSelectedAll={!single && allowSelectedAll}\n selectedAllValue={selectedAllValue}\n placeholder={placeholder}\n isPopup\n allowClear={allowClear && !disabled}\n disabled={disabled}\n />\n </div>\n );\n};\n\nconst SuperSelectInner: FC<SuperSelectProps> = (props) => {\n const { useDecorator } = (ReactFormAntd as unknown as { hooks: KneHooks }).hooks;\n const render = useDecorator({\n fieldName: 'superSelect',\n ...props,\n });\n return render(SuperSelectField);\n};\n\nSuperSelectInner.displayName = 'SuperSelect';\n\nexport const SuperSelect = withNormalizedLabelTips(\n SuperSelectInner as ComponentType<SuperSelectProps>,\n) as ComponentType<SuperSelectProps>;\n\nexport default SuperSelect;\n"],"names":["SUPER_SELECT_ALL_VALUE","isSelectAllMarsun","value","allValue","isSuperSelectAllValue","SuperSelectField","onChange","disabled","options","single","allowSelectedAll","selectedAllValue","placeholder","showSearch","allowClear","className","api","getSearchPropsProp","kneRest","mapsRef","useRef","useApi","labelMapFromOptions","useMemo","map","o","kneValue","maps","marsunToKne","handleChange","next","mergeKneLabelMaps","kneToMarsun","defaultGetSearchProps","searchText","jsx","classNames","styles","KneSuperSelect","item","kw","label","val","SuperSelectInner","props","useDecorator","ReactFormAntd","SuperSelect","withNormalizedLabelTips"],"mappings":"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"}
1
+ {"version":3,"file":"SuperSelect.js","sources":["../../../src/components/Form/SuperSelect.tsx"],"sourcesContent":["/**\n * FormInfo · SuperSelect 字段(对位 kne-union SuperSelectField 精简版)。\n * 经 `hooks.useDecorator` 接入;多选可开 `allowSelectedAll`(值 sentinel 默认 `'all'`)。\n * 对外 form 值为 Marsun 标量/数组(string | string[]),面板内适配 kne `{ label, value }`。\n */\n// @ts-nocheck — @kne/super-select 无完整 TS 类型\nimport KneSuperSelect from '@kne/super-select';\nimport '@kne/super-select/dist/index.css';\nimport * as ReactFormAntd from '@kne/react-form-antd';\nimport classNames from 'classnames';\nimport type { ComponentType, FC, ReactNode } from 'react';\nimport { useMemo, useRef } from 'react';\nimport { withNormalizedLabelTips } from './normalizeLabelTips';\nimport {\n kneToMarsun,\n marsunToKne,\n mergeKneLabelMaps,\n type KneSelectItem,\n type MarsunSelectValue,\n} from '@/components/Filter/kneValueAdapter';\nimport styles from './SuperSelect.module.scss';\nimport { renderSelectListItemContent } from '@/components/ReactFilter/renderSelectListItemContent';\n\n/** 与 @kne/super-select 默认 `selectedAllValue.value` 对齐 */\nexport const SUPER_SELECT_ALL_VALUE = 'all';\n\nexport type SuperSelectOption = {\n value: string | number;\n label: string;\n disabled?: boolean;\n [key: string]: unknown;\n};\n\nexport type SuperSelectProps = {\n name: string;\n label?: ReactNode;\n labelTips?: ReactNode | ((props: SuperSelectProps) => ReactNode);\n rule?: string;\n disabled?: boolean;\n placeholder?: string;\n options?: SuperSelectOption[];\n /** true = 单选;默认多选 */\n single?: boolean;\n /** 多选时显示全选(form 值变为 `[selectedAllValue.value]`,默认 `'all'`) */\n allowSelectedAll?: boolean;\n /** 覆盖默认 `{ value: 'all', label: '全选' }` */\n selectedAllValue?: { value: string | number; label: string };\n showSearch?: boolean;\n allowClear?: boolean;\n className?: string;\n /** 透传 kne SuperSelect */\n [key: string]: unknown;\n};\n\ntype FieldRenderProps = {\n value?: MarsunSelectValue;\n onChange?: (v: MarsunSelectValue) => void;\n disabled?: boolean;\n id?: string;\n};\n\ntype KneHooks = {\n useDecorator: (\n opts: Record<string, unknown>,\n ) => (Comp: ComponentType<FieldRenderProps>) => ReactNode;\n};\n\nfunction isSelectAllMarsun(\n value: MarsunSelectValue,\n allValue: string | number = SUPER_SELECT_ALL_VALUE,\n): boolean {\n if (value == null || value === '') return false;\n if (Array.isArray(value)) {\n return value.length === 1 && String(value[0]) === String(allValue);\n }\n return String(value) === String(allValue);\n}\n\n/** 业务写路径:是否为全选 sentinel */\nexport function isSuperSelectAllValue(\n value: unknown,\n allValue: string | number = SUPER_SELECT_ALL_VALUE,\n): boolean {\n if (value == null || value === '') return false;\n if (Array.isArray(value)) {\n return value.length === 1 && String(value[0]) === String(allValue);\n }\n return String(value) === String(allValue);\n}\n\nconst SuperSelectField: FC<\n FieldRenderProps & {\n options?: SuperSelectOption[];\n single?: boolean;\n allowSelectedAll?: boolean;\n selectedAllValue?: { value: string | number; label: string };\n placeholder?: string;\n showSearch?: boolean;\n allowClear?: boolean;\n className?: string;\n /** 有 api 时走远程/分页加载,不再传 options(否则 kne 会忽略 api) */\n api?: unknown;\n getSearchProps?: (searchProps: { searchText?: string }) => Record<string, unknown>;\n [key: string]: unknown;\n }\n> = ({\n value,\n onChange,\n disabled,\n options = [],\n single = false,\n allowSelectedAll = false,\n selectedAllValue = { value: SUPER_SELECT_ALL_VALUE, label: '全选' },\n placeholder,\n showSearch = true,\n allowClear = true,\n className,\n api,\n getSearchProps: getSearchPropsProp,\n renderItemContent,\n ...kneRest\n}) => {\n const mapsRef = useRef({\n labelMap: {} as Record<string, string>,\n itemMap: {} as Record<string, KneSelectItem>,\n });\n const useApi = api != null;\n\n const labelMapFromOptions = useMemo(() => {\n const map: Record<string, string> = {};\n for (const o of options) {\n map[String(o.value)] = o.label;\n }\n map[String(selectedAllValue.value)] = selectedAllValue.label;\n return map;\n }, [options, selectedAllValue]);\n\n const kneValue = useMemo(() => {\n const maps = {\n labelMap: { ...labelMapFromOptions, ...mapsRef.current.labelMap },\n itemMap: mapsRef.current.itemMap,\n };\n if (isSelectAllMarsun(value, selectedAllValue.value)) {\n return [selectedAllValue as KneSelectItem];\n }\n return marsunToKne(value, { single, ...maps });\n }, [value, single, labelMapFromOptions, selectedAllValue]);\n\n const handleChange = (next: KneSelectItem | KneSelectItem[] | null) => {\n mapsRef.current = mergeKneLabelMaps(next, mapsRef.current);\n onChange?.(kneToMarsun(next, single));\n };\n\n const defaultGetSearchProps = ({ searchText }: { searchText?: string }) => ({\n keyword: searchText || '',\n currentPage: 1,\n });\n\n return (\n <div\n className={classNames(\n 'marsun-form-super-select',\n styles['marsun-form-super-select'],\n className,\n )}\n >\n <KneSuperSelect\n {...kneRest}\n value={kneValue}\n onChange={handleChange}\n renderItemContent={renderItemContent || renderSelectListItemContent}\n {...(useApi\n ? {\n api,\n getSearchProps: showSearch\n ? getSearchPropsProp || defaultGetSearchProps\n : getSearchPropsProp,\n }\n : {\n options,\n getSearchCallback: showSearch\n ? ({ searchText }: { searchText?: string }, item: KneSelectItem) => {\n if (!searchText) return true;\n const kw = searchText.toLowerCase();\n const label = String(item.label ?? '').toLowerCase();\n const val = String(item.value ?? '').toLowerCase();\n return label.includes(kw) || val.includes(kw);\n }\n : undefined,\n })}\n single={single}\n allowSelectedAll={!single && allowSelectedAll}\n selectedAllValue={selectedAllValue}\n placeholder={placeholder}\n isPopup\n allowClear={allowClear && !disabled}\n disabled={disabled}\n />\n </div>\n );\n};\n\nconst SuperSelectInner: FC<SuperSelectProps> = (props) => {\n const { useDecorator } = (ReactFormAntd as unknown as { hooks: KneHooks }).hooks;\n const render = useDecorator({\n fieldName: 'superSelect',\n ...props,\n });\n return render(SuperSelectField);\n};\n\nSuperSelectInner.displayName = 'SuperSelect';\n\nexport const SuperSelect = withNormalizedLabelTips(\n SuperSelectInner as ComponentType<SuperSelectProps>,\n) as ComponentType<SuperSelectProps>;\n\nexport default SuperSelect;\n"],"names":["SUPER_SELECT_ALL_VALUE","isSelectAllMarsun","value","allValue","isSuperSelectAllValue","SuperSelectField","onChange","disabled","options","single","allowSelectedAll","selectedAllValue","placeholder","showSearch","allowClear","className","api","getSearchPropsProp","renderItemContent","kneRest","mapsRef","useRef","useApi","labelMapFromOptions","useMemo","map","o","kneValue","maps","marsunToKne","handleChange","next","mergeKneLabelMaps","kneToMarsun","defaultGetSearchProps","searchText","jsx","classNames","styles","KneSuperSelect","renderSelectListItemContent","item","kw","label","val","SuperSelectInner","props","useDecorator","ReactFormAntd","SuperSelect","withNormalizedLabelTips"],"mappings":"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"}
@@ -1,82 +1,59 @@
1
- import { jsx as r } from "react/jsx-runtime";
2
- import * as R from "@kne/react-form-antd";
3
- import T from "classnames";
4
- import { Suspense as N, lazy as u } from "react";
5
- import h from "./style.module.scss.js";
6
- const y = u(
7
- () => import("../../Editor/index.js").then((e) => ({ default: e.RichTextEditor }))
8
- ), b = ({
9
- value: e = "",
10
- onChange: i,
11
- disabled: t,
12
- readOnly: o,
13
- placeholder: a,
14
- minHeight: c = 140,
15
- enableVariableMention: s,
16
- variables: l,
17
- catalogError: n,
18
- className: d,
19
- editorKey: m,
20
- id: f
21
- }) => /* @__PURE__ */ r(
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import * as p from "@kne/react-form-antd";
3
+ import R from "classnames";
4
+ import { Suspense as T, lazy as u } from "react";
5
+ import o from "./style.module.scss.js";
6
+ const N = u(
7
+ () => import("../../Editor/index.js").then((t) => ({ default: t.RichTextEditor }))
8
+ ), F = ({
9
+ value: t = "",
10
+ onChange: r,
11
+ disabled: i,
12
+ readOnly: s,
13
+ placeholder: m,
14
+ minHeight: d = 140,
15
+ enableVariableMention: a,
16
+ variables: n,
17
+ catalogError: l,
18
+ className: h,
19
+ editorKey: f,
20
+ id: x
21
+ }) => /* @__PURE__ */ e(
22
22
  "div",
23
23
  {
24
- className: T(
24
+ className: R(
25
25
  "marsun-form-rich-text",
26
- h["form-rich-text"],
27
- t && h["form-rich-text-disabled"],
28
- d
26
+ o["form-rich-text"],
27
+ i && o["form-rich-text-disabled"],
28
+ h
29
29
  ),
30
- "data-field-id": f,
31
- children: /* @__PURE__ */ r(N, { fallback: /* @__PURE__ */ r("div", { className: h["form-rich-text-loading"], children: "加载编辑器…" }), children: /* @__PURE__ */ r(
32
- y,
30
+ "data-field-id": x,
31
+ children: /* @__PURE__ */ e(T, { fallback: /* @__PURE__ */ e("div", { className: o["form-rich-text-loading"], children: "加载编辑器…" }), children: /* @__PURE__ */ e(
32
+ N,
33
33
  {
34
- value: e,
35
- onChange: i,
36
- disabled: t,
37
- readOnly: o,
38
- placeholder: a,
39
- minHeight: c,
40
- enableVariableMention: s,
41
- variables: l,
42
- catalogError: n
34
+ value: t,
35
+ onChange: r,
36
+ disabled: i,
37
+ readOnly: s,
38
+ placeholder: m,
39
+ minHeight: d,
40
+ enableVariableMention: a,
41
+ variables: n,
42
+ catalogError: l
43
43
  },
44
- m || "rte"
44
+ f || "rte"
45
45
  ) })
46
46
  }
47
- ), x = (e) => {
48
- const { useDecorator: i } = R.hooks, {
49
- variables: t,
50
- catalogError: o,
51
- placeholder: a,
52
- className: c,
53
- enableVariableMention: s,
54
- readOnly: l,
55
- minHeight: n,
56
- editorKey: d,
57
- ...m
58
- } = e;
59
- return i({
47
+ ), c = (t) => {
48
+ const { useDecorator: r } = p.hooks;
49
+ return r({
60
50
  fieldName: "richTextEditor",
61
- ...m
62
- })((p) => /* @__PURE__ */ r(
63
- b,
64
- {
65
- ...p,
66
- variables: t,
67
- catalogError: o,
68
- placeholder: a,
69
- className: c,
70
- enableVariableMention: s,
71
- readOnly: l,
72
- minHeight: n,
73
- editorKey: d
74
- }
75
- ));
51
+ ...t
52
+ })(F);
76
53
  };
77
- x.displayName = "RichTextField";
78
- const k = x;
54
+ c.displayName = "RichTextField";
55
+ const b = c;
79
56
  export {
80
- k as RichTextField
57
+ b as RichTextField
81
58
  };
82
59
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/FormInfo/RichTextField/index.tsx"],"sourcesContent":["import * as ReactFormAntd from '@kne/react-form-antd';\nimport classNames from 'classnames';\nimport type { ComponentType, FC, ReactNode } from 'react';\nimport { Suspense, lazy } from 'react';\nimport type { VariableMentionItem } from '@/components/Editor/variableMention';\nimport styles from './style.module.scss';\n\nconst RichTextEditor = lazy(() =>\n import('@/components/Editor').then((m) => ({ default: m.RichTextEditor })),\n);\n\nexport type RichTextFieldProps = {\n name: string;\n label?: ReactNode;\n labelTips?: ReactNode | ((props: RichTextFieldProps) => ReactNode);\n rule?: string;\n disabled?: boolean;\n readOnly?: boolean;\n placeholder?: string;\n minHeight?: number;\n enableVariableMention?: boolean;\n variables?: VariableMentionItem[];\n catalogError?: string;\n className?: string;\n /** remount 键(换文档时传入) */\n editorKey?: string;\n [key: string]: unknown;\n};\n\ntype FieldRenderProps = {\n value?: string;\n onChange?: (v: string) => void;\n disabled?: boolean;\n id?: string;\n};\n\ntype KneHooks = {\n useDecorator: (\n opts: Record<string, unknown>,\n ) => (Comp: ComponentType<FieldRenderProps>) => ReactNode;\n};\n\n/**\n * FormInfo 富文本字段:外观对齐 Input;L2 Editor 懒加载;「插入变量」+ 原子色块。\n */\nconst RichTextControl: FC<\n FieldRenderProps & {\n readOnly?: boolean;\n placeholder?: string;\n minHeight?: number;\n enableVariableMention?: boolean;\n variables?: VariableMentionItem[];\n catalogError?: string;\n className?: string;\n editorKey?: string;\n }\n> = ({\n value = '',\n onChange,\n disabled,\n readOnly,\n placeholder,\n minHeight = 140,\n enableVariableMention,\n variables,\n catalogError,\n className,\n editorKey,\n id,\n}) => (\n <div\n className={classNames(\n 'marsun-form-rich-text',\n styles['form-rich-text'],\n disabled && styles['form-rich-text-disabled'],\n className,\n )}\n data-field-id={id}\n >\n <Suspense fallback={<div className={styles['form-rich-text-loading']}>加载编辑器…</div>}>\n <RichTextEditor\n key={editorKey || 'rte'}\n value={value}\n onChange={onChange}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder}\n minHeight={minHeight}\n enableVariableMention={enableVariableMention}\n variables={variables}\n catalogError={catalogError}\n />\n </Suspense>\n </div>\n);\n\nconst RichTextFieldInner: FC<RichTextFieldProps> = (props) => {\n const { useDecorator } = (ReactFormAntd as unknown as { hooks: KneHooks }).hooks;\n const {\n variables,\n catalogError,\n placeholder,\n className,\n enableVariableMention,\n readOnly,\n minHeight,\n editorKey,\n ...rest\n } = props;\n const render = useDecorator({\n fieldName: 'richTextEditor',\n ...rest,\n });\n return render((fieldProps) => (\n <RichTextControl\n {...fieldProps}\n variables={variables}\n catalogError={catalogError}\n placeholder={placeholder}\n className={className}\n enableVariableMention={enableVariableMention}\n readOnly={readOnly}\n minHeight={minHeight}\n editorKey={editorKey}\n />\n ));\n};\n\nRichTextFieldInner.displayName = 'RichTextField';\n\nexport const RichTextField = RichTextFieldInner as ComponentType<RichTextFieldProps>;\n\nexport default RichTextField;\n"],"names":["RichTextEditor","lazy","m","RichTextControl","value","onChange","disabled","readOnly","placeholder","minHeight","enableVariableMention","variables","catalogError","className","editorKey","id","jsx","classNames","styles","Suspense","RichTextFieldInner","props","useDecorator","ReactFormAntd","rest","fieldProps","RichTextField"],"mappings":";;;;;AAOA,MAAMA,IAAiBC;AAAA,EAAK,MAC1B,OAAO,uBAAqB,EAAE,KAAK,CAACC,OAAO,EAAE,SAASA,EAAE,iBAAiB;AAC3E,GAoCMC,IAWF,CAAC;AAAA,EACH,OAAAC,IAAQ;AAAA,EACR,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,uBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,IAAAC;AACF,MACE,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC;AAAA,MACT;AAAA,MACAC,EAAO,gBAAgB;AAAA,MACvBZ,KAAYY,EAAO,yBAAyB;AAAA,MAC5CL;AAAA,IAAA;AAAA,IAEF,iBAAeE;AAAA,IAEf,UAAA,gBAAAC,EAACG,GAAA,EAAS,UAAU,gBAAAH,EAAC,OAAA,EAAI,WAAWE,EAAO,wBAAwB,GAAG,UAAA,SAAA,CAAM,GAC1E,UAAA,gBAAAF;AAAA,MAAChB;AAAA,MAAA;AAAA,QAEC,OAAAI;AAAA,QACA,UAAAC;AAAA,QACA,UAAAC;AAAA,QACA,UAAAC;AAAA,QACA,aAAAC;AAAA,QACA,WAAAC;AAAA,QACA,uBAAAC;AAAA,QACA,WAAAC;AAAA,QACA,cAAAC;AAAA,MAAA;AAAA,MATKE,KAAa;AAAA,IAAA,EAUpB,CACF;AAAA,EAAA;AACF,GAGIM,IAA6C,CAACC,MAAU;AAC5D,QAAM,EAAE,cAAAC,MAAkBC,EAAiD,OACrE;AAAA,IACJ,WAAAZ;AAAA,IACA,cAAAC;AAAA,IACA,aAAAJ;AAAA,IACA,WAAAK;AAAA,IACA,uBAAAH;AAAA,IACA,UAAAH;AAAA,IACA,WAAAE;AAAA,IACA,WAAAK;AAAA,IACA,GAAGU;AAAA,EAAA,IACDH;AAKJ,SAJeC,EAAa;AAAA,IAC1B,WAAW;AAAA,IACX,GAAGE;AAAA,EAAA,CACJ,EACa,CAACC,MACb,gBAAAT;AAAA,IAACb;AAAA,IAAA;AAAA,MACE,GAAGsB;AAAA,MACJ,WAAAd;AAAA,MACA,cAAAC;AAAA,MACA,aAAAJ;AAAA,MACA,WAAAK;AAAA,MACA,uBAAAH;AAAA,MACA,UAAAH;AAAA,MACA,WAAAE;AAAA,MACA,WAAAK;AAAA,IAAA;AAAA,EAAA,CAEH;AACH;AAEAM,EAAmB,cAAc;AAE1B,MAAMM,IAAgBN;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/FormInfo/RichTextField/index.tsx"],"sourcesContent":["import * as ReactFormAntd from '@kne/react-form-antd';\nimport classNames from 'classnames';\nimport type { ComponentType, FC, ReactNode } from 'react';\nimport { Suspense, lazy } from 'react';\nimport type { VariableMentionItem } from '@/components/Editor/variableMention';\nimport styles from './style.module.scss';\n\nconst RichTextEditor = lazy(() =>\n import('@/components/Editor').then((m) => ({ default: m.RichTextEditor })),\n);\n\nexport type RichTextFieldProps = {\n name: string;\n label?: ReactNode;\n labelTips?: ReactNode | ((props: RichTextFieldProps) => ReactNode);\n rule?: string;\n disabled?: boolean;\n readOnly?: boolean;\n placeholder?: string;\n minHeight?: number;\n enableVariableMention?: boolean;\n variables?: VariableMentionItem[];\n catalogError?: string;\n className?: string;\n /** remount 键(换文档时传入) */\n editorKey?: string;\n [key: string]: unknown;\n};\n\ntype FieldRenderProps = {\n value?: string;\n onChange?: (v: string) => void;\n disabled?: boolean;\n id?: string;\n readOnly?: boolean;\n placeholder?: string;\n minHeight?: number;\n enableVariableMention?: boolean;\n variables?: VariableMentionItem[];\n catalogError?: string;\n className?: string;\n editorKey?: string;\n};\n\ntype KneHooks = {\n useDecorator: (\n opts: Record<string, unknown>,\n ) => (Comp: ComponentType<FieldRenderProps>) => ReactNode;\n};\n\n/**\n * FormInfo 富文本字段:外观对齐 Input;L2 Editor 懒加载;「插入变量」+ 原子色块。\n * 须作为稳定组件类型交给 useDecorator(禁内联函数,否则每键 remount 丢焦)。\n */\nconst RichTextControl: FC<FieldRenderProps> = ({\n value = '',\n onChange,\n disabled,\n readOnly,\n placeholder,\n minHeight = 140,\n enableVariableMention,\n variables,\n catalogError,\n className,\n editorKey,\n id,\n}) => (\n <div\n className={classNames(\n 'marsun-form-rich-text',\n styles['form-rich-text'],\n disabled && styles['form-rich-text-disabled'],\n className,\n )}\n data-field-id={id}\n >\n <Suspense fallback={<div className={styles['form-rich-text-loading']}>加载编辑器…</div>}>\n <RichTextEditor\n key={editorKey || 'rte'}\n value={value}\n onChange={onChange}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder}\n minHeight={minHeight}\n enableVariableMention={enableVariableMention}\n variables={variables}\n catalogError={catalogError}\n />\n </Suspense>\n </div>\n);\n\nconst RichTextFieldInner: FC<RichTextFieldProps> = (props) => {\n const { useDecorator } = (ReactFormAntd as unknown as { hooks: KneHooks }).hooks;\n const render = useDecorator({\n fieldName: 'richTextEditor',\n ...props,\n });\n return render(RichTextControl);\n};\n\nRichTextFieldInner.displayName = 'RichTextField';\n\nexport const RichTextField = RichTextFieldInner as ComponentType<RichTextFieldProps>;\n\nexport default RichTextField;\n"],"names":["RichTextEditor","lazy","m","RichTextControl","value","onChange","disabled","readOnly","placeholder","minHeight","enableVariableMention","variables","catalogError","className","editorKey","id","jsx","classNames","styles","Suspense","RichTextFieldInner","props","useDecorator","ReactFormAntd","RichTextField"],"mappings":";;;;;AAOA,MAAMA,IAAiBC;AAAA,EAAK,MAC1B,OAAO,uBAAqB,EAAE,KAAK,CAACC,OAAO,EAAE,SAASA,EAAE,iBAAiB;AAC3E,GA6CMC,IAAwC,CAAC;AAAA,EAC7C,OAAAC,IAAQ;AAAA,EACR,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,uBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,IAAAC;AACF,MACE,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC;AAAA,MACT;AAAA,MACAC,EAAO,gBAAgB;AAAA,MACvBZ,KAAYY,EAAO,yBAAyB;AAAA,MAC5CL;AAAA,IAAA;AAAA,IAEF,iBAAeE;AAAA,IAEf,UAAA,gBAAAC,EAACG,GAAA,EAAS,UAAU,gBAAAH,EAAC,OAAA,EAAI,WAAWE,EAAO,wBAAwB,GAAG,UAAA,SAAA,CAAM,GAC1E,UAAA,gBAAAF;AAAA,MAAChB;AAAA,MAAA;AAAA,QAEC,OAAAI;AAAA,QACA,UAAAC;AAAA,QACA,UAAAC;AAAA,QACA,UAAAC;AAAA,QACA,aAAAC;AAAA,QACA,WAAAC;AAAA,QACA,uBAAAC;AAAA,QACA,WAAAC;AAAA,QACA,cAAAC;AAAA,MAAA;AAAA,MATKE,KAAa;AAAA,IAAA,EAUpB,CACF;AAAA,EAAA;AACF,GAGIM,IAA6C,CAACC,MAAU;AAC5D,QAAM,EAAE,cAAAC,MAAkBC,EAAiD;AAK3E,SAJeD,EAAa;AAAA,IAC1B,WAAW;AAAA,IACX,GAAGD;AAAA,EAAA,CACJ,EACalB,CAAe;AAC/B;AAEAiB,EAAmB,cAAc;AAE1B,MAAMI,IAAgBJ;"}