@next-libs/visual-builder 1.1.0

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 (61) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +13 -0
  3. package/dist/cjs/index.js +45 -0
  4. package/dist/cjs/index.js.map +1 -0
  5. package/dist/cjs/interfaces/brick-visualization.js +22 -0
  6. package/dist/cjs/interfaces/brick-visualization.js.map +1 -0
  7. package/dist/cjs/interfaces/index.js +19 -0
  8. package/dist/cjs/interfaces/index.js.map +1 -0
  9. package/dist/cjs/visual-property-form/VisualPropertyForm.js +282 -0
  10. package/dist/cjs/visual-property-form/VisualPropertyForm.js.map +1 -0
  11. package/dist/cjs/visual-property-form/components/CodeEditor/CodeEditorFormItem.js +64 -0
  12. package/dist/cjs/visual-property-form/components/CodeEditor/CodeEditorFormItem.js.map +1 -0
  13. package/dist/cjs/visual-property-form/components/ColorEditor/ColorEditorItem.js +100 -0
  14. package/dist/cjs/visual-property-form/components/ColorEditor/ColorEditorItem.js.map +1 -0
  15. package/dist/cjs/visual-property-form/components/IconSelect/IconSelectFormItem.js +35 -0
  16. package/dist/cjs/visual-property-form/components/IconSelect/IconSelectFormItem.js.map +1 -0
  17. package/dist/cjs/visual-property-form/components/MenuEditor/MenuEditorItem.js +83 -0
  18. package/dist/cjs/visual-property-form/components/MenuEditor/MenuEditorItem.js.map +1 -0
  19. package/dist/cjs/visual-property-form/constant.js +54 -0
  20. package/dist/cjs/visual-property-form/constant.js.map +1 -0
  21. package/dist/cjs/visual-property-form/processor.js +204 -0
  22. package/dist/cjs/visual-property-form/processor.js.map +1 -0
  23. package/dist/esm/index.js +4 -0
  24. package/dist/esm/index.js.map +1 -0
  25. package/dist/esm/interfaces/brick-visualization.js +14 -0
  26. package/dist/esm/interfaces/brick-visualization.js.map +1 -0
  27. package/dist/esm/interfaces/index.js +2 -0
  28. package/dist/esm/interfaces/index.js.map +1 -0
  29. package/dist/esm/visual-property-form/VisualPropertyForm.js +253 -0
  30. package/dist/esm/visual-property-form/VisualPropertyForm.js.map +1 -0
  31. package/dist/esm/visual-property-form/VisualPropertyForm.module.css +33 -0
  32. package/dist/esm/visual-property-form/components/CodeEditor/CodeEditorFormItem.js +58 -0
  33. package/dist/esm/visual-property-form/components/CodeEditor/CodeEditorFormItem.js.map +1 -0
  34. package/dist/esm/visual-property-form/components/ColorEditor/ColorEditor.module.css +32 -0
  35. package/dist/esm/visual-property-form/components/ColorEditor/ColorEditorItem.js +81 -0
  36. package/dist/esm/visual-property-form/components/ColorEditor/ColorEditorItem.js.map +1 -0
  37. package/dist/esm/visual-property-form/components/IconSelect/IconSelectFormItem.js +23 -0
  38. package/dist/esm/visual-property-form/components/IconSelect/IconSelectFormItem.js.map +1 -0
  39. package/dist/esm/visual-property-form/components/MenuEditor/MenuEditorItem.js +77 -0
  40. package/dist/esm/visual-property-form/components/MenuEditor/MenuEditorItem.js.map +1 -0
  41. package/dist/esm/visual-property-form/constant.js +43 -0
  42. package/dist/esm/visual-property-form/constant.js.map +1 -0
  43. package/dist/esm/visual-property-form/images/empty-dark.svg +54 -0
  44. package/dist/esm/visual-property-form/processor.js +183 -0
  45. package/dist/esm/visual-property-form/processor.js.map +1 -0
  46. package/dist/types/index.d.ts +3 -0
  47. package/dist/types/interfaces/brick-visualization.d.ts +32 -0
  48. package/dist/types/interfaces/index.d.ts +1 -0
  49. package/dist/types/visual-property-form/VisualPropertyForm.d.ts +22 -0
  50. package/dist/types/visual-property-form/VisualPropertyForm.spec.d.ts +1 -0
  51. package/dist/types/visual-property-form/components/CodeEditor/CodeEditorFormItem.d.ts +7 -0
  52. package/dist/types/visual-property-form/components/CodeEditor/CodeEditorFormItem.spec.d.ts +1 -0
  53. package/dist/types/visual-property-form/components/ColorEditor/ColorEditorItem.d.ts +17 -0
  54. package/dist/types/visual-property-form/components/ColorEditor/ColorEditorItem.spec.d.ts +1 -0
  55. package/dist/types/visual-property-form/components/IconSelect/IconSelectFormItem.d.ts +3 -0
  56. package/dist/types/visual-property-form/components/IconSelect/IconSelectFormItem.spec.d.ts +1 -0
  57. package/dist/types/visual-property-form/components/MenuEditor/MenuEditorItem.d.ts +11 -0
  58. package/dist/types/visual-property-form/components/MenuEditor/MenuEditorItem.spec.d.ts +1 -0
  59. package/dist/types/visual-property-form/constant.d.ts +31 -0
  60. package/dist/types/visual-property-form/processor.d.ts +27 -0
  61. package/package.json +39 -0
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.IconSelectFormItem = IconSelectFormItem;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _antd = require("antd");
13
+
14
+ var _forms = require("@next-libs/forms");
15
+
16
+ function IconSelectFormItem(props) {
17
+ const [visible, setVisible] = (0, _react.useState)(false);
18
+ return /*#__PURE__*/_react.default.createElement(_antd.Form.Item, {
19
+ key: props.name,
20
+ name: props.name,
21
+ label: props.label,
22
+ rules: [{
23
+ required: props.required,
24
+ message: `请输入${props.name}`
25
+ }]
26
+ }, /*#__PURE__*/_react.default.createElement(_forms.IconSelectItem, {
27
+ setColor: true,
28
+ bg: true,
29
+ visible: visible,
30
+ openModal: () => setVisible(true),
31
+ handleCancel: () => setVisible(false),
32
+ onChange: () => setVisible(false)
33
+ }));
34
+ }
35
+ //# sourceMappingURL=IconSelectFormItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IconSelectFormItem.js","names":["IconSelectFormItem","props","visible","setVisible","useState","name","label","required","message"],"sources":["../../../../../src/visual-property-form/components/IconSelect/IconSelectFormItem.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { Form } from \"antd\";\nimport { IconSelectProps, IconSelectItem } from \"@next-libs/forms\";\n\nexport function IconSelectFormItem(props: IconSelectProps): React.ReactElement {\n const [visible, setVisible] = useState(false);\n\n return (\n <Form.Item\n key={props.name}\n name={props.name}\n label={props.label}\n rules={[{ required: props.required, message: `请输入${props.name}` }]}\n >\n <IconSelectItem\n setColor={true}\n bg={true}\n visible={visible}\n openModal={() => setVisible(true)}\n handleCancel={() => setVisible(false)}\n onChange={() => setVisible(false)}\n />\n </Form.Item>\n );\n}\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AAEO,SAASA,kBAAT,CAA4BC,KAA5B,EAAwE;EAC7E,MAAM,CAACC,OAAD,EAAUC,UAAV,IAAwB,IAAAC,eAAA,EAAS,KAAT,CAA9B;EAEA,oBACE,6BAAC,UAAD,CAAM,IAAN;IACE,GAAG,EAAEH,KAAK,CAACI,IADb;IAEE,IAAI,EAAEJ,KAAK,CAACI,IAFd;IAGE,KAAK,EAAEJ,KAAK,CAACK,KAHf;IAIE,KAAK,EAAE,CAAC;MAAEC,QAAQ,EAAEN,KAAK,CAACM,QAAlB;MAA4BC,OAAO,EAAG,MAAKP,KAAK,CAACI,IAAK;IAAtD,CAAD;EAJT,gBAME,6BAAC,qBAAD;IACE,QAAQ,EAAE,IADZ;IAEE,EAAE,EAAE,IAFN;IAGE,OAAO,EAAEH,OAHX;IAIE,SAAS,EAAE,MAAMC,UAAU,CAAC,IAAD,CAJ7B;IAKE,YAAY,EAAE,MAAMA,UAAU,CAAC,KAAD,CALhC;IAME,QAAQ,EAAE,MAAMA,UAAU,CAAC,KAAD;EAN5B,EANF,CADF;AAiBD"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.MenuEditorItem = MenuEditorItem;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _antd = require("antd");
13
+
14
+ var _basicComponents = require("@next-libs/basic-components");
15
+
16
+ var _cmdbSdk = require("@next-sdk/cmdb-sdk");
17
+
18
+ function MenuEditorItem(props) {
19
+ const [options, setOptions] = (0, _react.useState)([]);
20
+
21
+ const getMenu = async () => {
22
+ const result = await (0, _cmdbSdk.InstanceApi_getDetail)("PROJECT_MICRO_APP", props.projectId, {
23
+ fields: "menus.menuId"
24
+ });
25
+ const options = result.menus.map(item => ({
26
+ value: item.menuId,
27
+ label: item.menuId
28
+ }));
29
+ setOptions(options);
30
+ };
31
+
32
+ const handleMenuSettingClick = () => {
33
+ props.menuSettingClick();
34
+ };
35
+
36
+ (0, _react.useEffect)(() => {
37
+ if (props.projectId) {
38
+ getMenu();
39
+ }
40
+ }, []);
41
+ return /*#__PURE__*/_react.default.createElement("div", {
42
+ style: {
43
+ display: "flex",
44
+ alignItems: "center"
45
+ }
46
+ }, /*#__PURE__*/_react.default.createElement(_antd.Form.Item, {
47
+ key: props.name,
48
+ name: props.name,
49
+ label: props.label,
50
+ rules: [{
51
+ required: props.required,
52
+ message: `请输入${props.name}`
53
+ }]
54
+ }, /*#__PURE__*/_react.default.createElement(_antd.Select, {
55
+ style: {
56
+ width: "300px"
57
+ },
58
+ options: options,
59
+ showSearch: true,
60
+ allowClear: true,
61
+ placeholder: "Select a menu id",
62
+ filterOption: (input, option) => option.label.toLocaleLowerCase().indexOf(input.toLocaleLowerCase()) >= 0 || option.value.toLocaleLowerCase().indexOf(input.toLocaleLowerCase()) >= 0
63
+ })), /*#__PURE__*/_react.default.createElement("div", {
64
+ style: {
65
+ fontSize: "18px",
66
+ marginTop: "10px",
67
+ marginLeft: "10px",
68
+ cursor: "pointer",
69
+ display: "inline-block"
70
+ }
71
+ }, /*#__PURE__*/_react.default.createElement(_antd.Tooltip, {
72
+ title: "\u914D\u7F6E\u83DC\u5355\u6570\u636E"
73
+ }, " ", /*#__PURE__*/_react.default.createElement(_basicComponents.GeneralIcon, {
74
+ icon: {
75
+ category: "app",
76
+ color: "blue",
77
+ icon: "launchpad-setting",
78
+ lib: "easyops"
79
+ },
80
+ onClick: handleMenuSettingClick
81
+ }))));
82
+ }
83
+ //# sourceMappingURL=MenuEditorItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuEditorItem.js","names":["MenuEditorItem","props","options","setOptions","useState","getMenu","result","InstanceApi_getDetail","projectId","fields","menus","map","item","value","menuId","label","handleMenuSettingClick","menuSettingClick","useEffect","display","alignItems","name","required","message","width","input","option","toLocaleLowerCase","indexOf","fontSize","marginTop","marginLeft","cursor","category","color","icon","lib"],"sources":["../../../../../src/visual-property-form/components/MenuEditor/MenuEditorItem.tsx"],"sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport { Form, Select, Tooltip } from \"antd\";\nimport { GeneralIcon } from \"@next-libs/basic-components\";\nimport { InstanceApi_getDetail } from \"@next-sdk/cmdb-sdk\";\n\ninterface MenuEditorItemProps {\n name?: string;\n label?: string | React.ReactElement;\n value?: string;\n required?: boolean;\n projectId?: string;\n menuSettingClick?: () => void;\n}\n\nexport function MenuEditorItem(props: MenuEditorItemProps): React.ReactElement {\n const [options, setOptions] = useState([]);\n\n const getMenu = async () => {\n const result = await InstanceApi_getDetail(\n \"PROJECT_MICRO_APP\",\n props.projectId,\n {\n fields: \"menus.menuId\",\n }\n );\n\n const options = result.menus.map((item: Record<string, any>) => ({\n value: item.menuId,\n label: item.menuId,\n }));\n setOptions(options);\n };\n\n const handleMenuSettingClick = () => {\n props.menuSettingClick();\n };\n\n useEffect(() => {\n if (props.projectId) {\n getMenu();\n }\n }, []);\n\n return (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n }}\n >\n <Form.Item\n key={props.name}\n name={props.name}\n label={props.label}\n rules={[{ required: props.required, message: `请输入${props.name}` }]}\n >\n <Select\n style={{\n width: \"300px\",\n }}\n options={options}\n showSearch\n allowClear\n placeholder=\"Select a menu id\"\n filterOption={(input, option) =>\n (option.label as string)\n .toLocaleLowerCase()\n .indexOf(input.toLocaleLowerCase()) >= 0 ||\n (option.value as string)\n .toLocaleLowerCase()\n .indexOf(input.toLocaleLowerCase()) >= 0\n }\n />\n </Form.Item>\n <div\n style={{\n fontSize: \"18px\",\n marginTop: \"10px\",\n marginLeft: \"10px\",\n cursor: \"pointer\",\n display: \"inline-block\",\n }}\n >\n <Tooltip title=\"配置菜单数据\">\n {\" \"}\n <GeneralIcon\n icon={{\n category: \"app\",\n color: \"blue\",\n icon: \"launchpad-setting\",\n lib: \"easyops\",\n }}\n onClick={handleMenuSettingClick}\n />\n </Tooltip>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAWO,SAASA,cAAT,CAAwBC,KAAxB,EAAwE;EAC7E,MAAM,CAACC,OAAD,EAAUC,UAAV,IAAwB,IAAAC,eAAA,EAAS,EAAT,CAA9B;;EAEA,MAAMC,OAAO,GAAG,YAAY;IAC1B,MAAMC,MAAM,GAAG,MAAM,IAAAC,8BAAA,EACnB,mBADmB,EAEnBN,KAAK,CAACO,SAFa,EAGnB;MACEC,MAAM,EAAE;IADV,CAHmB,CAArB;IAQA,MAAMP,OAAO,GAAGI,MAAM,CAACI,KAAP,CAAaC,GAAb,CAAkBC,IAAD,KAAgC;MAC/DC,KAAK,EAAED,IAAI,CAACE,MADmD;MAE/DC,KAAK,EAAEH,IAAI,CAACE;IAFmD,CAAhC,CAAjB,CAAhB;IAIAX,UAAU,CAACD,OAAD,CAAV;EACD,CAdD;;EAgBA,MAAMc,sBAAsB,GAAG,MAAM;IACnCf,KAAK,CAACgB,gBAAN;EACD,CAFD;;EAIA,IAAAC,gBAAA,EAAU,MAAM;IACd,IAAIjB,KAAK,CAACO,SAAV,EAAqB;MACnBH,OAAO;IACR;EACF,CAJD,EAIG,EAJH;EAMA,oBACE;IACE,KAAK,EAAE;MACLc,OAAO,EAAE,MADJ;MAELC,UAAU,EAAE;IAFP;EADT,gBAME,6BAAC,UAAD,CAAM,IAAN;IACE,GAAG,EAAEnB,KAAK,CAACoB,IADb;IAEE,IAAI,EAAEpB,KAAK,CAACoB,IAFd;IAGE,KAAK,EAAEpB,KAAK,CAACc,KAHf;IAIE,KAAK,EAAE,CAAC;MAAEO,QAAQ,EAAErB,KAAK,CAACqB,QAAlB;MAA4BC,OAAO,EAAG,MAAKtB,KAAK,CAACoB,IAAK;IAAtD,CAAD;EAJT,gBAME,6BAAC,YAAD;IACE,KAAK,EAAE;MACLG,KAAK,EAAE;IADF,CADT;IAIE,OAAO,EAAEtB,OAJX;IAKE,UAAU,MALZ;IAME,UAAU,MANZ;IAOE,WAAW,EAAC,kBAPd;IAQE,YAAY,EAAE,CAACuB,KAAD,EAAQC,MAAR,KACXA,MAAM,CAACX,KAAR,CACGY,iBADH,GAEGC,OAFH,CAEWH,KAAK,CAACE,iBAAN,EAFX,KAEyC,CAFzC,IAGCD,MAAM,CAACb,KAAR,CACGc,iBADH,GAEGC,OAFH,CAEWH,KAAK,CAACE,iBAAN,EAFX,KAEyC;EAd7C,EANF,CANF,eA8BE;IACE,KAAK,EAAE;MACLE,QAAQ,EAAE,MADL;MAELC,SAAS,EAAE,MAFN;MAGLC,UAAU,EAAE,MAHP;MAILC,MAAM,EAAE,SAJH;MAKLb,OAAO,EAAE;IALJ;EADT,gBASE,6BAAC,aAAD;IAAS,KAAK,EAAC;EAAf,GACG,GADH,eAEE,6BAAC,4BAAD;IACE,IAAI,EAAE;MACJc,QAAQ,EAAE,KADN;MAEJC,KAAK,EAAE,MAFH;MAGJC,IAAI,EAAE,mBAHF;MAIJC,GAAG,EAAE;IAJD,CADR;IAOE,OAAO,EAAEpB;EAPX,EAFF,CATF,CA9BF,CADF;AAuDD"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.supportMenuType = exports.supportBasicType = exports.groupI18nMap = exports.commonProps = exports.OTHER_FORM_ITEM_FIELD = void 0;
7
+ const groupI18nMap = {
8
+ basic: {
9
+ en: "Basic",
10
+ zh: "常用"
11
+ },
12
+ ui: {
13
+ en: "UI",
14
+ zh: "外观"
15
+ },
16
+ advanced: {
17
+ en: "Advanced",
18
+ zh: "高级"
19
+ },
20
+ basicFormItem: {
21
+ en: "Basic Form Item",
22
+ zh: "表单项常用"
23
+ },
24
+ advancedFormItem: {
25
+ en: "Advanced Form Item",
26
+ zh: "表单项高级"
27
+ },
28
+ other: {
29
+ en: "Other",
30
+ zh: "其他"
31
+ }
32
+ };
33
+ exports.groupI18nMap = groupI18nMap;
34
+ const supportBasicType = ["boolean", "number", "string", "string[]", "MenuIcon", "Color"];
35
+ exports.supportBasicType = supportBasicType;
36
+ const supportMenuType = ["Menu", "SidebarSubMenu"];
37
+ exports.supportMenuType = supportMenuType;
38
+ const OTHER_FORM_ITEM_FIELD = "others";
39
+ exports.OTHER_FORM_ITEM_FIELD = OTHER_FORM_ITEM_FIELD;
40
+ const commonProps = [{
41
+ name: "id",
42
+ type: "string",
43
+ description: "构件 ID",
44
+ group: "basic",
45
+ groupI18N: groupI18nMap
46
+ }, {
47
+ name: "style",
48
+ type: "Record<string, any>",
49
+ description: "构件样式",
50
+ group: "ui",
51
+ groupI18N: groupI18nMap
52
+ }];
53
+ exports.commonProps = commonProps;
54
+ //# sourceMappingURL=constant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constant.js","names":["groupI18nMap","basic","en","zh","ui","advanced","basicFormItem","advancedFormItem","other","supportBasicType","supportMenuType","OTHER_FORM_ITEM_FIELD","commonProps","name","type","description","group","groupI18N"],"sources":["../../../src/visual-property-form/constant.ts"],"sourcesContent":["import { PropertyType } from \"../interfaces\";\n\nexport const groupI18nMap = {\n basic: {\n en: \"Basic\",\n zh: \"常用\",\n },\n ui: {\n en: \"UI\",\n zh: \"外观\",\n },\n advanced: {\n en: \"Advanced\",\n zh: \"高级\",\n },\n basicFormItem: {\n en: \"Basic Form Item\",\n zh: \"表单项常用\",\n },\n advancedFormItem: {\n en: \"Advanced Form Item\",\n zh: \"表单项高级\",\n },\n other: {\n en: \"Other\",\n zh: \"其他\",\n },\n};\n\nexport const supportBasicType = [\n \"boolean\",\n \"number\",\n \"string\",\n \"string[]\",\n \"MenuIcon\",\n \"Color\",\n];\n\nexport const supportMenuType = [\"Menu\", \"SidebarSubMenu\"];\n\nexport const OTHER_FORM_ITEM_FIELD = \"others\";\n\nexport const commonProps: PropertyType[] = [\n {\n name: \"id\",\n type: \"string\",\n description: \"构件 ID\",\n group: \"basic\",\n groupI18N: groupI18nMap,\n },\n {\n name: \"style\",\n type: \"Record<string, any>\",\n description: \"构件样式\",\n group: \"ui\",\n groupI18N: groupI18nMap,\n },\n];\n"],"mappings":";;;;;;AAEO,MAAMA,YAAY,GAAG;EAC1BC,KAAK,EAAE;IACLC,EAAE,EAAE,OADC;IAELC,EAAE,EAAE;EAFC,CADmB;EAK1BC,EAAE,EAAE;IACFF,EAAE,EAAE,IADF;IAEFC,EAAE,EAAE;EAFF,CALsB;EAS1BE,QAAQ,EAAE;IACRH,EAAE,EAAE,UADI;IAERC,EAAE,EAAE;EAFI,CATgB;EAa1BG,aAAa,EAAE;IACbJ,EAAE,EAAE,iBADS;IAEbC,EAAE,EAAE;EAFS,CAbW;EAiB1BI,gBAAgB,EAAE;IAChBL,EAAE,EAAE,oBADY;IAEhBC,EAAE,EAAE;EAFY,CAjBQ;EAqB1BK,KAAK,EAAE;IACLN,EAAE,EAAE,OADC;IAELC,EAAE,EAAE;EAFC;AArBmB,CAArB;;AA2BA,MAAMM,gBAAgB,GAAG,CAC9B,SAD8B,EAE9B,QAF8B,EAG9B,QAH8B,EAI9B,UAJ8B,EAK9B,UAL8B,EAM9B,OAN8B,CAAzB;;AASA,MAAMC,eAAe,GAAG,CAAC,MAAD,EAAS,gBAAT,CAAxB;;AAEA,MAAMC,qBAAqB,GAAG,QAA9B;;AAEA,MAAMC,WAA2B,GAAG,CACzC;EACEC,IAAI,EAAE,IADR;EAEEC,IAAI,EAAE,QAFR;EAGEC,WAAW,EAAE,OAHf;EAIEC,KAAK,EAAE,OAJT;EAKEC,SAAS,EAAEjB;AALb,CADyC,EAQzC;EACEa,IAAI,EAAE,OADR;EAEEC,IAAI,EAAE,qBAFR;EAGEC,WAAW,EAAE,MAHf;EAIEC,KAAK,EAAE,IAJT;EAKEC,SAAS,EAAEjB;AALb,CARyC,CAApC"}
@@ -0,0 +1,204 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.calculateValue = calculateValue;
7
+ exports.extractCommonProps = extractCommonProps;
8
+ exports.groupByType = groupByType;
9
+ exports.isAdvanceMode = isAdvanceMode;
10
+ exports.isUseMenuParse = isUseMenuParse;
11
+ exports.isUseYamlParse = isUseYamlParse;
12
+ exports.matchNoramlMenuValue = matchNoramlMenuValue;
13
+ exports.mergeProperties = mergeProperties;
14
+ exports.processFormValue = processFormValue;
15
+ exports.yaml = yaml;
16
+ exports.yamlStringify = yamlStringify;
17
+
18
+ var _brickKit = require("@next-core/brick-kit");
19
+
20
+ var _interfaces = require("../interfaces");
21
+
22
+ var _jsYaml = require("js-yaml");
23
+
24
+ var _lodash = require("lodash");
25
+
26
+ var _constant = require("./constant");
27
+
28
+ function isAdvanceMode(value) {
29
+ if (typeof value === "string" && (value.startsWith("<%") || value.includes("${"))) {
30
+ return true;
31
+ }
32
+
33
+ return false;
34
+ }
35
+
36
+ function mergeProperties(propertyList = [], brickProperties = {}) {
37
+ return propertyList === null || propertyList === void 0 ? void 0 : propertyList.map(item => ({ ...item,
38
+ value: brickProperties === null || brickProperties === void 0 ? void 0 : brickProperties[item.name],
39
+ mode: isAdvanceMode(brickProperties === null || brickProperties === void 0 ? void 0 : brickProperties[item.name]) ? _interfaces.ItemModeType.Advanced : _interfaces.ItemModeType.Normal
40
+ }));
41
+ }
42
+
43
+ function yamlStringify(value, indent = 2) {
44
+ return (0, _jsYaml.safeDump)(value, {
45
+ indent,
46
+ schema: _jsYaml.JSON_SCHEMA,
47
+ skipInvalid: true,
48
+ noRefs: true,
49
+ noCompatMode: true
50
+ });
51
+ }
52
+
53
+ function yaml(value) {
54
+ return (0, _jsYaml.safeLoad)(value, {
55
+ schema: _jsYaml.JSON_SCHEMA,
56
+ json: true
57
+ });
58
+ }
59
+
60
+ function matchNoramlMenuValue(value) {
61
+ if (typeof value === "string") {
62
+ var _value$match, _value$match$;
63
+
64
+ const reg = /<% APP\.getMenu\((.*)\) %>/;
65
+ return ((_value$match = value.match(reg)) === null || _value$match === void 0 ? void 0 : (_value$match$ = _value$match[1]) === null || _value$match$ === void 0 ? void 0 : _value$match$.replace(/'|"/g, "")) || value;
66
+ }
67
+
68
+ return value;
69
+ }
70
+
71
+ function calcMenuValue(value) {
72
+ if (typeof value === "string") {
73
+ if (value.startsWith("<%")) {
74
+ return value;
75
+ }
76
+
77
+ return `<% APP.getMenu('${value}') %>`;
78
+ }
79
+
80
+ return value;
81
+ }
82
+
83
+ function calculateValue(propertyList = [], brickProperties = {}, typeList = []) {
84
+ const othersValue = {};
85
+
86
+ for (const [key, value] of Object.entries(brickProperties)) {
87
+ const find = propertyList.find(item => item.name === key);
88
+
89
+ if (!find) {
90
+ othersValue[key] = value;
91
+ }
92
+ }
93
+
94
+ const processValue = propertyList.reduce((obj, item) => {
95
+ const v = brickProperties[item.name];
96
+ obj[item.name] = v;
97
+
98
+ if (v !== undefined) {
99
+ if (!_constant.supportBasicType.concat(_constant.supportMenuType).includes(item.type)) {
100
+ obj[item.name] = yamlStringify(v);
101
+ }
102
+
103
+ if (_constant.supportMenuType.includes(item.type)) {
104
+ const selected = typeList.find(typeItem => typeItem.name === item.name);
105
+
106
+ if ((selected === null || selected === void 0 ? void 0 : selected.mode) === _interfaces.ItemModeType.Advanced) {
107
+ obj[item.name] = v;
108
+ } else {
109
+ obj[item.name] = matchNoramlMenuValue(v);
110
+ }
111
+ }
112
+ }
113
+
114
+ return obj;
115
+ }, {});
116
+ return { ...processValue,
117
+ [_constant.OTHER_FORM_ITEM_FIELD]: (0, _lodash.isEmpty)(othersValue) ? "" : yamlStringify(othersValue)
118
+ };
119
+ }
120
+ /**
121
+ * @description 判断是否用使用 yaml 把用户输入解析成 JSON 的模式,当前只有以下情况下会进行解析,其他情况不对数据进行处理
122
+ * 1. 当前属性的类型不是内置支持的类型
123
+ * 2. 当前属性虽然是支持的类型,但是当前切换到高级模式编辑
124
+ * 3. 不是构件本身申明的属性,为 html 共有的通用属性,目前统一放在 others 的编辑器中
125
+ * @param field 字段值
126
+ * @param typeList 属性列表包含每个属性的类型和当前编辑模式
127
+ * @return boolean
128
+ */
129
+
130
+
131
+ function isUseYamlParse(field, typeList) {
132
+ if (typeof field.value !== "string") return false;
133
+ if (field.key === _constant.OTHER_FORM_ITEM_FIELD) return true;
134
+ const find = typeList === null || typeList === void 0 ? void 0 : typeList.find(item => item.name === field.key);
135
+
136
+ if (find) {
137
+ if (_constant.supportMenuType.includes(find.type) && find.mode !== _interfaces.ItemModeType.Advanced) return false;
138
+
139
+ const isBasicType = _constant.supportBasicType.includes(find.type);
140
+
141
+ if (isBasicType && find.mode === _interfaces.ItemModeType.Advanced) return true;
142
+ if (!isBasicType) return true;
143
+ }
144
+
145
+ return false;
146
+ }
147
+
148
+ function isUseMenuParse(field, typeList) {
149
+ const item = typeList.find(item => item.name === field.key);
150
+
151
+ if (_constant.supportMenuType.includes(item === null || item === void 0 ? void 0 : item.type)) {
152
+ return true;
153
+ }
154
+
155
+ return false;
156
+ }
157
+
158
+ function processFormValue(values = {}, typeList) {
159
+ const formData = {};
160
+
161
+ for (const [key, value] of Object.entries(values)) {
162
+ if (isUseYamlParse({
163
+ key,
164
+ value
165
+ }, typeList)) {
166
+ formData[key] = yaml(value);
167
+ } else if (isUseMenuParse({
168
+ key,
169
+ value
170
+ }, typeList)) {
171
+ formData[key] = calcMenuValue(value);
172
+ } else {
173
+ formData[key] = value;
174
+ }
175
+ }
176
+
177
+ return { ...(0, _lodash.omit)(formData, _constant.OTHER_FORM_ITEM_FIELD),
178
+ ...((0, _lodash.isEmpty)(formData[_constant.OTHER_FORM_ITEM_FIELD]) ? {} : formData[_constant.OTHER_FORM_ITEM_FIELD])
179
+ };
180
+ }
181
+
182
+ function groupByType(typeList = []) {
183
+ const normals = typeList.filter(item => item.group !== "other");
184
+ const others = typeList.filter(item => item.group === "other");
185
+ return Object.entries((0, _lodash.groupBy)(normals.concat(others), item => {
186
+ const group = item.group || "basic";
187
+ const groupI18N = { ..._constant.groupI18nMap,
188
+ ...item.groupI18N
189
+ };
190
+ const i18nData = groupI18N && groupI18N[group];
191
+
192
+ if (i18nData) {
193
+ return (0, _brickKit.i18nText)(i18nData);
194
+ }
195
+
196
+ return group;
197
+ }));
198
+ }
199
+
200
+ function extractCommonProps(typeList) {
201
+ if ((0, _lodash.isEmpty)(typeList)) return [];
202
+ return _constant.commonProps.concat(typeList);
203
+ }
204
+ //# sourceMappingURL=processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processor.js","names":["isAdvanceMode","value","startsWith","includes","mergeProperties","propertyList","brickProperties","map","item","name","mode","ItemModeType","Advanced","Normal","yamlStringify","indent","safeDump","schema","JSON_SCHEMA","skipInvalid","noRefs","noCompatMode","yaml","safeLoad","json","matchNoramlMenuValue","reg","match","replace","calcMenuValue","calculateValue","typeList","othersValue","key","Object","entries","find","processValue","reduce","obj","v","undefined","supportBasicType","concat","supportMenuType","type","selected","typeItem","OTHER_FORM_ITEM_FIELD","isEmpty","isUseYamlParse","field","isBasicType","isUseMenuParse","processFormValue","values","formData","omit","groupByType","normals","filter","group","others","groupBy","groupI18N","groupI18nMap","i18nData","i18nText","extractCommonProps","commonProps"],"sources":["../../../src/visual-property-form/processor.ts"],"sourcesContent":["import { i18nText } from \"@next-core/brick-kit\";\nimport {\n PropertyType,\n UnionPropertyType,\n BrickProperties,\n ItemModeType,\n} from \"../interfaces\";\nimport { safeDump, JSON_SCHEMA, safeLoad } from \"js-yaml\";\nimport { omit, isEmpty, groupBy } from \"lodash\";\nimport {\n supportBasicType,\n supportMenuType,\n OTHER_FORM_ITEM_FIELD,\n commonProps,\n groupI18nMap,\n} from \"./constant\";\n\nexport function isAdvanceMode(value: unknown): boolean {\n if (\n typeof value === \"string\" &&\n (value.startsWith(\"<%\") || value.includes(\"${\"))\n ) {\n return true;\n }\n\n return false;\n}\n\nexport function mergeProperties(\n propertyList: PropertyType[] = [],\n brickProperties: BrickProperties = {}\n): UnionPropertyType[] {\n return propertyList?.map((item) => ({\n ...item,\n value: brickProperties?.[item.name],\n mode: isAdvanceMode(brickProperties?.[item.name])\n ? ItemModeType.Advanced\n : ItemModeType.Normal,\n }));\n}\n\nexport function yamlStringify(value: unknown, indent = 2): string {\n return safeDump(value, {\n indent,\n schema: JSON_SCHEMA,\n skipInvalid: true,\n noRefs: true,\n noCompatMode: true,\n });\n}\n\nexport function yaml(value: string): any {\n return safeLoad(value, { schema: JSON_SCHEMA, json: true });\n}\n\nexport function matchNoramlMenuValue(value: unknown): unknown {\n if (typeof value === \"string\") {\n const reg = /<% APP\\.getMenu\\((.*)\\) %>/;\n return value.match(reg)?.[1]?.replace(/'|\"/g, \"\") || value;\n }\n return value;\n}\n\nfunction calcMenuValue(value: string): string {\n if (typeof value === \"string\") {\n if (value.startsWith(\"<%\")) {\n return value;\n }\n return `<% APP.getMenu('${value}') %>`;\n }\n return value;\n}\n\nexport function calculateValue(\n propertyList: PropertyType[] = [],\n brickProperties: BrickProperties = {},\n typeList: UnionPropertyType[] = []\n): Record<string, any> {\n const othersValue: Record<string, any> = {};\n for (const [key, value] of Object.entries(brickProperties)) {\n const find = propertyList.find((item) => item.name === key);\n if (!find) {\n othersValue[key] = value;\n }\n }\n\n const processValue = propertyList.reduce((obj: any, item) => {\n const v = brickProperties[item.name];\n obj[item.name] = v;\n if (v !== undefined) {\n if (\n !supportBasicType.concat(supportMenuType).includes(item.type as string)\n ) {\n obj[item.name] = yamlStringify(v);\n }\n\n if (supportMenuType.includes(item.type as string)) {\n const selected = typeList.find(\n (typeItem) => typeItem.name === item.name\n );\n if (selected?.mode === ItemModeType.Advanced) {\n obj[item.name] = v;\n } else {\n obj[item.name] = matchNoramlMenuValue(v);\n }\n }\n }\n return obj;\n }, {});\n\n return {\n ...processValue,\n [OTHER_FORM_ITEM_FIELD]: isEmpty(othersValue)\n ? \"\"\n : yamlStringify(othersValue),\n };\n}\n\n/**\n * @description 判断是否用使用 yaml 把用户输入解析成 JSON 的模式,当前只有以下情况下会进行解析,其他情况不对数据进行处理\n * 1. 当前属性的类型不是内置支持的类型\n * 2. 当前属性虽然是支持的类型,但是当前切换到高级模式编辑\n * 3. 不是构件本身申明的属性,为 html 共有的通用属性,目前统一放在 others 的编辑器中\n * @param field 字段值\n * @param typeList 属性列表包含每个属性的类型和当前编辑模式\n * @return boolean\n */\n\nexport function isUseYamlParse(\n field: { key: string; value: any },\n typeList: UnionPropertyType[]\n): boolean {\n if (typeof field.value !== \"string\") return false;\n\n if (field.key === OTHER_FORM_ITEM_FIELD) return true;\n\n const find = typeList?.find((item) => item.name === field.key);\n\n if (find) {\n if (\n supportMenuType.includes(find.type as string) &&\n find.mode !== ItemModeType.Advanced\n )\n return false;\n\n const isBasicType = supportBasicType.includes(find.type as string);\n\n if (isBasicType && find.mode === ItemModeType.Advanced) return true;\n\n if (!isBasicType) return true;\n }\n\n return false;\n}\n\nexport function isUseMenuParse(\n field: { key: string; value: any },\n typeList: UnionPropertyType[]\n): boolean {\n const item = typeList.find((item) => item.name === field.key);\n if (supportMenuType.includes(item?.type as string)) {\n return true;\n }\n return false;\n}\n\nexport function processFormValue(\n values = {},\n typeList: UnionPropertyType[]\n): Record<string, any> {\n const formData: Record<string, any> = {};\n for (const [key, value] of Object.entries(values)) {\n if (isUseYamlParse({ key, value }, typeList)) {\n formData[key] = yaml(value as any);\n } else if (isUseMenuParse({ key, value }, typeList)) {\n formData[key] = calcMenuValue(value as string);\n } else {\n formData[key] = value;\n }\n }\n\n return {\n ...omit(formData, OTHER_FORM_ITEM_FIELD),\n ...(isEmpty(formData[OTHER_FORM_ITEM_FIELD])\n ? {}\n : formData[OTHER_FORM_ITEM_FIELD]),\n };\n}\n\nexport function groupByType(\n typeList: UnionPropertyType[] = []\n): Array<[string, UnionPropertyType[]]> {\n const normals = typeList.filter((item) => item.group !== \"other\");\n const others = typeList.filter((item) => item.group === \"other\");\n\n return Object.entries(\n groupBy(normals.concat(others), (item) => {\n const group = item.group || \"basic\";\n const groupI18N: Record<string, any> = {\n ...groupI18nMap,\n ...item.groupI18N,\n };\n const i18nData = groupI18N && groupI18N[group];\n if (i18nData) {\n return i18nText(i18nData);\n }\n\n return group;\n })\n );\n}\n\nexport function extractCommonProps(typeList: PropertyType[]): PropertyType[] {\n if (isEmpty(typeList)) return [];\n\n return commonProps.concat(typeList);\n}\n"],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from "./visual-property-form/VisualPropertyForm";
2
+ export * from "./interfaces";
3
+ export * from "./visual-property-form/processor";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":["export * from \"./visual-property-form/VisualPropertyForm\";\nexport * from \"./interfaces\";\nexport * from \"./visual-property-form/processor\";\n"],"mappings":"AAAA,cAAc,2CAAd;AACA,cAAc,cAAd;AACA,cAAc,kCAAd"}
@@ -0,0 +1,14 @@
1
+ export var Required;
2
+
3
+ (function (Required) {
4
+ Required["True"] = "true";
5
+ Required["False"] = "false";
6
+ })(Required || (Required = {}));
7
+
8
+ export var ItemModeType;
9
+
10
+ (function (ItemModeType) {
11
+ ItemModeType["Normal"] = "normal";
12
+ ItemModeType["Advanced"] = "advanced";
13
+ })(ItemModeType || (ItemModeType = {}));
14
+ //# sourceMappingURL=brick-visualization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brick-visualization.js","names":["Required","ItemModeType"],"sources":["../../../src/interfaces/brick-visualization.ts"],"sourcesContent":["import { FormInstance } from \"antd/lib/form\";\n\nexport type FormItemType =\n | boolean\n | string\n | string[]\n | number\n | Record<string, any>;\n\nexport enum Required {\n True = \"true\",\n False = \"false\",\n}\n\nexport enum ItemModeType {\n Normal = \"normal\",\n Advanced = \"advanced\",\n}\n\nexport interface PropertyType {\n type: FormItemType;\n name: string;\n required?: Required;\n description?: string;\n default?: string;\n group?: string;\n groupI18N?: Record<string, { [language: string]: string }>;\n}\n\nexport interface UnionPropertyType extends PropertyType {\n mode?: ItemModeType;\n value?: any;\n jsonSchema?: Record<string, any>;\n schemaRef?: string;\n}\n\nexport type BrickProperties = Record<string, any>;\n\nexport interface visualFormUtils extends Partial<FormInstance> {\n resetPropertyFields: (\n typeList: PropertyType[],\n properties: BrickProperties\n ) => void;\n getCurTypeList: () => UnionPropertyType[];\n}\n"],"mappings":"AASA,WAAYA,QAAZ;;WAAYA,Q;EAAAA,Q;EAAAA,Q;GAAAA,Q,KAAAA,Q;;AAKZ,WAAYC,YAAZ;;WAAYA,Y;EAAAA,Y;EAAAA,Y;GAAAA,Y,KAAAA,Y"}
@@ -0,0 +1,2 @@
1
+ export * from "./brick-visualization";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/interfaces/index.ts"],"sourcesContent":["export * from \"./brick-visualization\";\n"],"mappings":"AAAA,cAAc,uBAAd"}