@luck-design-biz/luckda 0.0.25-6 → 0.0.25-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 (255) hide show
  1. package/es/components/LDActions/index.js +8 -10
  2. package/es/components/LDActions/index.less +7 -4
  3. package/es/components/LdAutoForm/index.js +26 -8
  4. package/es/components/LdFormList/index.js +37 -22
  5. package/es/components/LdGrid/index.js +14 -7
  6. package/es/components/LdGridForm/index.js +18 -6
  7. package/es/components/LdTree/index.js +33 -15
  8. package/es/helper/form.js +15 -8
  9. package/es/locales/zh-CN.js +16 -10
  10. package/es/lowcode/constants/api-url.js +120 -32
  11. package/es/lowcode/constants/event-topics.js +2 -0
  12. package/es/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +4 -2
  13. package/es/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +4 -2
  14. package/es/lowcode/engine/meta/box.props.json +3 -3
  15. package/es/lowcode/engine/meta/button.props.json +3 -3
  16. package/es/lowcode/engine/meta/components-list.json +6 -0
  17. package/es/lowcode/engine/meta/dialog.props.default.json +10 -5
  18. package/es/lowcode/engine/meta/dialog.props.json +72 -42
  19. package/es/lowcode/engine/meta/drawer.props.json +8 -20
  20. package/es/lowcode/engine/meta/form.props.json +16 -10
  21. package/es/lowcode/engine/meta/imex.props.default.json +8 -1
  22. package/es/lowcode/engine/meta/imex.props.json +54 -22
  23. package/es/lowcode/engine/meta/js-editor/auto-complete.json +53 -3
  24. package/es/lowcode/engine/meta/layout.props.json +2 -2
  25. package/es/lowcode/engine/meta/page.props.json +2 -2
  26. package/es/lowcode/engine/meta/pagelayout.props.default.json +14 -0
  27. package/es/lowcode/engine/meta/pagelayout.props.json +47 -0
  28. package/es/lowcode/engine/meta/section.props.json +2 -2
  29. package/es/lowcode/engine/meta/split.props.default.json +1 -1
  30. package/es/lowcode/engine/meta/split.props.json +4 -4
  31. package/es/lowcode/engine/meta/table.props.json +17 -11
  32. package/es/lowcode/engine/meta/tabs.props.json +3 -3
  33. package/es/lowcode/engine/meta/tree.props.default.json +2 -0
  34. package/es/lowcode/engine/meta/tree.props.json +62 -6
  35. package/es/lowcode/engine/provider/ContextProvider/index.js +20 -43
  36. package/es/lowcode/engine/provider/RemoteSourceProvider.js +69 -24
  37. package/es/lowcode/engine/tools/dataProcess.js +4 -0
  38. package/es/lowcode/engine/tools/helper.js +2 -3
  39. package/es/lowcode/engine/tools/useCanvasRender.js +3 -2
  40. package/es/lowcode/engine/tools/usePageDataStore.js +176 -0
  41. package/es/lowcode/engine/tools/usePromiseState.js +12 -23
  42. package/es/lowcode/engine/tools/useTodo.js +20 -10
  43. package/es/lowcode/painter/DesignOperator.js +12 -23
  44. package/es/lowcode/painter/DesignToolbar.js +10 -45
  45. package/es/lowcode/painter/Outline.js +2 -4
  46. package/es/lowcode/painter/Panel.js +29 -28
  47. package/es/lowcode/painter/components/ActionBindModal.js +30 -24
  48. package/es/lowcode/painter/components/AdvancePanel.js +6 -1
  49. package/es/lowcode/painter/components/AttrsPanel.js +38 -29
  50. package/es/lowcode/painter/components/DragDrop/DragDropContext.js +1 -1
  51. package/es/lowcode/painter/components/code-editor/BaseEditor.js +3 -2
  52. package/es/lowcode/painter/components/field-setting/CheckFrontRules.js +108 -0
  53. package/es/lowcode/painter/components/field-setting/CheckRules.js +1 -26
  54. package/es/lowcode/painter/components/field-setting/FieldRulesModal.js +33 -13
  55. package/es/lowcode/painter/components/field-setting/SettingUI.js +162 -30
  56. package/es/lowcode/painter/components/field-setting/index.js +32 -63
  57. package/es/lowcode/painter/components/field-setting/meta/frontRules.js +53 -0
  58. package/es/lowcode/painter/panel-section/BlocksEditor/index.js +14 -17
  59. package/es/lowcode/painter/panel-section/ButtonType.js +4 -2
  60. package/es/lowcode/painter/panel-section/DataSetSelector.js +4 -1
  61. package/es/lowcode/painter/panel-section/FieldsSetting.js +53 -8
  62. package/es/lowcode/painter/panel-section/ImpExp.js +93 -6
  63. package/es/lowcode/painter/panel-section/ImpExpAlone.js +109 -0
  64. package/es/lowcode/painter/panel-section/PageLayoutDisplay.js +95 -0
  65. package/es/lowcode/painter/panel-section/SerialsSelector.js +4 -2
  66. package/es/lowcode/painter/panel-section/SplitDisplay.js +25 -110
  67. package/es/lowcode/painter/panel-section/StylePanel/index.js +10 -4
  68. package/es/lowcode/painter/panel-section/TreeRootEditor.js +2 -2
  69. package/es/lowcode/painter/style/action-bind-modal.less +3 -3
  70. package/es/lowcode/painter/style/design.less +1 -1
  71. package/es/lowcode/painter/style/page-layout-display.less +28 -0
  72. package/es/lowcode/painter/style/panel-item.less +1 -1
  73. package/es/lowcode/painter/style/split-display.less +0 -9
  74. package/es/lowcode/preview/index.js +4 -2
  75. package/es/lowcode/view/Canvas.js +6 -7
  76. package/es/lowcode/view/Page.js +2 -3
  77. package/es/lowcode/view/lc-components/Box/FunctionDesign.js +3 -2
  78. package/es/lowcode/view/lc-components/Box/meta.json +3 -3
  79. package/es/lowcode/view/lc-components/Button/index.js +2 -6
  80. package/es/lowcode/view/lc-components/Button/meta.json +3 -3
  81. package/es/lowcode/view/lc-components/Dialog/FunctionDesign.js +3 -10
  82. package/es/lowcode/view/lc-components/Dialog/index.js +114 -19
  83. package/es/lowcode/view/lc-components/Dialog/meta.json +65 -42
  84. package/es/lowcode/view/lc-components/Drawer/meta.json +8 -20
  85. package/es/lowcode/view/lc-components/Form/FunctionDesign.js +23 -33
  86. package/es/lowcode/view/lc-components/Form/FunctionPreview.js +8 -1
  87. package/es/lowcode/view/lc-components/Form/index.js +113 -21
  88. package/es/lowcode/view/lc-components/Form/meta.json +16 -10
  89. package/es/lowcode/view/lc-components/ImEx/FunctionDesign.js +8 -3
  90. package/es/lowcode/view/lc-components/ImEx/index.js +260 -10
  91. package/es/lowcode/view/lc-components/ImEx/index.less +7 -0
  92. package/es/lowcode/view/lc-components/ImEx/meta.json +55 -23
  93. package/es/lowcode/view/lc-components/Layout/FunctionDesign.js +12 -19
  94. package/es/lowcode/view/lc-components/Layout/meta.json +2 -2
  95. package/es/lowcode/view/lc-components/Page/meta.json +2 -2
  96. package/es/lowcode/view/lc-components/PageContent/index.js +8 -9
  97. package/es/lowcode/view/lc-components/PageFooter/index.js +2 -5
  98. package/es/lowcode/view/lc-components/PageHeader/index.js +5 -6
  99. package/es/lowcode/view/lc-components/PageLayout/FunctionDesign.js +63 -0
  100. package/es/lowcode/view/lc-components/PageLayout/FunctionLive.js +10 -0
  101. package/es/lowcode/view/lc-components/PageLayout/FunctionPreview.js +10 -0
  102. package/es/lowcode/view/lc-components/PageLayout/index.js +32 -0
  103. package/es/lowcode/view/lc-components/PageLayout/meta.json +47 -0
  104. package/es/lowcode/view/lc-components/PageModal/index.js +12 -15
  105. package/es/lowcode/view/lc-components/Section/FunctionDesign.js +3 -9
  106. package/es/lowcode/view/lc-components/Section/meta.json +2 -2
  107. package/es/lowcode/view/lc-components/Split/FunctionDesign.js +19 -20
  108. package/es/lowcode/view/lc-components/Split/index.js +5 -9
  109. package/es/lowcode/view/lc-components/Split/meta.json +4 -4
  110. package/es/lowcode/view/lc-components/Table/components/TopImex.js +138 -0
  111. package/es/lowcode/view/lc-components/Table/index.js +124 -39
  112. package/es/lowcode/view/lc-components/Table/meta.json +17 -11
  113. package/es/lowcode/view/lc-components/Tabs/FunctionDesign.js +10 -17
  114. package/es/lowcode/view/lc-components/Tabs/index.js +3 -1
  115. package/es/lowcode/view/lc-components/Tabs/meta.json +3 -3
  116. package/es/lowcode/view/lc-components/Tree/FunctionDesign.js +2 -1
  117. package/es/lowcode/view/lc-components/Tree/index.js +67 -18
  118. package/es/lowcode/view/lc-components/Tree/meta.json +62 -7
  119. package/es/lowcode/view/lc-components/Wrapper.js +9 -11
  120. package/es/services.js +0 -24
  121. package/es/upload/FilesWall/file.png +0 -0
  122. package/es/upload/FilesWall/index.js +422 -0
  123. package/es/upload/FilesWall/index.less +74 -0
  124. package/es/upload/Form/index.js +2 -1
  125. package/es/upload/FormItem/index.js +3 -5
  126. package/es/upload/index.js +2 -1
  127. package/es/utils/action.js +2 -2
  128. package/lib/components/LDActions/index.js +7 -9
  129. package/lib/components/LDActions/index.less +7 -4
  130. package/lib/components/LdAutoForm/index.js +25 -7
  131. package/lib/components/LdFormList/index.js +36 -21
  132. package/lib/components/LdGrid/index.js +14 -7
  133. package/lib/components/LdGridForm/index.js +16 -4
  134. package/lib/components/LdTree/index.js +33 -15
  135. package/lib/helper/form.js +14 -7
  136. package/lib/locales/zh-CN.js +16 -10
  137. package/lib/lowcode/constants/api-url.js +123 -32
  138. package/lib/lowcode/constants/event-topics.js +3 -1
  139. package/lib/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +4 -2
  140. package/lib/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +4 -2
  141. package/lib/lowcode/engine/meta/box.props.json +3 -3
  142. package/lib/lowcode/engine/meta/button.props.json +3 -3
  143. package/lib/lowcode/engine/meta/components-list.json +6 -0
  144. package/lib/lowcode/engine/meta/dialog.props.default.json +10 -5
  145. package/lib/lowcode/engine/meta/dialog.props.json +72 -42
  146. package/lib/lowcode/engine/meta/drawer.props.json +8 -20
  147. package/lib/lowcode/engine/meta/form.props.json +16 -10
  148. package/lib/lowcode/engine/meta/imex.props.default.json +8 -1
  149. package/lib/lowcode/engine/meta/imex.props.json +54 -22
  150. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +53 -3
  151. package/lib/lowcode/engine/meta/layout.props.json +2 -2
  152. package/lib/lowcode/engine/meta/page.props.json +2 -2
  153. package/lib/lowcode/engine/meta/pagelayout.props.default.json +14 -0
  154. package/lib/lowcode/engine/meta/pagelayout.props.json +47 -0
  155. package/lib/lowcode/engine/meta/section.props.json +2 -2
  156. package/lib/lowcode/engine/meta/split.props.default.json +1 -1
  157. package/lib/lowcode/engine/meta/split.props.json +4 -4
  158. package/lib/lowcode/engine/meta/table.props.json +17 -11
  159. package/lib/lowcode/engine/meta/tabs.props.json +3 -3
  160. package/lib/lowcode/engine/meta/tree.props.default.json +2 -0
  161. package/lib/lowcode/engine/meta/tree.props.json +62 -6
  162. package/lib/lowcode/engine/provider/ContextProvider/index.js +36 -43
  163. package/lib/lowcode/engine/provider/RemoteSourceProvider.js +68 -23
  164. package/lib/lowcode/engine/tools/dataProcess.js +4 -0
  165. package/lib/lowcode/engine/tools/helper.js +2 -3
  166. package/lib/lowcode/engine/tools/useCanvasRender.js +3 -2
  167. package/lib/lowcode/engine/tools/usePageDataStore.js +183 -0
  168. package/lib/lowcode/engine/tools/usePromiseState.js +11 -21
  169. package/lib/lowcode/engine/tools/useTodo.js +19 -9
  170. package/lib/lowcode/painter/DesignOperator.js +11 -22
  171. package/lib/lowcode/painter/DesignToolbar.js +9 -44
  172. package/lib/lowcode/painter/Outline.js +1 -3
  173. package/lib/lowcode/painter/Panel.js +28 -27
  174. package/lib/lowcode/painter/components/ActionBindModal.js +28 -22
  175. package/lib/lowcode/painter/components/AdvancePanel.js +6 -1
  176. package/lib/lowcode/painter/components/AttrsPanel.js +37 -28
  177. package/lib/lowcode/painter/components/DragDrop/DragDropContext.js +1 -1
  178. package/lib/lowcode/painter/components/code-editor/BaseEditor.js +3 -2
  179. package/lib/lowcode/painter/components/field-setting/CheckFrontRules.js +116 -0
  180. package/lib/lowcode/painter/components/field-setting/CheckRules.js +1 -26
  181. package/lib/lowcode/painter/components/field-setting/FieldRulesModal.js +34 -13
  182. package/lib/lowcode/painter/components/field-setting/SettingUI.js +159 -27
  183. package/lib/lowcode/painter/components/field-setting/index.js +32 -63
  184. package/lib/lowcode/painter/components/field-setting/meta/frontRules.js +59 -0
  185. package/lib/lowcode/painter/panel-section/BlocksEditor/index.js +13 -16
  186. package/lib/lowcode/painter/panel-section/ButtonType.js +4 -2
  187. package/lib/lowcode/painter/panel-section/DataSetSelector.js +4 -1
  188. package/lib/lowcode/painter/panel-section/FieldsSetting.js +53 -8
  189. package/lib/lowcode/painter/panel-section/ImpExp.js +92 -5
  190. package/lib/lowcode/painter/panel-section/ImpExpAlone.js +115 -0
  191. package/lib/lowcode/painter/panel-section/PageLayoutDisplay.js +103 -0
  192. package/lib/lowcode/painter/panel-section/SerialsSelector.js +4 -2
  193. package/lib/lowcode/painter/panel-section/SplitDisplay.js +24 -109
  194. package/lib/lowcode/painter/panel-section/StylePanel/index.js +10 -4
  195. package/lib/lowcode/painter/panel-section/TreeRootEditor.js +2 -2
  196. package/lib/lowcode/painter/style/action-bind-modal.less +3 -3
  197. package/lib/lowcode/painter/style/design.less +1 -1
  198. package/lib/lowcode/painter/style/page-layout-display.less +28 -0
  199. package/lib/lowcode/painter/style/panel-item.less +1 -1
  200. package/lib/lowcode/painter/style/split-display.less +0 -9
  201. package/lib/lowcode/preview/index.js +4 -2
  202. package/lib/lowcode/view/Canvas.js +5 -6
  203. package/lib/lowcode/view/Page.js +2 -3
  204. package/lib/lowcode/view/lc-components/Box/FunctionDesign.js +3 -2
  205. package/lib/lowcode/view/lc-components/Box/meta.json +3 -3
  206. package/lib/lowcode/view/lc-components/Button/index.js +2 -6
  207. package/lib/lowcode/view/lc-components/Button/meta.json +3 -3
  208. package/lib/lowcode/view/lc-components/Dialog/FunctionDesign.js +2 -9
  209. package/lib/lowcode/view/lc-components/Dialog/index.js +114 -19
  210. package/lib/lowcode/view/lc-components/Dialog/meta.json +65 -42
  211. package/lib/lowcode/view/lc-components/Drawer/meta.json +8 -20
  212. package/lib/lowcode/view/lc-components/Form/FunctionDesign.js +20 -31
  213. package/lib/lowcode/view/lc-components/Form/FunctionPreview.js +8 -1
  214. package/lib/lowcode/view/lc-components/Form/index.js +110 -18
  215. package/lib/lowcode/view/lc-components/Form/meta.json +16 -10
  216. package/lib/lowcode/view/lc-components/ImEx/FunctionDesign.js +8 -3
  217. package/lib/lowcode/view/lc-components/ImEx/index.js +257 -8
  218. package/lib/lowcode/view/lc-components/ImEx/index.less +7 -0
  219. package/lib/lowcode/view/lc-components/ImEx/meta.json +55 -23
  220. package/lib/lowcode/view/lc-components/Layout/FunctionDesign.js +11 -18
  221. package/lib/lowcode/view/lc-components/Layout/meta.json +2 -2
  222. package/lib/lowcode/view/lc-components/Page/meta.json +2 -2
  223. package/lib/lowcode/view/lc-components/PageContent/index.js +7 -8
  224. package/lib/lowcode/view/lc-components/PageFooter/index.js +2 -5
  225. package/lib/lowcode/view/lc-components/PageHeader/index.js +4 -5
  226. package/lib/lowcode/view/lc-components/PageLayout/FunctionDesign.js +71 -0
  227. package/lib/lowcode/view/lc-components/PageLayout/FunctionLive.js +17 -0
  228. package/lib/lowcode/view/lc-components/PageLayout/FunctionPreview.js +17 -0
  229. package/lib/lowcode/view/lc-components/PageLayout/index.js +40 -0
  230. package/lib/lowcode/view/lc-components/PageLayout/meta.json +47 -0
  231. package/lib/lowcode/view/lc-components/PageModal/index.js +11 -14
  232. package/lib/lowcode/view/lc-components/Section/FunctionDesign.js +2 -8
  233. package/lib/lowcode/view/lc-components/Section/meta.json +2 -2
  234. package/lib/lowcode/view/lc-components/Split/FunctionDesign.js +19 -20
  235. package/lib/lowcode/view/lc-components/Split/index.js +2 -6
  236. package/lib/lowcode/view/lc-components/Split/meta.json +4 -4
  237. package/lib/lowcode/view/lc-components/Table/components/TopImex.js +145 -0
  238. package/lib/lowcode/view/lc-components/Table/index.js +123 -38
  239. package/lib/lowcode/view/lc-components/Table/meta.json +17 -11
  240. package/lib/lowcode/view/lc-components/Tabs/FunctionDesign.js +11 -18
  241. package/lib/lowcode/view/lc-components/Tabs/index.js +3 -1
  242. package/lib/lowcode/view/lc-components/Tabs/meta.json +3 -3
  243. package/lib/lowcode/view/lc-components/Tree/FunctionDesign.js +2 -1
  244. package/lib/lowcode/view/lc-components/Tree/index.js +65 -16
  245. package/lib/lowcode/view/lc-components/Tree/meta.json +62 -7
  246. package/lib/lowcode/view/lc-components/Wrapper.js +8 -10
  247. package/lib/services.js +0 -25
  248. package/lib/upload/FilesWall/file.png +0 -0
  249. package/lib/upload/FilesWall/index.js +429 -0
  250. package/lib/upload/FilesWall/index.less +74 -0
  251. package/lib/upload/Form/index.js +2 -1
  252. package/lib/upload/FormItem/index.js +3 -5
  253. package/lib/upload/index.js +8 -1
  254. package/lib/utils/action.js +2 -2
  255. package/package.json +5 -4
@@ -24,7 +24,7 @@ var _excluded = ["type", "key", "valueKey", "name", "desc", "default", "props",
24
24
  var AttrsPanel = function AttrsPanel(_ref) {
25
25
  var _nextRef$current2, _nextRef$current3;
26
26
  var meta = _ref.meta,
27
- value = _ref.value,
27
+ nodeId = _ref.nodeId,
28
28
  onChange = _ref.onChange;
29
29
  var nextRef = (0, _react.useRef)(null);
30
30
  var factory = (0, _react.useRef)(new _panelItemFactory.default());
@@ -34,10 +34,18 @@ var AttrsPanel = function AttrsPanel(_ref) {
34
34
  _useBoolean2$ = _useBoolean2[1],
35
35
  setTrue = _useBoolean2$.setTrue,
36
36
  setFalse = _useBoolean2$.setFalse;
37
- var context = (0, _ContextProvider.useContext)();
38
- var handleChange = (0, _ahooks.useMemoizedFn)(function (field, val, repositioning) {
37
+ var node = (0, _ContextProvider.useGet)({
38
+ id: nodeId,
39
+ path: 'props'
40
+ });
41
+ var handleChange = (0, _ahooks.useMemoizedFn)(function (field, val, _ref2) {
39
42
  var _nextRef$current;
40
- onChange(field, val, repositioning);
43
+ var repositioning = _ref2.repositioning,
44
+ before = _ref2.before;
45
+ onChange(field, val, {
46
+ repositioning: repositioning,
47
+ before: before
48
+ });
41
49
  if ((_nextRef$current = nextRef.current) !== null && _nextRef$current !== void 0 && _nextRef$current.autoClose) {
42
50
  setFalse();
43
51
  }
@@ -52,25 +60,23 @@ var AttrsPanel = function AttrsPanel(_ref) {
52
60
  setTrue();
53
61
  });
54
62
  var renderPanelItems = (0, _ahooks.useMemoizedFn)(function (items, dynamicProps) {
55
- var _context$componentMap = context.componentMap.get(value.id).api.getSelfAndParentLCData(),
56
- node = _context$componentMap.node;
57
- return items.map(function (_ref2) {
58
- var type = _ref2.type,
59
- key = _ref2.key,
60
- valueKey = _ref2.valueKey,
61
- name = _ref2.name,
62
- desc = _ref2.desc,
63
- defaultValue = _ref2.default,
64
- props = _ref2.props,
65
- wrapper = _ref2.wrapper,
66
- wrapperProps = _ref2.wrapperProps,
67
- next = _ref2.next,
68
- repositioning = _ref2.repositioning,
69
- rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
63
+ return items.map(function (_ref3) {
64
+ var type = _ref3.type,
65
+ key = _ref3.key,
66
+ valueKey = _ref3.valueKey,
67
+ name = _ref3.name,
68
+ desc = _ref3.desc,
69
+ defaultValue = _ref3.default,
70
+ props = _ref3.props,
71
+ wrapper = _ref3.wrapper,
72
+ wrapperProps = _ref3.wrapperProps,
73
+ next = _ref3.next,
74
+ repositioning = _ref3.repositioning,
75
+ rest = (0, _objectWithoutProperties2.default)(_ref3, _excluded);
70
76
  var Comp = factory.current.getPanelItemFor((0, _lodash.startsWith)(type, '_') ? 'dynamic' : type, type);
71
77
  if (type === 'group') {
72
78
  return /*#__PURE__*/_react.default.createElement(Comp, {
73
- nodeId: value.id,
79
+ nodeId: nodeId,
74
80
  key: key,
75
81
  field: key,
76
82
  label: name,
@@ -81,26 +87,29 @@ var AttrsPanel = function AttrsPanel(_ref) {
81
87
  desc: desc
82
88
  }, renderPanelItems(props || [], dynamicProps));
83
89
  }
84
- var _originalVal = (0, _lodash.get)(node.props, valueKey || key);
90
+ var _originalVal = (0, _lodash.get)(node, valueKey || key);
85
91
  var comp = Comp && /*#__PURE__*/_react.default.createElement(Comp, (0, _extends2.default)({
86
- nodeId: value.id,
92
+ nodeId: nodeId,
87
93
  key: key,
88
94
  defaultValue: (0, _lodash.isNil)(_originalVal) ? defaultValue : _originalVal,
89
95
  next: next !== null && next !== void 0 && next.props ? function (_dp) {
90
96
  return goNext(next, _dp);
91
97
  } : null,
92
- onChange: function onChange(val) {
93
- return handleChange(valueKey || key, val, repositioning);
98
+ onChange: function onChange(val, before) {
99
+ return handleChange(valueKey || key, val, {
100
+ repositioning: repositioning,
101
+ before: before
102
+ });
94
103
  },
95
104
  size: "small",
96
- settings: node.props,
105
+ settings: node,
97
106
  renderPanelItems: renderPanelItems
98
107
  }, rest, dynamicProps));
99
108
  if (wrapper === 'hidden') return comp;
100
109
  var Wrapper = wrapper === 'collapse' ? _Collapse.default : _PanelItem.default;
101
110
  return /*#__PURE__*/_react.default.createElement(Wrapper, (0, _extends2.default)({
102
111
  key: key,
103
- nodeId: value.id,
112
+ nodeId: nodeId,
104
113
  field: key,
105
114
  label: name,
106
115
  desc: desc
@@ -113,7 +122,7 @@ var AttrsPanel = function AttrsPanel(_ref) {
113
122
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
114
123
  }
115
124
  return renderPanelItems(meta.props);
116
- }, [value]);
125
+ }, [nodeId]);
117
126
  (0, _react.useEffect)(function () {
118
127
  if (!open) {
119
128
  nextRef.current = null;
@@ -121,7 +130,7 @@ var AttrsPanel = function AttrsPanel(_ref) {
121
130
  }, [open]);
122
131
  return /*#__PURE__*/_react.default.createElement("div", {
123
132
  id: "lc-painter-panel-attrs-container",
124
- className: (0, _classnames.default)(_panelAttrs.default['lc-painter-panel-attrs'], (0, _defineProperty2.default)((0, _defineProperty2.default)({}, _panelAttrs.default.hidden, !value), _panelAttrs.default.showNext, open))
133
+ className: (0, _classnames.default)(_panelAttrs.default['lc-painter-panel-attrs'], (0, _defineProperty2.default)((0, _defineProperty2.default)({}, _panelAttrs.default.hidden, !nodeId), _panelAttrs.default.showNext, open))
125
134
  }, PropsComps, /*#__PURE__*/_react.default.createElement(_antd.Drawer, {
126
135
  visible: open,
127
136
  width: 320,
@@ -70,7 +70,7 @@ function _default(_ref) {
70
70
  }
71
71
  function pubEvent(event, eventName, ctx) {
72
72
  if (event.active && event.over && event.active.data.current.id !== event.over.data.current.id) {
73
- var parentNode = ctx.componentMap.get(event.over.data.current.id).api.getSelfAndParentLCData().parent;
73
+ var parentNode = ctx.componentMap.get(event.over.data.current.id).api.getSelfAndParentData().parent;
74
74
 
75
75
  // console.log('event.over.data.current.type', event.over.data.current.type)
76
76
  var actionSide = getAction(event.over.data.current.type, event.over.data.current.component.component, event.active.rect.current.translated, event.over.rect, parentNode);
@@ -11,7 +11,7 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/obje
11
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
  var monaco = _interopRequireWildcard(require("monaco-editor"));
14
- var _excluded = ["onChange", "isFullscreen"],
14
+ var _excluded = ["onChange", "isFullscreen", "style"],
15
15
  _excluded2 = ["children", "language", "options"];
16
16
  /**
17
17
  * BaseEditor 组件是一个封装了 monaco 编辑器的 React 组件,支持前向 ref 引用。
@@ -49,6 +49,7 @@ var _excluded = ["onChange", "isFullscreen"],
49
49
  var BaseEditor = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
50
50
  var onChange = _ref.onChange,
51
51
  isFullscreen = _ref.isFullscreen,
52
+ style = _ref.style,
52
53
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
53
54
  var children = props.children,
54
55
  _props$language = props.language,
@@ -109,7 +110,7 @@ var BaseEditor = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
109
110
  };
110
111
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
111
112
  ref: editorRef,
112
- style: editorStyle
113
+ style: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, editorStyle), style)
113
114
  }, rest));
114
115
  });
115
116
  var _default = exports.default = /*#__PURE__*/_react.default.memo(BaseEditor);
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _ahooks = require("ahooks");
12
+ var _lodash = require("lodash");
13
+ var _antd = require("luck-design/antd");
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+ var _utils = require("@luck-design-biz/base/utils");
16
+ var _codeEditor = require("../code-editor");
17
+ var _frontRules = require("./meta/frontRules");
18
+ var _I18N_PREFIX_ = 'luckda.lowcode.painter.panel-section.fieldsSetting.checkRules';
19
+ var FormItem = (0, _styledComponents.default)(_antd.Form.Item).withConfig({
20
+ displayName: "FormItem",
21
+ componentId: "luckda-6530__sc-d9mrmm-0"
22
+ })(["margin-bottom:0;"]);
23
+ var CheckRules = function CheckRules(_ref) {
24
+ var form = _ref.form,
25
+ fields = _ref.fields,
26
+ rule = _ref.rule,
27
+ fieldData = _ref.fieldData,
28
+ ruleRef = _ref.ruleRef;
29
+ var _useState = (0, _react.useState)(),
30
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
31
+ verifyType = _useState2[0],
32
+ setVerifyType = _useState2[1];
33
+ var _useState3 = (0, _react.useState)(''),
34
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
35
+ expression = _useState4[0],
36
+ setExpression = _useState4[1];
37
+ var jsRef = (0, _react.useRef)();
38
+ (0, _react.useImperativeHandle)(ruleRef, function () {
39
+ return jsRef.current;
40
+ });
41
+ (0, _ahooks.useMount)(function () {
42
+ if (rule.uid) {
43
+ form.setFieldsValue({
44
+ verifyType: rule.verifyType
45
+ });
46
+ setExpression(rule.expression);
47
+ } else {
48
+ var defaultType = (0, _frontRules.getFrontRules)(fieldData.property)[0].key;
49
+ form.setFieldsValue({
50
+ verifyType: defaultType
51
+ });
52
+ setVerifyType(defaultType);
53
+ }
54
+ });
55
+ var frontRulesObj = (0, _ahooks.useCreation)(function () {
56
+ return (0, _lodash.keyBy)((0, _frontRules.getFrontRules)(fieldData.property), 'key');
57
+ }, []);
58
+ var frontRule = (0, _ahooks.useCreation)(function () {
59
+ var _frontRulesObj$verify;
60
+ setExpression(((_frontRulesObj$verify = frontRulesObj[verifyType]) === null || _frontRulesObj$verify === void 0 ? void 0 : _frontRulesObj$verify.defaultCode) || '');
61
+ if (verifyType) return frontRulesObj[verifyType];
62
+ return {
63
+ noCode: false
64
+ };
65
+ }, [verifyType]);
66
+ return /*#__PURE__*/_react.default.createElement(_antd.Form, {
67
+ layout: "vertical"
68
+ }, /*#__PURE__*/_react.default.createElement(_antd.Row, {
69
+ gutter: 8
70
+ }, /*#__PURE__*/_react.default.createElement(_antd.Col, {
71
+ span: 24
72
+ }, /*#__PURE__*/_react.default.createElement(FormItem, {
73
+ label: (0, _utils.formatMessage)({
74
+ id: "".concat(_I18N_PREFIX_, ".verifyType"),
75
+ label: '校验规则'
76
+ })
77
+ }, form.getFieldDecorator('verifyType', {
78
+ rules: [{
79
+ required: true,
80
+ message: (0, _utils.formatMessage)({
81
+ id: "".concat(_I18N_PREFIX_, ".message.verifyType"),
82
+ label: '请选择校验规则'
83
+ })
84
+ }]
85
+ })( /*#__PURE__*/_react.default.createElement(_antd.Select, {
86
+ onChange: function onChange(val) {
87
+ console.log('setVerifyType');
88
+ setVerifyType(val);
89
+ }
90
+ }, (0, _frontRules.getFrontRules)(fieldData.property).map(function (rule) {
91
+ return /*#__PURE__*/_react.default.createElement(Option, {
92
+ key: rule.key,
93
+ value: rule.key
94
+ }, rule.label);
95
+ }))))), !frontRule.noCode && /*#__PURE__*/_react.default.createElement(_antd.Col, {
96
+ span: 24
97
+ }, /*#__PURE__*/_react.default.createElement("span", {
98
+ style: {
99
+ fontSize: '14px',
100
+ marginBottom: '16px',
101
+ color: 'rgba(0, 0, 0, 0.85)'
102
+ }
103
+ }, (0, _utils.formatMessage)({
104
+ id: "".concat(_I18N_PREFIX_, ".logic"),
105
+ label: '校验逻辑'
106
+ })), /*#__PURE__*/_react.default.createElement(_codeEditor.JSEditor, {
107
+ style: {
108
+ height: '300px',
109
+ border: '1px solid rgb(217, 217, 217)',
110
+ borderRadius: '4px',
111
+ padding: '12px'
112
+ },
113
+ ref: jsRef
114
+ }, expression))));
115
+ };
116
+ var _default = exports.default = CheckRules;
@@ -36,7 +36,7 @@ var CheckRules = function CheckRules(_ref) {
36
36
  }, /*#__PURE__*/_react.default.createElement(_antd.Row, {
37
37
  gutter: 8
38
38
  }, /*#__PURE__*/_react.default.createElement(_antd.Col, {
39
- span: 12
39
+ span: 24
40
40
  }, /*#__PURE__*/_react.default.createElement(FormItem, {
41
41
  label: (0, _utils.formatMessage)({
42
42
  id: "".concat(_I18N_PREFIX_, ".verifyType"),
@@ -57,31 +57,6 @@ var CheckRules = function CheckRules(_ref) {
57
57
  }, val));
58
58
  return types;
59
59
  }, []))))), /*#__PURE__*/_react.default.createElement(_antd.Col, {
60
- span: 12
61
- }, /*#__PURE__*/_react.default.createElement(FormItem, {
62
- label: (0, _utils.formatMessage)({
63
- id: "".concat(_I18N_PREFIX_, ".verifyScope"),
64
- label: '校验类型'
65
- })
66
- }, form.getFieldDecorator('verifyScope', {
67
- rules: [{
68
- required: true,
69
- message: (0, _utils.formatMessage)({
70
- id: "".concat(_I18N_PREFIX_, ".message.verifyScope"),
71
- label: '请选择校验类型'
72
- })
73
- }]
74
- })( /*#__PURE__*/_react.default.createElement(_antd.Select, null, /*#__PURE__*/_react.default.createElement(Option, {
75
- value: 0
76
- }, (0, _utils.formatMessage)({
77
- id: "".concat(_I18N_PREFIX_, ".frontend"),
78
- label: '前端'
79
- })), /*#__PURE__*/_react.default.createElement(Option, {
80
- value: 1
81
- }, (0, _utils.formatMessage)({
82
- id: "".concat(_I18N_PREFIX_, ".backend"),
83
- label: '后端'
84
- })))))), /*#__PURE__*/_react.default.createElement(_antd.Col, {
85
60
  span: 24
86
61
  }, /*#__PURE__*/_react.default.createElement(FormItem, {
87
62
  label: (0, _utils.formatMessage)({
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
@@ -9,12 +10,15 @@ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helper
9
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
11
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
12
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
- var _react = _interopRequireDefault(require("react"));
13
+ var _react = _interopRequireWildcard(require("react"));
13
14
  var _ahooks = require("ahooks");
14
15
  var _antd = require("luck-design/antd");
16
+ var _utils = require("@luck-design-biz/base/utils");
15
17
  var _CheckRules = _interopRequireDefault(require("./CheckRules"));
18
+ var _CheckFrontRules = _interopRequireDefault(require("./CheckFrontRules"));
16
19
  var _apiUrl = require("../../../constants/api-url");
17
20
  var _constants = require("../../../constants");
21
+ var _I18N_PREFIX_ = 'luckda.lowcode.painter.panel-section.fieldsSetting';
18
22
  var FieldRulesModal = _antd.Form.create({
19
23
  name: 'field-rules-form'
20
24
  })(function (_ref) {
@@ -34,6 +38,7 @@ var FieldRulesModal = _antd.Form.create({
34
38
  _useBoolean2$ = _useBoolean2[1],
35
39
  setTrue = _useBoolean2$.setTrue,
36
40
  setFalse = _useBoolean2$.setFalse;
41
+ var frontRuleRef = (0, _react.useRef)();
37
42
  var handleOk = (0, _ahooks.useMemoizedFn)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2() {
38
43
  return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
39
44
  while (1) switch (_context2.prev = _context2.next) {
@@ -41,7 +46,8 @@ var FieldRulesModal = _antd.Form.create({
41
46
  setTrue();
42
47
  form.validateFields( /*#__PURE__*/function () {
43
48
  var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(err, vals) {
44
- var request, data, _yield$request, code;
49
+ var _frontRuleRef$current;
50
+ var request, data, expression, _val, _yield$request, code;
45
51
  return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
46
52
  while (1) switch (_context.prev = _context.next) {
47
53
  case 0:
@@ -55,29 +61,35 @@ var FieldRulesModal = _antd.Form.create({
55
61
  data = {
56
62
  scope: _constants.FIELD_SCOPES.CHECK_RULES
57
63
  };
64
+ expression = (_frontRuleRef$current = frontRuleRef.current) === null || _frontRuleRef$current === void 0 ? void 0 : _frontRuleRef$current.editor.getValue();
65
+ _val = expression ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, vals), {}, {
66
+ expression: expression
67
+ }) : vals;
58
68
  if (rule.uid) {
59
- data.ccmModuleFieldVerifies = [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, vals), {}, {
60
- uid: rule.uid
69
+ data.ccmModuleFieldVerifies = [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, _val), {}, {
70
+ uid: rule.uid,
71
+ verifyScope: (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? 0 : 1
61
72
  })];
62
73
  } else {
63
- data.ccmModuleFieldVerifies = [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, vals), {}, {
64
- dataModelKey: dataModelKey
74
+ data.ccmModuleFieldVerifies = [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, _val), {}, {
75
+ dataModelKey: dataModelKey,
76
+ verifyScope: (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? 0 : 1
65
77
  })];
66
78
  data.dataModelKey = dataModelKey;
67
79
  data.datasetBusinessUids = [fieldData.uid];
68
80
  data.moduleDatasetUid = datasetId;
69
81
  data.moduleUid = moduleId;
70
82
  }
71
- _context.next = 7;
83
+ _context.next = 9;
72
84
  return request(data);
73
- case 7:
85
+ case 9:
74
86
  _yield$request = _context.sent;
75
87
  code = _yield$request.code;
76
88
  setFalse();
77
89
  if (code === 1) {
78
- onClose(true);
90
+ onClose(true, (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? 0 : 1);
79
91
  }
80
- case 11:
92
+ case 13:
81
93
  case "end":
82
94
  return _context.stop();
83
95
  }
@@ -94,7 +106,10 @@ var FieldRulesModal = _antd.Form.create({
94
106
  }, _callee2);
95
107
  })));
96
108
  return /*#__PURE__*/_react.default.createElement(_antd.Modal, {
97
- title: condition === null || condition === void 0 || (_condition$FIELD_SCOP = condition[_constants.FIELD_SCOPES.CHECK_RULES]) === null || _condition$FIELD_SCOP === void 0 ? void 0 : _condition$FIELD_SCOP.scopeName,
109
+ title: (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? (0, _utils.formatMessage)({
110
+ id: "".concat(_I18N_PREFIX_, ".rules.front"),
111
+ label: '前端校验规则'
112
+ }) : condition === null || condition === void 0 || (_condition$FIELD_SCOP = condition[_constants.FIELD_SCOPES.CHECK_RULES]) === null || _condition$FIELD_SCOP === void 0 ? void 0 : _condition$FIELD_SCOP.scopeName,
98
113
  width: 800,
99
114
  visible: !!rule,
100
115
  getContainer: function getContainer() {
@@ -111,9 +126,15 @@ var FieldRulesModal = _antd.Form.create({
111
126
  },
112
127
  onOk: handleOk,
113
128
  onCancel: function onCancel() {
114
- return onClose(false);
129
+ return onClose(false, (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? 0 : 1);
115
130
  }
116
- }, /*#__PURE__*/_react.default.createElement(_CheckRules.default, {
131
+ }, (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' && /*#__PURE__*/_react.default.createElement(_CheckFrontRules.default, {
132
+ form: form,
133
+ rule: rule,
134
+ fields: fields,
135
+ ruleRef: frontRuleRef,
136
+ fieldData: fieldData
137
+ }), (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'back' && /*#__PURE__*/_react.default.createElement(_CheckRules.default, {
117
138
  form: form,
118
139
  rule: rule,
119
140
  condition: condition === null || condition === void 0 ? void 0 : condition[_constants.FIELD_SCOPES.CHECK_RULES],