@luck-design-biz/luckda 1.0.2-6 → 1.0.2-8

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 (86) hide show
  1. package/es/locales/zh-CN.js +3 -1
  2. package/es/locales/zh-CN.js.map +1 -1
  3. package/es/lowcode/engine/meta/cardlist.props.json +3 -5
  4. package/es/lowcode/engine/meta/fielddate.props.json +0 -1
  5. package/es/lowcode/engine/meta/fieldeditor.props.json +0 -1
  6. package/es/lowcode/engine/meta/fieldgroup.props.json +0 -1
  7. package/es/lowcode/engine/meta/fieldyear.props.json +0 -1
  8. package/es/lowcode/engine/meta/form.props.json +2 -18
  9. package/es/lowcode/engine/meta/grouptree.props.json +0 -1
  10. package/es/lowcode/engine/meta/jsx.props.default.json +1 -2
  11. package/es/lowcode/engine/meta/jsx.props.json +4 -3
  12. package/es/lowcode/engine/meta/section.props.json +2 -2
  13. package/es/lowcode/engine/meta/table.props.json +0 -7
  14. package/es/lowcode/engine/meta/tabs.props.json +1 -1
  15. package/es/lowcode/engine/meta/tree.props.json +1 -5
  16. package/es/lowcode/painter/components/field-setting/SettingUI.js +1 -1
  17. package/es/lowcode/painter/components/field-setting/SettingUI.js.map +1 -1
  18. package/es/lowcode/painter/panel-section/IconConditionSelector.js +0 -1
  19. package/es/lowcode/painter/panel-section/IconConditionSelector.js.map +1 -1
  20. package/es/lowcode/painter/panel-section/JSEditor/ToolBar.js +109 -0
  21. package/es/lowcode/painter/panel-section/JSEditor/ToolBar.js.map +1 -0
  22. package/es/lowcode/painter/panel-section/JSEditor/index.js +130 -0
  23. package/es/lowcode/painter/panel-section/JSEditor/index.js.map +1 -0
  24. package/es/lowcode/view/ErrorBoundary.js +3 -3
  25. package/es/lowcode/view/ErrorBoundary.js.map +1 -1
  26. package/es/lowcode/view/lc-components/CardList/meta.json +3 -5
  27. package/es/lowcode/view/lc-components/FieldDate/meta.json +0 -1
  28. package/es/lowcode/view/lc-components/FieldEditor/meta.json +0 -1
  29. package/es/lowcode/view/lc-components/FieldGroup/meta.json +0 -1
  30. package/es/lowcode/view/lc-components/FieldYear/meta.json +0 -1
  31. package/es/lowcode/view/lc-components/Form/meta.json +2 -18
  32. package/es/lowcode/view/lc-components/GroupTree/meta.json +0 -1
  33. package/es/lowcode/view/lc-components/JSX/RuntimeComp.js +2 -0
  34. package/es/lowcode/view/lc-components/JSX/RuntimeComp.js.map +1 -1
  35. package/es/lowcode/view/lc-components/JSX/meta.json +4 -3
  36. package/es/lowcode/view/lc-components/Section/meta.json +2 -2
  37. package/es/lowcode/view/lc-components/Table/meta.json +0 -7
  38. package/es/lowcode/view/lc-components/Tabs/meta.json +1 -1
  39. package/es/lowcode/view/lc-components/Tree/meta.json +1 -5
  40. package/es/lowcode/view/lc-components/Wrapper.js +2 -0
  41. package/es/lowcode/view/lc-components/Wrapper.js.map +1 -1
  42. package/lib/locales/zh-CN.js +3 -1
  43. package/lib/locales/zh-CN.js.map +1 -1
  44. package/lib/lowcode/engine/meta/cardlist.props.json +3 -5
  45. package/lib/lowcode/engine/meta/fielddate.props.json +0 -1
  46. package/lib/lowcode/engine/meta/fieldeditor.props.json +0 -1
  47. package/lib/lowcode/engine/meta/fieldgroup.props.json +0 -1
  48. package/lib/lowcode/engine/meta/fieldyear.props.json +0 -1
  49. package/lib/lowcode/engine/meta/form.props.json +2 -18
  50. package/lib/lowcode/engine/meta/grouptree.props.json +0 -1
  51. package/lib/lowcode/engine/meta/jsx.props.default.json +1 -2
  52. package/lib/lowcode/engine/meta/jsx.props.json +4 -3
  53. package/lib/lowcode/engine/meta/section.props.json +2 -2
  54. package/lib/lowcode/engine/meta/table.props.json +0 -7
  55. package/lib/lowcode/engine/meta/tabs.props.json +1 -1
  56. package/lib/lowcode/engine/meta/tree.props.json +1 -5
  57. package/lib/lowcode/painter/components/field-setting/SettingUI.js +1 -1
  58. package/lib/lowcode/painter/components/field-setting/SettingUI.js.map +1 -1
  59. package/lib/lowcode/painter/panel-section/IconConditionSelector.js +0 -1
  60. package/lib/lowcode/painter/panel-section/IconConditionSelector.js.map +1 -1
  61. package/lib/lowcode/painter/panel-section/JSEditor/ToolBar.js +116 -0
  62. package/lib/lowcode/painter/panel-section/JSEditor/ToolBar.js.map +1 -0
  63. package/lib/lowcode/painter/panel-section/{JSEditor.js → JSEditor/index.js} +64 -10
  64. package/lib/lowcode/painter/panel-section/JSEditor/index.js.map +1 -0
  65. package/lib/lowcode/view/ErrorBoundary.js +3 -3
  66. package/lib/lowcode/view/ErrorBoundary.js.map +1 -1
  67. package/lib/lowcode/view/lc-components/CardList/meta.json +3 -5
  68. package/lib/lowcode/view/lc-components/FieldDate/meta.json +0 -1
  69. package/lib/lowcode/view/lc-components/FieldEditor/meta.json +0 -1
  70. package/lib/lowcode/view/lc-components/FieldGroup/meta.json +0 -1
  71. package/lib/lowcode/view/lc-components/FieldYear/meta.json +0 -1
  72. package/lib/lowcode/view/lc-components/Form/meta.json +2 -18
  73. package/lib/lowcode/view/lc-components/GroupTree/meta.json +0 -1
  74. package/lib/lowcode/view/lc-components/JSX/RuntimeComp.js +2 -0
  75. package/lib/lowcode/view/lc-components/JSX/RuntimeComp.js.map +1 -1
  76. package/lib/lowcode/view/lc-components/JSX/meta.json +4 -3
  77. package/lib/lowcode/view/lc-components/Section/meta.json +2 -2
  78. package/lib/lowcode/view/lc-components/Table/meta.json +0 -7
  79. package/lib/lowcode/view/lc-components/Tabs/meta.json +1 -1
  80. package/lib/lowcode/view/lc-components/Tree/meta.json +1 -5
  81. package/lib/lowcode/view/lc-components/Wrapper.js +2 -0
  82. package/lib/lowcode/view/lc-components/Wrapper.js.map +1 -1
  83. package/package.json +1 -1
  84. package/es/lowcode/painter/panel-section/JSEditor.js +0 -76
  85. package/es/lowcode/painter/panel-section/JSEditor.js.map +0 -1
  86. package/lib/lowcode/painter/panel-section/JSEditor.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_lodash","_ahooks","_antd","_utils","_ListEditor","_Icon","_interopRequireDefault","_IconSelector","_JSEditor","_I18N_PREFIX_","IconConditionSelector","_ref","defaultValue","onChange","defaultCode","_useState","useState","cloneDeep","_useState2","_slicedToArray2","default","list","setList","handleChange","useMemoizedFn","type","index","value","_list","_objectSpread2","icon","condition","splice","renderItemRight","item","createElement","Fragment","Tooltip","title","formatMessage","id","label","mustConfirm","Icon","style","marginRight","cursor","onClick","width","padding","ListEditor","addText","concat","handleAdd","map","ListEditorItem","sortable","left","Popover","placement","content","trigger","right","_default","exports"],"sources":["../../../../luckda/lowcode/painter/panel-section/IconConditionSelector.jsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { cloneDeep } from 'lodash';\nimport { useMemoizedFn } from 'ahooks';\nimport { Tooltip, Icon, Popover } from 'luck-design/antd';\nimport { formatMessage } from '@luck-design-biz/base/utils';\nimport { ListEditor, ListEditorItem } from '../components/ListEditor';\nimport IconChoice from './Icon';\nimport IconSelector from './IconSelector';\nimport JSEditor from './JSEditor';\n\nconst _I18N_PREFIX_ = 'luckda.lowcode.painter.panel-section.iconConditionSelector';\n\nconst IconConditionSelector = ({ defaultValue, onChange, defaultCode }) => {\n\n\tconst [list, setList] = useState(cloneDeep(defaultValue));\n\n\tconst handleChange = useMemoizedFn((type, index, value) => {\n\t\tconst _list = cloneDeep(list);\n\t\tswitch (type) {\n\t\t\tcase 'icon':\n\t\t\t\t_list[index] = { ..._list[index], icon: value };\n\t\t\t\tbreak;\n\t\t\tcase 'code':\n\t\t\t\t_list[index] = { ..._list[index], condition: value };\n\t\t\t\tbreak;\n\t\t\tcase 'delete':\n\t\t\t\t_list.splice(index, 1);\n\t\t\t\tbreak;\n\t\t\tdefault: ;\n\t\t}\n\t\tsetList(_list);\n\t\tonChange(_list);\n\t})\n\n\tconst renderItemRight = useMemoizedFn((item, index) => (\n\t\t<>\n\t\t\t<Tooltip\n\t\t\t\ttitle={formatMessage({ id: 'luckda.lowcode.painter.bindCondition', label: '绑定条件' })}\n\t\t\t>\n\t\t\t\t<JSEditor mustConfirm defaultCode={defaultCode} onChange={(value) => handleChange('code', index, value)}>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ttype=\"paper-clip\"\n\t\t\t\t\t\tstyle={{ marginRight: '8px', cursor: 'pointer' }}\n\t\t\t\t\t/>\n\t\t\t\t</JSEditor>\n\t\t\t</Tooltip>\n\t\t\t<Tooltip title={formatMessage({ id: 'luckda.lowcode.painter.delete', label: '删除' })}>\n\t\t\t\t<Icon\n\t\t\t\t\ttype=\"delete\"\n\t\t\t\t\tstyle={{ marginRight: '8px', cursor: 'pointer' }}\n\t\t\t\t\tonClick={() => handleChange('delete', index)}\n\t\t\t\t/>\n\t\t\t</Tooltip>\n\t\t</>\n\t));\n\n\treturn (\n\t\t<div style={{ width: '100%', padding: '0 16px' }}>\n\t\t\t<ListEditor\n\t\t\t\taddText={formatMessage({ id: `${_I18N_PREFIX_}.add`, label: '添加条件' })}\n\t\t\t\thandleAdd={() => {\n\t\t\t\t\tconst _list = list.concat([{}]);\n\t\t\t\t\tsetList(_list);\n\t\t\t\t\tonChange(_list);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{list.map((item, index) => (\n\t\t\t\t\t<ListEditorItem\n\t\t\t\t\t\tsortable={false}\n\t\t\t\t\t\tleft={(\n\t\t\t\t\t\t\t<Popover\n\t\t\t\t\t\t\t\tplacement=\"left\"\n\t\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\t\t<IconSelector\n\t\t\t\t\t\t\t\t\t\tvalue={item.icon}\n\t\t\t\t\t\t\t\t\t\tonChange={(value) => handleChange('icon', index, value)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttrigger='click'\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<IconChoice value={item.icon} />\n\t\t\t\t\t\t\t</Popover>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tright={renderItemRight(item, index)}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</ListEditor>\n\t\t</div>\n\t);\n}\nexport default IconConditionSelector;"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_lodash","_ahooks","_antd","_utils","_ListEditor","_Icon","_interopRequireDefault","_IconSelector","_JSEditor","_I18N_PREFIX_","IconConditionSelector","_ref","defaultValue","onChange","defaultCode","_useState","useState","cloneDeep","_useState2","_slicedToArray2","default","list","setList","handleChange","useMemoizedFn","type","index","value","_list","_objectSpread2","icon","condition","splice","renderItemRight","item","createElement","Fragment","Tooltip","title","formatMessage","id","label","Icon","style","marginRight","cursor","onClick","width","padding","ListEditor","addText","concat","handleAdd","map","ListEditorItem","sortable","left","Popover","placement","content","trigger","right","_default","exports"],"sources":["../../../../luckda/lowcode/painter/panel-section/IconConditionSelector.jsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { cloneDeep } from 'lodash';\nimport { useMemoizedFn } from 'ahooks';\nimport { Tooltip, Icon, Popover } from 'luck-design/antd';\nimport { formatMessage } from '@luck-design-biz/base/utils';\nimport { ListEditor, ListEditorItem } from '../components/ListEditor';\nimport IconChoice from './Icon';\nimport IconSelector from './IconSelector';\nimport JSEditor from './JSEditor';\n\nconst _I18N_PREFIX_ = 'luckda.lowcode.painter.panel-section.iconConditionSelector';\n\nconst IconConditionSelector = ({ defaultValue, onChange, defaultCode }) => {\n\n\tconst [list, setList] = useState(cloneDeep(defaultValue));\n\n\tconst handleChange = useMemoizedFn((type, index, value) => {\n\t\tconst _list = cloneDeep(list);\n\t\tswitch (type) {\n\t\t\tcase 'icon':\n\t\t\t\t_list[index] = { ..._list[index], icon: value };\n\t\t\t\tbreak;\n\t\t\tcase 'code':\n\t\t\t\t_list[index] = { ..._list[index], condition: value };\n\t\t\t\tbreak;\n\t\t\tcase 'delete':\n\t\t\t\t_list.splice(index, 1);\n\t\t\t\tbreak;\n\t\t\tdefault: ;\n\t\t}\n\t\tsetList(_list);\n\t\tonChange(_list);\n\t})\n\n\tconst renderItemRight = useMemoizedFn((item, index) => (\n\t\t<>\n\t\t\t<Tooltip\n\t\t\t\ttitle={formatMessage({ id: 'luckda.lowcode.painter.bindCondition', label: '绑定条件' })}\n\t\t\t>\n\t\t\t\t<JSEditor defaultCode={defaultCode} onChange={(value) => handleChange('code', index, value)}>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ttype=\"paper-clip\"\n\t\t\t\t\t\tstyle={{ marginRight: '8px', cursor: 'pointer' }}\n\t\t\t\t\t/>\n\t\t\t\t</JSEditor>\n\t\t\t</Tooltip>\n\t\t\t<Tooltip title={formatMessage({ id: 'luckda.lowcode.painter.delete', label: '删除' })}>\n\t\t\t\t<Icon\n\t\t\t\t\ttype=\"delete\"\n\t\t\t\t\tstyle={{ marginRight: '8px', cursor: 'pointer' }}\n\t\t\t\t\tonClick={() => handleChange('delete', index)}\n\t\t\t\t/>\n\t\t\t</Tooltip>\n\t\t</>\n\t));\n\n\treturn (\n\t\t<div style={{ width: '100%', padding: '0 16px' }}>\n\t\t\t<ListEditor\n\t\t\t\taddText={formatMessage({ id: `${_I18N_PREFIX_}.add`, label: '添加条件' })}\n\t\t\t\thandleAdd={() => {\n\t\t\t\t\tconst _list = list.concat([{}]);\n\t\t\t\t\tsetList(_list);\n\t\t\t\t\tonChange(_list);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{list.map((item, index) => (\n\t\t\t\t\t<ListEditorItem\n\t\t\t\t\t\tsortable={false}\n\t\t\t\t\t\tleft={(\n\t\t\t\t\t\t\t<Popover\n\t\t\t\t\t\t\t\tplacement=\"left\"\n\t\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\t\t<IconSelector\n\t\t\t\t\t\t\t\t\t\tvalue={item.icon}\n\t\t\t\t\t\t\t\t\t\tonChange={(value) => handleChange('icon', index, value)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttrigger='click'\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<IconChoice value={item.icon} />\n\t\t\t\t\t\t\t</Popover>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tright={renderItemRight(item, index)}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</ListEditor>\n\t\t</div>\n\t);\n}\nexport default IconConditionSelector;"],"mappings":"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"}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _antd = require("luck-design/antd");
11
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
12
+ var _ahooks = require("ahooks");
13
+ var _ContextProvider = require("../../../engine/provider/ContextProvider");
14
+ var Wrapper = _styledComponents.default.div.withConfig({
15
+ displayName: "Wrapper",
16
+ componentId: "luckda-6530__sc-fxe9dl-0"
17
+ })(["width:300px;height:100%;padding-right:8px;overflow-y:auto;"]);
18
+ var Collapse = (0, _styledComponents.default)(_antd.Collapse).withConfig({
19
+ displayName: "Collapse",
20
+ componentId: "luckda-6530__sc-fxe9dl-1"
21
+ })([".ant-collapse-content-box{padding:4px 6px;}"]);
22
+ var ListItem = (0, _styledComponents.default)(_antd.List.Item).withConfig({
23
+ displayName: "ListItem",
24
+ componentId: "luckda-6530__sc-fxe9dl-2"
25
+ })(["cursor:pointer;border-radius:4px;padding:8px 4px;&:hover{background:var(--ant-select-selection-color);}"]);
26
+ var ToolBar = function ToolBar(_ref) {
27
+ var _onClick = _ref.onClick;
28
+ var ctx = (0, _ContextProvider.useContext)();
29
+ var meta = (0, _ahooks.useCreation)(function () {
30
+ return [{
31
+ key: 'instance',
32
+ label: '组件实例',
33
+ children: ctx.componentList.map(function (_ref2) {
34
+ var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
35
+ _id = _ref3[0],
36
+ _comp = _ref3[1];
37
+ return {
38
+ key: _id,
39
+ label: "".concat(_comp.name, "(").concat(_id, ")"),
40
+ text: "ctx.$('".concat(_id, "')")
41
+ };
42
+ })
43
+ }, {
44
+ key: 'ctx',
45
+ label: '上下文',
46
+ group: [{
47
+ key: 'common',
48
+ label: '通用',
49
+ children: [{
50
+ key: 'apiprefix',
51
+ label: 'service api前缀',
52
+ text: 'ctx.API_PREFIX'
53
+ }, {
54
+ key: 'primarykey',
55
+ label: '主键key',
56
+ text: 'ctx.PRIMARY_KEY'
57
+ }, {
58
+ key: 'parentkey',
59
+ label: '树组件主键key',
60
+ text: 'ctx.PARENT_KEY'
61
+ }]
62
+ }, {
63
+ key: 'tools',
64
+ label: '工具',
65
+ children: [{
66
+ key: 'dialog',
67
+ label: '提示弹窗',
68
+ text: 'ctx.utils.dialog(type, props)'
69
+ }]
70
+ }, {
71
+ key: 'router',
72
+ label: '路由',
73
+ children: [{
74
+ key: 'push',
75
+ label: '入栈',
76
+ text: 'ctx.router.push(path, params, type, blank)'
77
+ }]
78
+ }]
79
+ }, {
80
+ key: 'behavior',
81
+ label: '执行行为',
82
+ children: [{
83
+ key: 'test',
84
+ label: '测试',
85
+ text: "ctx.utils.callBehavior({ moduleCode, datasetCode, 'text' }, params, data)"
86
+ }]
87
+ }];
88
+ }, []);
89
+ var render = (0, _ahooks.useMemoizedFn)(function (_meta) {
90
+ return _meta.map(function (data) {
91
+ return /*#__PURE__*/_react.default.createElement(Collapse.Panel, {
92
+ header: data.label,
93
+ key: data.key
94
+ }, data.group && /*#__PURE__*/_react.default.createElement(Collapse, {
95
+ expandIconPosition: "right"
96
+ }, render(data.group)), data.children && /*#__PURE__*/_react.default.createElement(_antd.List, {
97
+ split: false,
98
+ dataSource: data.children,
99
+ renderItem: function renderItem(item) {
100
+ return /*#__PURE__*/_react.default.createElement(ListItem, {
101
+ key: item.key,
102
+ onClick: function onClick() {
103
+ return _onClick(item);
104
+ }
105
+ }, item.label);
106
+ }
107
+ }));
108
+ });
109
+ });
110
+ return /*#__PURE__*/_react.default.createElement(Wrapper, null, /*#__PURE__*/_react.default.createElement(Collapse, {
111
+ accordion: true,
112
+ defaultActiveKey: ['instance']
113
+ }, render(meta)));
114
+ };
115
+ var _default = exports.default = ToolBar;
116
+ //# sourceMappingURL=ToolBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_antd","_styledComponents","_ahooks","_ContextProvider","Wrapper","styled","div","withConfig","displayName","componentId","Collapse","AntCollapse","ListItem","List","Item","ToolBar","_ref","onClick","ctx","useContext","meta","useCreation","key","label","children","componentList","map","_ref2","_ref3","_slicedToArray2","default","_id","_comp","concat","name","text","group","render","useMemoizedFn","_meta","data","createElement","Panel","header","expandIconPosition","split","dataSource","renderItem","item","accordion","defaultActiveKey","_default","exports"],"sources":["../../../../../luckda/lowcode/painter/panel-section/JSEditor/ToolBar.jsx"],"sourcesContent":["import React from 'react';\nimport { Collapse as AntCollapse, List } from 'luck-design/antd';\nimport styled from 'styled-components';\nimport { useCreation, useMemoizedFn } from 'ahooks';\nimport { useContext } from '../../../engine/provider/ContextProvider';\n\nconst Wrapper = styled.div`\n width: 300px;\n height: 100%;\n padding-right: 8px;\n overflow-y: auto;\n`;\nconst Collapse = styled(AntCollapse)`\n .ant-collapse-content-box {\n padding: 4px 6px;\n } \n`;\nconst ListItem = styled(List.Item)`\n cursor: pointer;\n border-radius: 4px;\n padding: 8px 4px;\n &:hover {\n background: var(--ant-select-selection-color);\n }\n`;\n\nconst ToolBar = ({ onClick }) => {\n const ctx = useContext();\n\n const meta = useCreation(\n () => [\n {\n key: 'instance',\n label: '组件实例',\n children: ctx.componentList.map(([_id, _comp]) => ({\n key: _id,\n label: `${_comp.name}(${_id})`,\n text: `ctx.$('${_id}')`,\n })),\n },\n {\n key: 'ctx',\n label: '上下文',\n group: [\n {\n key: 'common',\n label: '通用',\n children: [\n { key: 'apiprefix', label: 'service api前缀', text: 'ctx.API_PREFIX' },\n { key: 'primarykey', label: '主键key', text: 'ctx.PRIMARY_KEY' },\n { key: 'parentkey', label: '树组件主键key', text: 'ctx.PARENT_KEY' },\n ],\n },\n {\n key: 'tools',\n label: '工具',\n children: [{ key: 'dialog', label: '提示弹窗', text: 'ctx.utils.dialog(type, props)' }],\n },\n {\n key: 'router',\n label: '路由',\n children: [\n { key: 'push', label: '入栈', text: 'ctx.router.push(path, params, type, blank)' },\n ],\n },\n ],\n },\n {\n key: 'behavior',\n label: '执行行为',\n children: [\n {\n key: 'test',\n label: '测试',\n text: `ctx.utils.callBehavior({ moduleCode, datasetCode, 'text' }, params, data)`\n },\n ],\n },\n ],\n [],\n );\n\n const render = useMemoizedFn((_meta) => {\n return _meta.map((data) => (\n <Collapse.Panel header={data.label} key={data.key}>\n {data.group && (\n <Collapse expandIconPosition=\"right\">\n {render(data.group)}\n </Collapse>\n )}\n {data.children && (\n <List\n split={false}\n dataSource={data.children}\n renderItem={(item) => (\n <ListItem key={item.key} onClick={() => onClick(item)}>\n {item.label}\n </ListItem>\n )}\n />\n )}\n </Collapse.Panel>\n ));\n });\n\n return (\n <Wrapper>\n <Collapse accordion defaultActiveKey={['instance']}>{render(meta)}</Collapse>\n </Wrapper>\n );\n};\n\nexport default ToolBar;\n"],"mappings":"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"}
@@ -8,17 +8,27 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _react = _interopRequireWildcard(require("react"));
11
+ var monaco = _interopRequireWildcard(require("monaco-editor"));
11
12
  var _ahooks = require("ahooks");
12
13
  var _antd = require("luck-design/antd");
13
14
  var _luckDesign = require("luck-design");
15
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
16
+ var _lodash = require("lodash");
14
17
  var _utils = require("@luck-design-biz/base/utils");
15
- var _RuntimeComp = _interopRequireDefault(require("../../view/lc-components/JSX/RuntimeComp"));
16
- var _JSEditor2 = _interopRequireDefault(require("../components/code-editor/JSEditor"));
18
+ var _ToolBar = _interopRequireDefault(require("./ToolBar"));
19
+ var _RuntimeComp = _interopRequireDefault(require("../../../view/lc-components/JSX/RuntimeComp"));
20
+ var _JSEditor2 = _interopRequireDefault(require("../../components/code-editor/JSEditor"));
21
+ var Wrapper = _styledComponents.default.div.withConfig({
22
+ displayName: "Wrapper",
23
+ componentId: "luckda-6530__sc-pquf2n-0"
24
+ })(["width:100%;height:100%;display:flex;"]);
17
25
  var _JSEditor = function _JSEditor(_ref) {
18
26
  var defaultValue = _ref.defaultValue,
19
27
  defaultCode = _ref.defaultCode,
20
28
  onChange = _ref.onChange,
21
- children = _ref.children;
29
+ children = _ref.children,
30
+ _ref$isjsx = _ref.isjsx,
31
+ isjsx = _ref$isjsx === void 0 ? false : _ref$isjsx;
22
32
  var editorRef = (0, _react.useRef)();
23
33
  var _useState = (0, _react.useState)(defaultValue || defaultCode),
24
34
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -43,9 +53,44 @@ var _JSEditor = function _JSEditor(_ref) {
43
53
  hasErrorOn = _useBoolean4$.setTrue,
44
54
  hasErrorOff = _useBoolean4$.setFalse;
45
55
  var handleErrorCatch = (0, _ahooks.useMemoizedFn)(function (error) {
46
- console.log(12121212, error);
56
+ if ((0, _lodash.isNil)(error)) {
57
+ hasErrorOff();
58
+ } else {
59
+ hasErrorOn();
60
+ }
61
+ });
62
+ var handleToolItemClick = (0, _ahooks.useMemoizedFn)(function (item) {
63
+ var _editorRef$current$ed = editorRef.current.editor.getPosition(),
64
+ lineNumber = _editorRef$current$ed.lineNumber,
65
+ column = _editorRef$current$ed.column;
66
+ var range = new monaco.Range(lineNumber, column, lineNumber, column);
67
+ editorRef.current.editor.executeEdits('', [{
68
+ range: range,
69
+ text: item.text
70
+ }]);
71
+ });
72
+ var handleOk = (0, _ahooks.useMemoizedFn)(function () {
73
+ onChange(editorRef.current.editor.getValue());
74
+ hidden();
75
+ });
76
+ var renderFooter = (0, _ahooks.useMemoizedFn)(function () {
77
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isjsx ? /*#__PURE__*/_react.default.createElement(_antd.Button, {
78
+ disabled: hasError
79
+ }, (0, _utils.formatMessage)({
80
+ id: 'luckda.lowcode.painter.panel-section.jseditor.saveto',
81
+ label: '保存为'
82
+ })) : null, /*#__PURE__*/_react.default.createElement(_antd.Button, {
83
+ type: "primary",
84
+ disabled: hasError,
85
+ onClick: handleOk
86
+ }, (0, _utils.formatMessage)({
87
+ id: 'app.base.operate.ok',
88
+ label: '确定'
89
+ })));
47
90
  });
48
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, children || /*#__PURE__*/_react.default.createElement(_antd.Button, {
91
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, children ? /*#__PURE__*/_react.default.createElement("div", {
92
+ onClick: show
93
+ }, children) : /*#__PURE__*/_react.default.createElement(_antd.Button, {
49
94
  block: true,
50
95
  size: "small",
51
96
  onClick: show,
@@ -66,19 +111,28 @@ var _JSEditor = function _JSEditor(_ref) {
66
111
  fullScreen: true,
67
112
  mask: false,
68
113
  maskClosable: false,
69
- closable: false,
70
114
  visible: visible,
115
+ footer: renderFooter(),
71
116
  onClose: hidden
72
- }, /*#__PURE__*/_react.default.createElement(_luckDesign.SplitPane, {
117
+ }, /*#__PURE__*/_react.default.createElement(Wrapper, null, /*#__PURE__*/_react.default.createElement(_ToolBar.default, {
118
+ onClick: handleToolItemClick
119
+ }), isjsx ? /*#__PURE__*/_react.default.createElement(_luckDesign.SplitPane, {
73
120
  split: "vertical"
74
- }, /*#__PURE__*/_react.default.createElement(_luckDesign.SplitPane.Pane, null, /*#__PURE__*/_react.default.createElement(_JSEditor2.default, {
121
+ }, /*#__PURE__*/_react.default.createElement(_luckDesign.SplitPane.Pane, {
122
+ style: {
123
+ overflow: 'hidden'
124
+ }
125
+ }, /*#__PURE__*/_react.default.createElement(_JSEditor2.default, {
75
126
  ref: editorRef,
76
127
  onChange: run
77
128
  }, defaultValue || defaultCode)), /*#__PURE__*/_react.default.createElement(_luckDesign.SplitPane.Pane, {
78
129
  minSize: "400px"
79
130
  }, /*#__PURE__*/_react.default.createElement(_RuntimeComp.default, {
80
131
  onErrorCatch: handleErrorCatch
81
- }, code)))));
132
+ }, code))) : /*#__PURE__*/_react.default.createElement(_JSEditor2.default, {
133
+ ref: editorRef,
134
+ onChange: run
135
+ }, defaultValue || defaultCode))));
82
136
  };
83
137
  var _default = exports.default = _JSEditor;
84
- //# sourceMappingURL=JSEditor.js.map
138
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","monaco","_ahooks","_antd","_luckDesign","_styledComponents","_interopRequireDefault","_lodash","_utils","_ToolBar","_RuntimeComp","_JSEditor2","Wrapper","styled","div","withConfig","displayName","componentId","_JSEditor","_ref","defaultValue","defaultCode","onChange","children","_ref$isjsx","isjsx","editorRef","useRef","_useState","useState","_useState2","_slicedToArray2","default","code","setCode","_useDebounceFn","useDebounceFn","_code","wait","run","_useBoolean","useBoolean","_useBoolean2","visible","_useBoolean2$","show","setTrue","hidden","setFalse","_useBoolean3","_useBoolean4","hasError","_useBoolean4$","hasErrorOn","hasErrorOff","handleErrorCatch","useMemoizedFn","error","isNil","handleToolItemClick","item","_editorRef$current$ed","current","editor","getPosition","lineNumber","column","range","Range","executeEdits","text","handleOk","getValue","renderFooter","createElement","Fragment","Button","disabled","formatMessage","id","label","type","onClick","block","size","style","margin","width","LuckModal","title","height","fullScreen","mask","maskClosable","footer","onClose","SplitPane","split","Pane","overflow","ref","minSize","onErrorCatch","_default","exports"],"sources":["../../../../../luckda/lowcode/painter/panel-section/JSEditor/index.jsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport * as monaco from 'monaco-editor';\nimport { useBoolean, useDebounceFn, useMemoizedFn } from 'ahooks';\nimport { Button } from 'luck-design/antd';\nimport { LuckModal, SplitPane } from 'luck-design';\nimport styled from 'styled-components';\nimport { isNil } from 'lodash';\nimport { formatMessage } from '@luck-design-biz/base/utils';\nimport ToolBar from './ToolBar';\nimport RuntimeComp from '../../../view/lc-components/JSX/RuntimeComp';\nimport JSEditor from '../../components/code-editor/JSEditor';\n\nconst Wrapper = styled.div`\n width: 100%;\n height: 100%;\n display: flex;\n`;\n\nconst _JSEditor = ({ defaultValue, defaultCode, onChange, children, isjsx = false }) => {\n const editorRef = useRef();\n const [code, setCode] = useState(defaultValue || defaultCode);\n const { run } = useDebounceFn(\n (_code) => {\n setCode(_code);\n },\n { wait: 500 },\n );\n const [visible, { setTrue: show, setFalse: hidden }] = useBoolean(false);\n const [hasError, { setTrue: hasErrorOn, setFalse: hasErrorOff }] = useBoolean(false);\n\n const handleErrorCatch = useMemoizedFn((error) => {\n if (isNil(error)) {\n hasErrorOff();\n } else {\n hasErrorOn();\n }\n });\n\n const handleToolItemClick = useMemoizedFn((item) => {\n const { lineNumber, column } = editorRef.current.editor.getPosition();\n const range = new monaco.Range(lineNumber, column, lineNumber, column);\n editorRef.current.editor.executeEdits('', [{ range: range, text: item.text }]);\n });\n\n const handleOk = useMemoizedFn(() => {\n onChange(editorRef.current.editor.getValue());\n hidden();\n });\n\n const renderFooter = useMemoizedFn(() => (\n <>\n {isjsx ? (\n <Button disabled={hasError}>\n {formatMessage({\n id: 'luckda.lowcode.painter.panel-section.jseditor.saveto',\n label: '保存为',\n })}\n </Button>\n ) : null}\n <Button type=\"primary\" disabled={hasError} onClick={handleOk}>\n {formatMessage({ id: 'app.base.operate.ok', label: '确定' })}\n </Button>\n </>\n ));\n\n return (\n <>\n {children ? (\n <div onClick={show}>{children}</div>\n ) : (\n <Button\n block\n size=\"small\"\n onClick={show}\n style={{ margin: '0 8px', width: 'calc(100% - 16px)' }}\n >\n {formatMessage({\n id: 'luckda.lowcode.painter.panel-section.style-panel.sourceedit',\n label: '源码编辑',\n })}\n </Button>\n )}\n <LuckModal\n title={formatMessage({\n id: 'luckda.lowcode.painter.panel-section.style-panel.sourceedit',\n label: '源码编辑',\n })}\n width=\"80vw\"\n height=\"80vh\"\n fullScreen\n mask={false}\n maskClosable={false}\n visible={visible}\n footer={renderFooter()}\n onClose={hidden}\n >\n <Wrapper>\n <ToolBar onClick={handleToolItemClick} />\n {isjsx ? (\n <SplitPane split=\"vertical\">\n <SplitPane.Pane style={{ overflow: 'hidden' }}>\n <JSEditor ref={editorRef} onChange={run}>\n {defaultValue || defaultCode}\n </JSEditor>\n </SplitPane.Pane>\n <SplitPane.Pane minSize=\"400px\">\n <RuntimeComp onErrorCatch={handleErrorCatch}>{code}</RuntimeComp>\n </SplitPane.Pane>\n </SplitPane>\n ) : (\n <JSEditor ref={editorRef} onChange={run}>\n {defaultValue || defaultCode}\n </JSEditor>\n )}\n </Wrapper>\n </LuckModal>\n </>\n );\n};\n\nexport default _JSEditor;\n"],"mappings":"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"}
@@ -39,9 +39,9 @@ var ErrorBoundary = /*#__PURE__*/function (_PureComponent) {
39
39
  return _this;
40
40
  }
41
41
  (0, _createClass2.default)(ErrorBoundary, [{
42
- key: "componentDidUpdate",
43
- value: function componentDidUpdate(prevProps) {
44
- if (this.props.children !== prevProps.children && this.state.hasError) {
42
+ key: "componentWillReceiveProps",
43
+ value: function componentWillReceiveProps(nextProps) {
44
+ if (nextProps.children !== this.props.children && this.state.hasError) {
45
45
  var _this$props$onErrorCa, _this$props;
46
46
  // 重置 hasError 为 false 以便重新渲染子组件
47
47
  (_this$props$onErrorCa = (_this$props = this.props).onErrorCatch) === null || _this$props$onErrorCa === void 0 || _this$props$onErrorCa.call(_this$props);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","Wrapper","styled","div","withConfig","displayName","componentId","Title","h3","Content","p","ErrorBoundary","_PureComponent","_inherits2","default","_super","_createSuper2","props","_this","_classCallCheck2","call","state","hasError","error","errorInfo","_createClass2","key","value","componentDidUpdate","prevProps","children","_this$props$onErrorCa","_this$props","onErrorCatch","setState","componentDidCatch","_this$props$onErrorCa2","_this$props2","console","componentStack","render","createElement","dangerouslySetInnerHTML","__html","PureComponent","_default","exports"],"sources":["../../../luckda/lowcode/view/ErrorBoundary.jsx"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport styled from 'styled-components';\n\nconst Wrapper = styled.div`\n width: 100%;\n height: 100%;\n overflow: auto;\n`;\nconst Title = styled.h3`\n white-space: pre-line;\n color: var(--luck-color-danger);\n fontSize: 1.5rem;\n`;\nconst Content = styled.p`\n white-space: pre-line;\n color: var(--luck-color-danger);\n`;\n\nclass ErrorBoundary extends PureComponent {\n constructor(props) {\n super(props);\n this.state = {\n hasError: false,\n error: '',\n errorInfo: '',\n };\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.children !== prevProps.children && this.state.hasError) {\n // 重置 hasError 为 false 以便重新渲染子组件\n this.props.onErrorCatch?.();\n this.setState({ hasError: false, error: '', errorInfo: '' });\n }\n }\n\n componentDidCatch(error, errorInfo) {\n // 在此处记录错误信息\n console.error(error);\n this.props.onErrorCatch?.(error, errorInfo);\n this.setState({ hasError: true, error, errorInfo: errorInfo?.componentStack });\n }\n\n render() {\n if (this.state.hasError) {\n // 如果有错误,显示备用 UI\n return (\n <Wrapper>\n <Title dangerouslySetInnerHTML={{ __html: this.state.error }} />\n <Content dangerouslySetInnerHTML={{ __html: this.state.errorInfo }} />\n </Wrapper>\n );\n }\n\n return this.props.children;\n }\n}\n\nexport default ErrorBoundary;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","Wrapper","styled","div","withConfig","displayName","componentId","Title","h3","Content","p","ErrorBoundary","_PureComponent","_inherits2","default","_super","_createSuper2","props","_this","_classCallCheck2","call","state","hasError","error","errorInfo","_createClass2","key","value","componentWillReceiveProps","nextProps","children","_this$props$onErrorCa","_this$props","onErrorCatch","setState","componentDidCatch","_this$props$onErrorCa2","_this$props2","console","componentStack","render","createElement","dangerouslySetInnerHTML","__html","PureComponent","_default","exports"],"sources":["../../../luckda/lowcode/view/ErrorBoundary.jsx"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport styled from 'styled-components';\n\nconst Wrapper = styled.div`\n width: 100%;\n height: 100%;\n overflow: auto;\n`;\nconst Title = styled.h3`\n white-space: pre-line;\n color: var(--luck-color-danger);\n fontSize: 1.5rem;\n`;\nconst Content = styled.p`\n white-space: pre-line;\n color: var(--luck-color-danger);\n`;\n\nclass ErrorBoundary extends PureComponent {\n constructor(props) {\n super(props);\n this.state = {\n hasError: false,\n error: '',\n errorInfo: '',\n };\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.children !== this.props.children && this.state.hasError) {\n // 重置 hasError 为 false 以便重新渲染子组件\n this.props.onErrorCatch?.();\n this.setState({ hasError: false, error: '', errorInfo: '' });\n }\n }\n \n componentDidCatch(error, errorInfo) {\n // 在此处记录错误信息\n console.error(error);\n this.props.onErrorCatch?.(error, errorInfo);\n this.setState({ hasError: true, error, errorInfo: errorInfo?.componentStack });\n }\n\n render() {\n if (this.state.hasError) {\n // 如果有错误,显示备用 UI\n return (\n <Wrapper>\n <Title dangerouslySetInnerHTML={{ __html: this.state.error }} />\n <Content dangerouslySetInnerHTML={{ __html: this.state.errorInfo }} />\n </Wrapper>\n );\n }\n\n return this.props.children;\n }\n}\n\nexport default ErrorBoundary;\n"],"mappings":"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"}
@@ -98,7 +98,6 @@
98
98
  "name": "图标地址",
99
99
  "type": "_JSEditor",
100
100
  "defaultCode": "function avatarUrl(record) { \n return null; \n}",
101
- "mustConfirm": true,
102
101
  "wrapper": "collapse",
103
102
  "wrapperProps": {
104
103
  "suppressIcon": true
@@ -115,7 +114,7 @@
115
114
  "name": "标题内容",
116
115
  "type": "_JSEditor",
117
116
  "defaultCode": "function renderTitle(record) { \n return record.sname; \n}",
118
- "mustConfirm": true,
117
+ "isjsx": true,
119
118
  "wrapper": "collapse",
120
119
  "wrapperProps": {
121
120
  "suppressIcon": true
@@ -138,7 +137,7 @@
138
137
  "name": "描述内容",
139
138
  "type": "_JSEditor",
140
139
  "defaultCode": "function renderDescribe(record) { \n return record.describe; \n}",
141
- "mustConfirm": true,
140
+ "isjsx": true,
142
141
  "wrapper": "collapse",
143
142
  "wrapperProps": {
144
143
  "suppressIcon": true
@@ -149,7 +148,7 @@
149
148
  "name": "自定义",
150
149
  "type": "_JSEditor",
151
150
  "defaultCode": "function renderContent(record) { \n return null; \n}",
152
- "mustConfirm": true,
151
+ "isjsx": true,
153
152
  "wrapper": "collapse",
154
153
  "wrapperProps": {
155
154
  "suppressIcon": true
@@ -232,7 +231,6 @@
232
231
  "name": "不可选卡片",
233
232
  "type": "_JSEditor",
234
233
  "defaultCode": "function disabledCheckbox(record) { \n return false; \n}",
235
- "mustConfirm": true,
236
234
  "wrapper": "collapse",
237
235
  "wrapperProps": {
238
236
  "suppressIcon": true
@@ -34,7 +34,6 @@
34
34
  "name": "不可选日期",
35
35
  "type": "_JSEditor",
36
36
  "defaultCode": "function disabledDate(currentDate) {return true}",
37
- "mustConfirm": true,
38
37
  "wrapper": "collapse",
39
38
  "wrapperProps": { "suppressIcon": true }
40
39
  },
@@ -23,7 +23,6 @@
23
23
  "name": "编辑类",
24
24
  "type": "_JSEditor",
25
25
  "defaultCode": "function plugins() { \n return ['autolink', 'lists', 'link', 'image', 'table', 'fullscreen']; \n}",
26
- "mustConfirm": true,
27
26
  "wrapper": "collapse",
28
27
  "wrapperProps": {
29
28
  "suppressIcon": true
@@ -46,7 +46,6 @@
46
46
  "name": "禁止选择",
47
47
  "type": "_JSEditor",
48
48
  "defaultCode": "function suppressSelect(rowData) { \n return false; \n}",
49
- "mustConfirm": true,
50
49
  "wrapper": "collapse",
51
50
  "wrapperProps": {
52
51
  "suppressIcon": true
@@ -22,7 +22,6 @@
22
22
  "name": "不可选日期",
23
23
  "type": "_JSEditor",
24
24
  "defaultCode": "function disabledDate(currentDate) {return true}",
25
- "mustConfirm": true,
26
25
  "wrapper": "collapse",
27
26
  "wrapperProps": { "suppressIcon": true }
28
27
  },
@@ -74,7 +74,7 @@
74
74
  "name": "按钮区域左侧渲染",
75
75
  "type": "_JSEditor",
76
76
  "defaultCode": "function renderFormLeft() { \n return null; \n}",
77
- "mustConfirm": true,
77
+ "isjsx": true,
78
78
  "wrapper": "collapse",
79
79
  "wrapperProps": {
80
80
  "suppressIcon": true
@@ -85,7 +85,7 @@
85
85
  "name": "按钮区域右侧渲染",
86
86
  "type": "_JSEditor",
87
87
  "defaultCode": "function renderFormRight() { \n return null; \n}",
88
- "mustConfirm": true,
88
+ "isjsx": true,
89
89
  "wrapper": "collapse",
90
90
  "wrapperProps": {
91
91
  "suppressIcon": true
@@ -256,7 +256,6 @@
256
256
  "desc": "格式化新增时默认数据",
257
257
  "type": "_JSEditor",
258
258
  "defaultCode": "function defaultDataSourceFormat(defaultValues) { \n return {}; \n}",
259
- "mustConfirm": true,
260
259
  "wrapper": "collapse",
261
260
  "wrapperProps": { "suppressIcon": true }
262
261
  },
@@ -266,7 +265,6 @@
266
265
  "desc": "格式化单表提交数据",
267
266
  "type": "_JSEditor",
268
267
  "defaultCode": "function dataSourceFormat(dataSetKey, values, submitData) { \n return { [dataSetKey]: submitData }; \n}",
269
- "mustConfirm": true,
270
268
  "wrapper": "collapse",
271
269
  "wrapperProps": { "suppressIcon": true }
272
270
  }
@@ -360,7 +358,6 @@
360
358
  "desc": "重写操列",
361
359
  "type": "_JSEditor",
362
360
  "defaultCode": "function actionsColumnReset(data, index, actions, params) { \n \t \n}",
363
- "mustConfirm": true,
364
361
  "wrapper": "collapse",
365
362
  "wrapperProps": { "suppressIcon": true }
366
363
  }
@@ -372,7 +369,6 @@
372
369
  "desc": "格式化新增时默认数据",
373
370
  "type": "_JSEditor",
374
371
  "defaultCode": "function defaultDataSourceFormat(defaultValues) { \n return {}; \n}",
375
- "mustConfirm": true,
376
372
  "wrapper": "collapse",
377
373
  "wrapperProps": { "suppressIcon": true }
378
374
  },
@@ -382,7 +378,6 @@
382
378
  "desc": "格式化单表提交数据",
383
379
  "type": "_JSEditor",
384
380
  "defaultCode": "function dataSourceFormat(dataSetKey, values, submitData, behaviorKey) { \n return { [dataSetKey]: { [`${behaviorKey}List`]: submitData } }; \n}",
385
- "mustConfirm": true,
386
381
  "wrapper": "collapse",
387
382
  "wrapperProps": { "suppressIcon": true }
388
383
  },
@@ -392,7 +387,6 @@
392
387
  "desc": "重置表格列",
393
388
  "type": "_JSEditor",
394
389
  "defaultCode": "function columnsReset(columns) { \n return columns; \n}",
395
- "mustConfirm": true,
396
390
  "wrapper": "collapse",
397
391
  "wrapperProps": { "suppressIcon": true }
398
392
  },
@@ -402,7 +396,6 @@
402
396
  "desc": "加载完成回调",
403
397
  "type": "_JSEditor",
404
398
  "defaultCode": "function onGridFormReady(ref, params, gridForm) { \n\t\n}",
405
- "mustConfirm": true,
406
399
  "wrapper": "collapse",
407
400
  "wrapperProps": { "suppressIcon": true }
408
401
  }
@@ -471,7 +464,6 @@
471
464
  "desc": "重写操作列",
472
465
  "type": "_JSEditor",
473
466
  "defaultCode": "function actionsColumnReset(data, index, actions, params) { \n \t \n}",
474
- "mustConfirm": true,
475
467
  "wrapper": "collapse",
476
468
  "wrapperProps": { "suppressIcon": true }
477
469
  }
@@ -483,7 +475,6 @@
483
475
  "desc": "格式化新增时默认数据",
484
476
  "type": "_JSEditor",
485
477
  "defaultCode": "function defaultDataSourceFormat(defaultValues) { \n return {}; \n}",
486
- "mustConfirm": true,
487
478
  "wrapper": "collapse",
488
479
  "wrapperProps": { "suppressIcon": true }
489
480
  },
@@ -493,7 +484,6 @@
493
484
  "desc": "格式化单表提交数据",
494
485
  "type": "_JSEditor",
495
486
  "defaultCode": "function dataSourceFormat(dataSetKey, values, submitData, behaviorKey) { \n return { [dataSetKey]: { [`${behaviorKey}List`]: submitData } }; \n}",
496
- "mustConfirm": true,
497
487
  "wrapper": "collapse",
498
488
  "wrapperProps": { "suppressIcon": true }
499
489
  },
@@ -503,7 +493,6 @@
503
493
  "desc": "重置表格列",
504
494
  "type": "_JSEditor",
505
495
  "defaultCode": "function columnsReset(columns) { \n return columns; \n}",
506
- "mustConfirm": true,
507
496
  "wrapper": "collapse",
508
497
  "wrapperProps": { "suppressIcon": true }
509
498
  },
@@ -513,7 +502,6 @@
513
502
  "desc": "加载完成回调",
514
503
  "type": "_JSEditor",
515
504
  "defaultCode": "function onGridFormReady(ref, params, gridForm) { \n\t\n}",
516
- "mustConfirm": true,
517
505
  "wrapper": "collapse",
518
506
  "wrapperProps": { "suppressIcon": true }
519
507
  }
@@ -565,7 +553,6 @@
565
553
  "name": "自定义操作列",
566
554
  "type": "_JSEditor",
567
555
  "defaultCode": "function resetActions(data, index, actionList, params) { \n return actionList; \n}",
568
- "mustConfirm": true,
569
556
  "wrapper": "collapse",
570
557
  "wrapperProps": { "suppressIcon": true }
571
558
  },
@@ -574,7 +561,6 @@
574
561
  "name": "禁止上传类型",
575
562
  "type": "_JSEditor",
576
563
  "defaultCode": "function forbiddenTypes() { \n return []; \n}",
577
- "mustConfirm": true,
578
564
  "wrapper": "collapse",
579
565
  "wrapperProps": { "suppressIcon": true }
580
566
  },
@@ -583,7 +569,6 @@
583
569
  "name": "上传前置事件",
584
570
  "type": "_JSEditor",
585
571
  "defaultCode": "function beforeUpload(file, fileList) { \n return true; \n}",
586
- "mustConfirm": true,
587
572
  "wrapper": "collapse",
588
573
  "wrapperProps": { "suppressIcon": true }
589
574
  },
@@ -592,7 +577,6 @@
592
577
  "name": "上传事件回调",
593
578
  "type": "_JSEditor",
594
579
  "defaultCode": "function onUploadChange(event) { \n\t\n}",
595
- "mustConfirm": true,
596
580
  "wrapper": "collapse",
597
581
  "wrapperProps": { "suppressIcon": true }
598
582
  }
@@ -50,7 +50,6 @@
50
50
  "desc": "返回默认选中的数据主键",
51
51
  "type": "_JSEditor",
52
52
  "defaultCode": "function defaultSelect(treeData, firstNode) { \n return firstNode.id; \n}",
53
- "mustConfirm": true,
54
53
  "wrapper": "collapse",
55
54
  "wrapperProps": {
56
55
  "suppressIcon": true
@@ -39,6 +39,7 @@ var RuntimeCom = function RuntimeCom(_ref) {
39
39
  var code = _react.default.Children.toArray(children).join('').trim();
40
40
  if (!code) return _react.Fragment;
41
41
  try {
42
+ onErrorCatch === null || onErrorCatch === void 0 || onErrorCatch();
42
43
  // 使用Babel转换代码
43
44
  var transformedCode = Babel.transform(code, {
44
45
  presets: ['react']
@@ -54,6 +55,7 @@ var RuntimeCom = function RuntimeCom(_ref) {
54
55
  }
55
56
  return _react.Fragment;
56
57
  } catch (e) {
58
+ onErrorCatch === null || onErrorCatch === void 0 || onErrorCatch(e);
57
59
  return function () {
58
60
  return /*#__PURE__*/_react.default.createElement(ErrorContent, null, e.message);
59
61
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","Babel","LuckAntd","LuckDesign","AHooks","_styledComponents","_interopRequireDefault","_lodash","_ContextProvider","_helper","_ErrorBoundary","_excluded","ErrorContent","styled","p","withConfig","displayName","componentId","RuntimeCom","_ref","children","onErrorCatch","rest","_objectWithoutProperties2","default","ctx","useContext","Component","useCreation","code","React","Children","toArray","join","trim","Fragment","transformedCode","transform","presets","functionNameMatch","match","length","functionName","argsName","keys","_args","map","n","executeCode","apply","concat","_toConsumableArray2","_objectSpread2","e","createElement","message","_default","exports"],"sources":["../../../../../luckda/lowcode/view/lc-components/JSX/RuntimeComp.jsx"],"sourcesContent":["import React, { Fragment } from 'react';\nimport * as Babel from '@babel/standalone';\nimport * as LuckAntd from 'luck-design/antd';\nimport * as LuckDesign from 'luck-design';\nimport * as AHooks from 'ahooks';\nimport styled from 'styled-components';\nimport { keys } from 'lodash';\nimport { useContext } from '../../../engine/provider/ContextProvider';\nimport { executeCode } from '../../../engine/tools/helper';\nimport ErrorBoundary from '../../ErrorBoundary';\n\nconst ErrorContent = styled.p`\n white-space: pre-line;\n color: var(--luck-color-danger);\n`;\n\n/**\n * 实时代码渲染组件\n * todo:沙箱上下文的集成\n * todo:Loading效果的优化\n */\nconst RuntimeCom = ({ children, onErrorCatch, ...rest }) => {\n const ctx = useContext();\n\n const Component = AHooks.useCreation(() => {\n const code = React.Children.toArray(children).join('').trim();\n if (!code) return Fragment;\n\n try {\n // 使用Babel转换代码\n const transformedCode = Babel.transform(code, {\n presets: ['react'],\n }).code;\n const functionNameMatch = transformedCode.match(/function\\s+([^\\s(]+)/);\n if (functionNameMatch && functionNameMatch.length > 1) {\n const functionName = functionNameMatch[1];\n const argsName = keys(rest);\n const _args = argsName.map((n) => rest[n]);\n return executeCode(\n ctx,\n `function() {${transformedCode}; return ${functionName};}`,\n ['React', 'Antd', 'Luckd', 'styled', 'libs', ...argsName],\n React,\n LuckAntd,\n LuckDesign,\n styled,\n { ...AHooks },\n ..._args,\n );\n }\n return Fragment;\n } catch (e) {\n return () => <ErrorContent>{e.message}</ErrorContent>;\n }\n }, [children]);\n\n return (\n <ErrorBoundary onErrorCatch={onErrorCatch}>\n <Component />\n </ErrorBoundary>\n );\n};\n\nexport default RuntimeCom;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","Babel","LuckAntd","LuckDesign","AHooks","_styledComponents","_interopRequireDefault","_lodash","_ContextProvider","_helper","_ErrorBoundary","_excluded","ErrorContent","styled","p","withConfig","displayName","componentId","RuntimeCom","_ref","children","onErrorCatch","rest","_objectWithoutProperties2","default","ctx","useContext","Component","useCreation","code","React","Children","toArray","join","trim","Fragment","transformedCode","transform","presets","functionNameMatch","match","length","functionName","argsName","keys","_args","map","n","executeCode","apply","concat","_toConsumableArray2","_objectSpread2","e","createElement","message","_default","exports"],"sources":["../../../../../luckda/lowcode/view/lc-components/JSX/RuntimeComp.jsx"],"sourcesContent":["import React, { Fragment } from 'react';\nimport * as Babel from '@babel/standalone';\nimport * as LuckAntd from 'luck-design/antd';\nimport * as LuckDesign from 'luck-design';\nimport * as AHooks from 'ahooks';\nimport styled from 'styled-components';\nimport { keys } from 'lodash';\nimport { useContext } from '../../../engine/provider/ContextProvider';\nimport { executeCode } from '../../../engine/tools/helper';\nimport ErrorBoundary from '../../ErrorBoundary';\n\nconst ErrorContent = styled.p`\n white-space: pre-line;\n color: var(--luck-color-danger);\n`;\n\n/**\n * 实时代码渲染组件\n * todo:沙箱上下文的集成\n * todo:Loading效果的优化\n */\nconst RuntimeCom = ({ children, onErrorCatch, ...rest }) => {\n const ctx = useContext();\n\n const Component = AHooks.useCreation(() => {\n const code = React.Children.toArray(children).join('').trim();\n if (!code) return Fragment;\n\n try {\n onErrorCatch?.();\n // 使用Babel转换代码\n const transformedCode = Babel.transform(code, {\n presets: ['react'],\n }).code;\n const functionNameMatch = transformedCode.match(/function\\s+([^\\s(]+)/);\n if (functionNameMatch && functionNameMatch.length > 1) {\n const functionName = functionNameMatch[1];\n const argsName = keys(rest);\n const _args = argsName.map((n) => rest[n]);\n return executeCode(\n ctx,\n `function() {${transformedCode}; return ${functionName};}`,\n ['React', 'Antd', 'Luckd', 'styled', 'libs', ...argsName],\n React,\n LuckAntd,\n LuckDesign,\n styled,\n { ...AHooks },\n ..._args,\n );\n }\n return Fragment;\n } catch (e) {\n onErrorCatch?.(e);\n return () => <ErrorContent>{e.message}</ErrorContent>;\n }\n }, [children]);\n\n return (\n <ErrorBoundary onErrorCatch={onErrorCatch}>\n <Component />\n </ErrorBoundary>\n );\n};\n\nexport default RuntimeCom;\n"],"mappings":"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"}