@luck-design-biz/luckda 0.0.24-2 → 0.0.25-1

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 (466) hide show
  1. package/es/components/Builder/index.js +6 -4
  2. package/es/components/IconFont/index.js +5 -0
  3. package/es/components/LDActions/index.js +133 -0
  4. package/es/components/LDActions/index.less +65 -0
  5. package/es/components/LdAutoForm/index.js +1 -1
  6. package/es/components/LdCom/index.js +2 -1
  7. package/es/components/LdFormList/index.js +15 -10
  8. package/es/components/LdGrid/index.js +14 -8
  9. package/es/components/LdGridForm/index.js +5 -4
  10. package/es/components/LdRuntimeCom/index.js +20 -7
  11. package/es/components/LdTree/index.js +112 -31
  12. package/es/components/LdTree/index.less +6 -1
  13. package/es/helper/ldBuilder.js +28 -12
  14. package/es/helper/ldComBuild.js +29 -14
  15. package/es/index.js +1 -0
  16. package/es/locales/zh-CN.js +221 -0
  17. package/es/lowcode/constants/api-url.js +380 -262
  18. package/es/lowcode/constants/event-topics.js +4 -0
  19. package/es/lowcode/constants/index.js +30 -2
  20. package/es/lowcode/engine/factory/panel-item-factory/CheckboxStrategy.js +32 -0
  21. package/es/lowcode/engine/factory/panel-item-factory/index.js +2 -0
  22. package/es/lowcode/engine/meta/box.props.default.json +3 -2
  23. package/es/lowcode/engine/meta/box.props.json +1 -3
  24. package/es/lowcode/engine/meta/button.props.default.json +5 -2
  25. package/es/lowcode/engine/meta/button.props.json +8 -8
  26. package/es/lowcode/engine/meta/cardlist.props.default.json +4 -2
  27. package/es/lowcode/engine/meta/cardlist.props.json +1 -2
  28. package/es/lowcode/engine/meta/dialog.props.default.json +4 -2
  29. package/es/lowcode/engine/meta/dialog.props.json +0 -1
  30. package/es/lowcode/engine/meta/drawer.props.default.json +4 -2
  31. package/es/lowcode/engine/meta/drawer.props.json +0 -1
  32. package/es/lowcode/engine/meta/form.props.default.json +53 -4
  33. package/es/lowcode/engine/meta/form.props.json +584 -55
  34. package/es/lowcode/engine/meta/iframe.props.default.json +1 -1
  35. package/es/lowcode/engine/meta/iframe.props.json +1 -1
  36. package/es/lowcode/engine/meta/image.props.default.json +5 -2
  37. package/es/lowcode/engine/meta/image.props.json +1 -1
  38. package/es/lowcode/engine/meta/imex.props.default.json +5 -2
  39. package/es/lowcode/engine/meta/imex.props.json +1 -1
  40. package/es/lowcode/engine/meta/js-editor/auto-complete.json +152 -26
  41. package/es/lowcode/engine/meta/jsx.props.default.json +2 -1
  42. package/es/lowcode/engine/meta/jsx.props.json +10 -5
  43. package/es/lowcode/engine/meta/layout.props.default.json +5 -2
  44. package/es/lowcode/engine/meta/layout.props.json +1 -2
  45. package/es/lowcode/engine/meta/link.props.default.json +5 -2
  46. package/es/lowcode/engine/meta/link.props.json +2 -2
  47. package/es/lowcode/engine/meta/local/local.zh-cn.js +97 -0
  48. package/es/lowcode/engine/meta/page.props.default.json +12 -0
  49. package/es/lowcode/engine/meta/page.props.json +49 -0
  50. package/es/lowcode/engine/meta/pagecontent.props.default.json +6 -0
  51. package/es/lowcode/engine/meta/pagecontent.props.json +7 -0
  52. package/es/lowcode/engine/meta/pagefooter.props.default.json +6 -0
  53. package/es/lowcode/engine/meta/pagefooter.props.json +7 -0
  54. package/es/lowcode/engine/meta/pageheader.props.default.json +6 -0
  55. package/es/lowcode/engine/meta/pageheader.props.json +7 -0
  56. package/es/lowcode/engine/meta/section.props.default.json +5 -2
  57. package/es/lowcode/engine/meta/section.props.json +1 -1
  58. package/es/lowcode/engine/meta/split.props.default.json +9 -4
  59. package/es/lowcode/engine/meta/split.props.json +14 -29
  60. package/es/lowcode/engine/meta/table.props.default.json +23 -3
  61. package/es/lowcode/engine/meta/table.props.json +257 -55
  62. package/es/lowcode/engine/meta/tabs.props.default.json +16 -9
  63. package/es/lowcode/engine/meta/tabs.props.json +57 -81
  64. package/es/lowcode/engine/meta/text.props.default.json +5 -2
  65. package/es/lowcode/engine/meta/text.props.json +1 -1
  66. package/es/lowcode/engine/meta/tree.props.default.json +20 -7
  67. package/es/lowcode/engine/meta/tree.props.json +225 -79
  68. package/es/lowcode/engine/provider/ContextProvider/index.js +169 -0
  69. package/es/lowcode/engine/provider/RemoteSourceProvider.js +161 -0
  70. package/es/lowcode/engine/tools/dataProcess.js +64 -2
  71. package/es/lowcode/engine/tools/helper.js +96 -19
  72. package/es/lowcode/engine/tools/useCanvasRender.js +75 -0
  73. package/es/lowcode/engine/tools/usePromiseState.js +8 -6
  74. package/es/lowcode/engine/tools/useTodo.js +78 -0
  75. package/es/lowcode/index.js +1 -0
  76. package/es/lowcode/painter/Components.js +47 -21
  77. package/es/lowcode/painter/DesignOperator.js +47 -28
  78. package/es/lowcode/painter/DesignToolbar.js +86 -15
  79. package/es/lowcode/painter/I18n.js +2 -2
  80. package/es/lowcode/painter/Outline.js +31 -26
  81. package/es/lowcode/painter/Panel.js +100 -142
  82. package/es/lowcode/painter/Ribbon.js +1 -1
  83. package/es/lowcode/painter/components/ActionBindModal.js +293 -0
  84. package/es/lowcode/painter/components/AdvancePanel.js +140 -0
  85. package/es/lowcode/painter/components/AttrsPanel.js +145 -0
  86. package/es/lowcode/painter/components/Collapse.js +20 -9
  87. package/es/lowcode/painter/components/ColorInput.js +5 -3
  88. package/es/lowcode/painter/components/DragDrop/DragDropContext.js +137 -0
  89. package/es/lowcode/painter/components/DragDrop/DragDropWrapper.js +47 -0
  90. package/es/lowcode/painter/components/DragDrop/Overlay.js +8 -0
  91. package/es/lowcode/painter/components/DragDrop/TreeDragDropWrapper.js +67 -0
  92. package/es/lowcode/painter/components/FieldSelector.js +44 -0
  93. package/es/lowcode/painter/components/ListEditor.js +18 -9
  94. package/es/lowcode/painter/components/PanelItem.js +1 -1
  95. package/es/lowcode/painter/components/PopConfirm.js +10 -3
  96. package/es/lowcode/painter/components/SortBox.js +11 -4
  97. package/es/lowcode/painter/components/TreeEditor.js +13 -0
  98. package/es/lowcode/painter/components/code-editor/BaseEditor.js +14 -2
  99. package/es/lowcode/painter/components/code-editor/JSEditor.js +25 -14
  100. package/es/lowcode/painter/components/code-editor/JsonEditor.js +41 -0
  101. package/es/lowcode/painter/components/field-setting/BatchSetting.js +144 -0
  102. package/es/lowcode/painter/components/field-setting/CheckRules.js +126 -0
  103. package/es/lowcode/painter/components/field-setting/FieldAttrs.js +287 -0
  104. package/es/lowcode/painter/components/field-setting/FieldAttrsModal.js +290 -0
  105. package/es/lowcode/painter/components/field-setting/FieldDefaultValue.js +63 -0
  106. package/es/lowcode/painter/components/field-setting/FieldRulesModal.js +116 -0
  107. package/es/lowcode/painter/components/field-setting/SettingUI.js +419 -0
  108. package/es/lowcode/painter/components/field-setting/index.js +363 -0
  109. package/es/lowcode/painter/index.js +3 -1
  110. package/es/lowcode/painter/panel-section/ActionsEditor/ActionEditor.js +101 -0
  111. package/es/lowcode/painter/{components/actions-editor → panel-section/ActionsEditor}/index.js +74 -13
  112. package/es/lowcode/painter/panel-section/BlockEditor/index.js +24 -0
  113. package/es/lowcode/painter/panel-section/BlocksEditor/BlockEditorItem.js +44 -0
  114. package/es/lowcode/painter/panel-section/BlocksEditor/index.js +202 -0
  115. package/es/lowcode/painter/panel-section/DataSetSelector.js +115 -43
  116. package/es/lowcode/painter/panel-section/FieldsSetting.js +308 -0
  117. package/es/lowcode/painter/panel-section/Icon.js +14 -14
  118. package/es/lowcode/painter/panel-section/IconConditionSelector.js +111 -0
  119. package/es/lowcode/painter/panel-section/IconSelector.js +5 -2
  120. package/es/lowcode/painter/panel-section/ImpExp.js +91 -0
  121. package/es/lowcode/painter/panel-section/JSEditor.js +49 -0
  122. package/es/lowcode/painter/panel-section/LayoutRatio.js +6 -7
  123. package/es/lowcode/painter/panel-section/SerialsSelector.js +44 -0
  124. package/es/lowcode/painter/panel-section/SplitDisplay.js +248 -0
  125. package/es/lowcode/painter/panel-section/StylePanel/MainPanel.js +2 -2
  126. package/es/lowcode/painter/panel-section/StylePanel/StyleContext.js +2 -22
  127. package/es/lowcode/painter/panel-section/TabItems.js +46 -30
  128. package/es/lowcode/painter/panel-section/TableTopFilter.js +306 -0
  129. package/es/lowcode/painter/panel-section/TableZebra.js +66 -6
  130. package/es/lowcode/painter/panel-section/TreeRootEditor.js +78 -0
  131. package/es/lowcode/painter/services/toolbar.js +25 -0
  132. package/es/lowcode/painter/style/action-bind-modal.less +102 -0
  133. package/es/lowcode/painter/style/collapse.less +6 -0
  134. package/es/lowcode/painter/style/components.less +5 -4
  135. package/es/lowcode/painter/style/design.less +2 -3
  136. package/es/lowcode/painter/style/dragdrop.less +10 -0
  137. package/es/lowcode/painter/style/fields-setting.less +25 -0
  138. package/es/lowcode/painter/style/impexp.less +7 -0
  139. package/es/lowcode/painter/style/panel-attrs.less +43 -0
  140. package/es/lowcode/painter/style/panel.less +6 -37
  141. package/es/lowcode/painter/style/pop-confirm.less +9 -2
  142. package/es/lowcode/painter/style/split-display.less +28 -0
  143. package/es/lowcode/painter/style/treedragdrop.less +19 -0
  144. package/es/lowcode/preview/index.js +14 -0
  145. package/es/lowcode/view/Canvas.js +34 -139
  146. package/es/lowcode/view/Loading.js +6 -2
  147. package/es/lowcode/view/Page.js +16 -14
  148. package/es/lowcode/view/lc-components/Box/FunctionPreview.js +9 -0
  149. package/es/lowcode/view/lc-components/Box/index.js +11 -2
  150. package/es/lowcode/view/lc-components/Box/index.less +0 -1
  151. package/es/lowcode/view/lc-components/Box/meta.json +1 -3
  152. package/es/lowcode/view/lc-components/Button/FunctionDesign.js +8 -10
  153. package/es/lowcode/view/lc-components/Button/FunctionLive.js +3 -6
  154. package/es/lowcode/view/lc-components/Button/FunctionPreview.js +6 -0
  155. package/es/lowcode/view/lc-components/Button/index.js +43 -20
  156. package/es/lowcode/view/lc-components/Button/meta.json +8 -8
  157. package/es/lowcode/view/lc-components/CardList/FunctionPreview.js +9 -0
  158. package/es/lowcode/view/lc-components/CardList/index.js +1 -0
  159. package/es/lowcode/view/lc-components/CardList/meta.json +1 -2
  160. package/es/lowcode/view/lc-components/Dialog/FunctionDesign.js +17 -23
  161. package/es/lowcode/view/lc-components/Dialog/FunctionPreview.js +9 -0
  162. package/es/lowcode/view/lc-components/Dialog/index.js +1 -0
  163. package/es/lowcode/view/lc-components/Dialog/meta.json +0 -1
  164. package/es/lowcode/view/lc-components/Drawer/FunctionDesign.js +4 -2
  165. package/es/lowcode/view/lc-components/Drawer/FunctionPreview.js +9 -0
  166. package/es/lowcode/view/lc-components/Drawer/index.js +17 -0
  167. package/es/lowcode/view/lc-components/Drawer/index.less +3 -0
  168. package/es/lowcode/view/lc-components/Drawer/meta.json +0 -1
  169. package/es/lowcode/view/lc-components/Form/FunctionDesign.js +31 -2
  170. package/es/lowcode/view/lc-components/Form/FunctionPreview.js +9 -0
  171. package/es/lowcode/view/lc-components/Form/index.js +114 -8
  172. package/es/lowcode/view/lc-components/Form/index.less +5 -0
  173. package/es/lowcode/view/lc-components/Form/meta.json +534 -55
  174. package/es/lowcode/view/lc-components/Iframe/FunctionPreview.js +9 -0
  175. package/es/lowcode/view/lc-components/Iframe/index.js +1 -0
  176. package/es/lowcode/view/lc-components/Iframe/meta.json +1 -1
  177. package/es/lowcode/view/lc-components/ImEx/FunctionPreview.js +9 -0
  178. package/es/lowcode/view/lc-components/ImEx/index.js +1 -0
  179. package/es/lowcode/view/lc-components/ImEx/meta.json +1 -1
  180. package/es/lowcode/view/lc-components/Image/FunctionPreview.js +9 -0
  181. package/es/lowcode/view/lc-components/Image/index.js +1 -0
  182. package/es/lowcode/view/lc-components/Image/meta.json +1 -1
  183. package/es/lowcode/view/lc-components/JSX/FunctionPreview.js +9 -0
  184. package/es/lowcode/view/lc-components/JSX/index.js +19 -6
  185. package/es/lowcode/view/lc-components/JSX/meta.json +8 -5
  186. package/es/lowcode/view/lc-components/Layout/FunctionDesign.js +19 -17
  187. package/es/lowcode/view/lc-components/Layout/FunctionLive.js +3 -8
  188. package/es/lowcode/view/lc-components/Layout/FunctionPreview.js +9 -0
  189. package/es/lowcode/view/lc-components/Layout/index.js +1 -0
  190. package/es/lowcode/view/lc-components/Layout/meta.json +1 -2
  191. package/es/lowcode/view/lc-components/Link/FunctionPreview.js +9 -0
  192. package/es/lowcode/view/lc-components/Link/index.js +1 -0
  193. package/es/lowcode/view/lc-components/Link/meta.json +2 -2
  194. package/es/lowcode/view/lc-components/Page/meta.json +49 -0
  195. package/es/lowcode/view/lc-components/PageContent/index.js +53 -0
  196. package/es/lowcode/view/lc-components/PageContent/meta.json +9 -0
  197. package/es/lowcode/view/lc-components/PageFooter/index.js +38 -0
  198. package/es/lowcode/view/lc-components/PageFooter/meta.json +9 -0
  199. package/es/lowcode/view/lc-components/PageHeader/index.js +40 -0
  200. package/es/lowcode/view/lc-components/PageHeader/meta.json +9 -0
  201. package/es/lowcode/view/lc-components/PageModal/index.js +23 -0
  202. package/es/lowcode/view/lc-components/Section/FunctionPreview.js +9 -0
  203. package/es/lowcode/view/lc-components/Section/index.js +1 -0
  204. package/es/lowcode/view/lc-components/Section/meta.json +1 -1
  205. package/es/lowcode/view/lc-components/Split/FunctionDesign.js +59 -2
  206. package/es/lowcode/view/lc-components/Split/FunctionPreview.js +9 -0
  207. package/es/lowcode/view/lc-components/Split/index.js +46 -7
  208. package/es/lowcode/view/lc-components/Split/meta.json +10 -29
  209. package/es/lowcode/view/lc-components/Table/FunctionDesign.js +41 -4
  210. package/es/lowcode/view/lc-components/Table/FunctionPreview.js +9 -0
  211. package/es/lowcode/view/lc-components/Table/components/TopFilter.js +96 -0
  212. package/es/lowcode/view/lc-components/Table/index.js +365 -49
  213. package/es/lowcode/view/lc-components/Table/meta.json +229 -55
  214. package/es/lowcode/view/lc-components/Tabs/FunctionDesign.js +72 -2
  215. package/es/lowcode/view/lc-components/Tabs/FunctionLive.js +1 -0
  216. package/es/lowcode/view/lc-components/Tabs/FunctionPreview.js +10 -0
  217. package/es/lowcode/view/lc-components/Tabs/index.js +113 -10
  218. package/es/lowcode/view/lc-components/Tabs/meta.json +53 -81
  219. package/es/lowcode/view/lc-components/Text/FunctionPreview.js +9 -0
  220. package/es/lowcode/view/lc-components/Text/index.js +1 -0
  221. package/es/lowcode/view/lc-components/Text/meta.json +1 -1
  222. package/es/lowcode/view/lc-components/Tree/FunctionDesign.js +63 -3
  223. package/es/lowcode/view/lc-components/Tree/FunctionPreview.js +26 -0
  224. package/es/lowcode/view/lc-components/Tree/index.js +323 -8
  225. package/es/lowcode/view/lc-components/Tree/index.less +5 -0
  226. package/es/lowcode/view/lc-components/Tree/meta.json +224 -80
  227. package/es/lowcode/view/lc-components/Wrapper.js +44 -27
  228. package/es/lowcode/view/style/page.less +3 -0
  229. package/es/services.js +5 -3
  230. package/es/utils/grid.js +2 -2
  231. package/lib/components/Builder/index.js +4 -1
  232. package/lib/components/IconFont/index.js +11 -0
  233. package/lib/components/LDActions/index.js +141 -0
  234. package/lib/components/LDActions/index.less +65 -0
  235. package/lib/components/LdAutoForm/index.js +1 -1
  236. package/lib/components/LdCom/index.js +2 -1
  237. package/lib/components/LdFormList/index.js +14 -9
  238. package/lib/components/LdGrid/index.js +13 -7
  239. package/lib/components/LdGridForm/index.js +4 -3
  240. package/lib/components/LdRuntimeCom/index.js +21 -8
  241. package/lib/components/LdTree/index.js +112 -31
  242. package/lib/components/LdTree/index.less +6 -1
  243. package/lib/helper/ldBuilder.js +28 -12
  244. package/lib/helper/ldComBuild.js +27 -12
  245. package/lib/index.js +8 -0
  246. package/lib/locales/zh-CN.js +227 -0
  247. package/lib/lowcode/constants/api-url.js +382 -263
  248. package/lib/lowcode/constants/event-topics.js +5 -1
  249. package/lib/lowcode/constants/index.js +31 -3
  250. package/lib/lowcode/engine/factory/panel-item-factory/CheckboxStrategy.js +38 -0
  251. package/lib/lowcode/engine/factory/panel-item-factory/index.js +2 -0
  252. package/lib/lowcode/engine/meta/box.props.default.json +3 -2
  253. package/lib/lowcode/engine/meta/box.props.json +1 -3
  254. package/lib/lowcode/engine/meta/button.props.default.json +5 -2
  255. package/lib/lowcode/engine/meta/button.props.json +8 -8
  256. package/lib/lowcode/engine/meta/cardlist.props.default.json +4 -2
  257. package/lib/lowcode/engine/meta/cardlist.props.json +1 -2
  258. package/lib/lowcode/engine/meta/dialog.props.default.json +4 -2
  259. package/lib/lowcode/engine/meta/dialog.props.json +0 -1
  260. package/lib/lowcode/engine/meta/drawer.props.default.json +4 -2
  261. package/lib/lowcode/engine/meta/drawer.props.json +0 -1
  262. package/lib/lowcode/engine/meta/form.props.default.json +53 -4
  263. package/lib/lowcode/engine/meta/form.props.json +584 -55
  264. package/lib/lowcode/engine/meta/iframe.props.default.json +1 -1
  265. package/lib/lowcode/engine/meta/iframe.props.json +1 -1
  266. package/lib/lowcode/engine/meta/image.props.default.json +5 -2
  267. package/lib/lowcode/engine/meta/image.props.json +1 -1
  268. package/lib/lowcode/engine/meta/imex.props.default.json +5 -2
  269. package/lib/lowcode/engine/meta/imex.props.json +1 -1
  270. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +152 -26
  271. package/lib/lowcode/engine/meta/jsx.props.default.json +2 -1
  272. package/lib/lowcode/engine/meta/jsx.props.json +10 -5
  273. package/lib/lowcode/engine/meta/layout.props.default.json +5 -2
  274. package/lib/lowcode/engine/meta/layout.props.json +1 -2
  275. package/lib/lowcode/engine/meta/link.props.default.json +5 -2
  276. package/lib/lowcode/engine/meta/link.props.json +2 -2
  277. package/lib/lowcode/engine/meta/local/local.zh-cn.js +103 -0
  278. package/lib/lowcode/engine/meta/page.props.default.json +12 -0
  279. package/lib/lowcode/engine/meta/page.props.json +49 -0
  280. package/lib/lowcode/engine/meta/pagecontent.props.default.json +6 -0
  281. package/lib/lowcode/engine/meta/pagecontent.props.json +7 -0
  282. package/lib/lowcode/engine/meta/pagefooter.props.default.json +6 -0
  283. package/lib/lowcode/engine/meta/pagefooter.props.json +7 -0
  284. package/lib/lowcode/engine/meta/pageheader.props.default.json +6 -0
  285. package/lib/lowcode/engine/meta/pageheader.props.json +7 -0
  286. package/lib/lowcode/engine/meta/section.props.default.json +5 -2
  287. package/lib/lowcode/engine/meta/section.props.json +1 -1
  288. package/lib/lowcode/engine/meta/split.props.default.json +9 -4
  289. package/lib/lowcode/engine/meta/split.props.json +14 -29
  290. package/lib/lowcode/engine/meta/table.props.default.json +23 -3
  291. package/lib/lowcode/engine/meta/table.props.json +257 -55
  292. package/lib/lowcode/engine/meta/tabs.props.default.json +16 -9
  293. package/lib/lowcode/engine/meta/tabs.props.json +57 -81
  294. package/lib/lowcode/engine/meta/text.props.default.json +5 -2
  295. package/lib/lowcode/engine/meta/text.props.json +1 -1
  296. package/lib/lowcode/engine/meta/tree.props.default.json +20 -7
  297. package/lib/lowcode/engine/meta/tree.props.json +225 -79
  298. package/lib/lowcode/engine/provider/ContextProvider/index.js +177 -0
  299. package/lib/lowcode/engine/provider/RemoteSourceProvider.js +169 -0
  300. package/lib/lowcode/engine/tools/dataProcess.js +64 -1
  301. package/lib/lowcode/engine/tools/helper.js +100 -18
  302. package/lib/lowcode/engine/tools/useCanvasRender.js +90 -0
  303. package/lib/lowcode/engine/tools/usePromiseState.js +7 -5
  304. package/lib/lowcode/engine/tools/useTodo.js +85 -0
  305. package/lib/lowcode/index.js +7 -0
  306. package/lib/lowcode/painter/Components.js +46 -20
  307. package/lib/lowcode/painter/DesignOperator.js +45 -26
  308. package/lib/lowcode/painter/DesignToolbar.js +82 -11
  309. package/lib/lowcode/painter/I18n.js +1 -1
  310. package/lib/lowcode/painter/Outline.js +29 -24
  311. package/lib/lowcode/painter/Panel.js +97 -139
  312. package/lib/lowcode/painter/Ribbon.js +1 -1
  313. package/lib/lowcode/painter/components/ActionBindModal.js +300 -0
  314. package/lib/lowcode/painter/components/AdvancePanel.js +148 -0
  315. package/lib/lowcode/painter/components/AttrsPanel.js +153 -0
  316. package/lib/lowcode/painter/components/Collapse.js +20 -9
  317. package/lib/lowcode/painter/components/ColorInput.js +5 -3
  318. package/lib/lowcode/painter/components/DragDrop/DragDropContext.js +146 -0
  319. package/lib/lowcode/painter/components/DragDrop/DragDropWrapper.js +54 -0
  320. package/lib/lowcode/painter/components/DragDrop/Overlay.js +15 -0
  321. package/lib/lowcode/painter/components/DragDrop/TreeDragDropWrapper.js +75 -0
  322. package/lib/lowcode/painter/components/FieldSelector.js +52 -0
  323. package/lib/lowcode/painter/components/ListEditor.js +17 -8
  324. package/lib/lowcode/painter/components/PanelItem.js +1 -1
  325. package/lib/lowcode/painter/components/PopConfirm.js +10 -3
  326. package/lib/lowcode/painter/components/SortBox.js +12 -5
  327. package/lib/lowcode/painter/components/TreeEditor.js +20 -0
  328. package/lib/lowcode/painter/components/code-editor/BaseEditor.js +14 -2
  329. package/lib/lowcode/painter/components/code-editor/JSEditor.js +25 -14
  330. package/lib/lowcode/painter/components/code-editor/JsonEditor.js +48 -0
  331. package/lib/lowcode/painter/components/field-setting/BatchSetting.js +151 -0
  332. package/lib/lowcode/painter/components/field-setting/CheckRules.js +133 -0
  333. package/lib/lowcode/painter/components/field-setting/FieldAttrs.js +295 -0
  334. package/lib/lowcode/painter/components/field-setting/FieldAttrsModal.js +298 -0
  335. package/lib/lowcode/painter/components/field-setting/FieldDefaultValue.js +70 -0
  336. package/lib/lowcode/painter/components/field-setting/FieldRulesModal.js +123 -0
  337. package/lib/lowcode/painter/components/field-setting/SettingUI.js +427 -0
  338. package/lib/lowcode/painter/components/field-setting/index.js +370 -0
  339. package/lib/lowcode/painter/index.js +3 -1
  340. package/lib/lowcode/painter/{components/actions-editor → panel-section/ActionsEditor}/ActionEditor.js +20 -66
  341. package/lib/lowcode/painter/{components/actions-editor → panel-section/ActionsEditor}/index.js +71 -10
  342. package/lib/lowcode/painter/panel-section/BlockEditor/index.js +31 -0
  343. package/lib/lowcode/painter/panel-section/BlocksEditor/BlockEditorItem.js +51 -0
  344. package/lib/lowcode/painter/panel-section/BlocksEditor/index.js +208 -0
  345. package/lib/lowcode/painter/panel-section/DataSetSelector.js +112 -40
  346. package/lib/lowcode/painter/panel-section/FieldsSetting.js +316 -0
  347. package/lib/lowcode/painter/panel-section/Icon.js +16 -14
  348. package/lib/lowcode/painter/panel-section/IconConditionSelector.js +119 -0
  349. package/lib/lowcode/painter/panel-section/IconSelector.js +5 -2
  350. package/lib/lowcode/painter/panel-section/ImpExp.js +98 -0
  351. package/lib/lowcode/painter/panel-section/JSEditor.js +57 -0
  352. package/lib/lowcode/painter/panel-section/LayoutRatio.js +5 -6
  353. package/lib/lowcode/painter/panel-section/SerialsSelector.js +51 -0
  354. package/lib/lowcode/painter/panel-section/SplitDisplay.js +256 -0
  355. package/lib/lowcode/painter/panel-section/StylePanel/MainPanel.js +2 -2
  356. package/lib/lowcode/painter/panel-section/StylePanel/StyleContext.js +3 -23
  357. package/lib/lowcode/painter/panel-section/TabItems.js +45 -29
  358. package/lib/lowcode/painter/panel-section/TableTopFilter.js +314 -0
  359. package/lib/lowcode/painter/panel-section/TableZebra.js +67 -6
  360. package/lib/lowcode/painter/panel-section/TreeRootEditor.js +86 -0
  361. package/lib/lowcode/painter/services/toolbar.js +32 -0
  362. package/lib/lowcode/painter/style/action-bind-modal.less +102 -0
  363. package/lib/lowcode/painter/style/collapse.less +6 -0
  364. package/lib/lowcode/painter/style/components.less +5 -4
  365. package/lib/lowcode/painter/style/design.less +2 -3
  366. package/lib/lowcode/painter/style/dragdrop.less +10 -0
  367. package/lib/lowcode/painter/style/fields-setting.less +25 -0
  368. package/lib/lowcode/painter/style/impexp.less +7 -0
  369. package/lib/lowcode/painter/style/panel-attrs.less +43 -0
  370. package/lib/lowcode/painter/style/panel.less +6 -37
  371. package/lib/lowcode/painter/style/pop-confirm.less +9 -2
  372. package/lib/lowcode/painter/style/split-display.less +28 -0
  373. package/lib/lowcode/painter/style/treedragdrop.less +19 -0
  374. package/lib/lowcode/preview/index.js +21 -0
  375. package/lib/lowcode/view/Canvas.js +32 -145
  376. package/lib/lowcode/view/Loading.js +6 -2
  377. package/lib/lowcode/view/Page.js +12 -10
  378. package/lib/lowcode/view/lc-components/Box/FunctionPreview.js +16 -0
  379. package/lib/lowcode/view/lc-components/Box/index.js +11 -2
  380. package/lib/lowcode/view/lc-components/Box/index.less +0 -1
  381. package/lib/lowcode/view/lc-components/Box/meta.json +1 -3
  382. package/lib/lowcode/view/lc-components/Button/FunctionDesign.js +8 -10
  383. package/lib/lowcode/view/lc-components/Button/FunctionLive.js +3 -6
  384. package/lib/lowcode/view/lc-components/Button/FunctionPreview.js +13 -0
  385. package/lib/lowcode/view/lc-components/Button/index.js +41 -18
  386. package/lib/lowcode/view/lc-components/Button/meta.json +8 -8
  387. package/lib/lowcode/view/lc-components/CardList/FunctionPreview.js +16 -0
  388. package/lib/lowcode/view/lc-components/CardList/index.js +1 -0
  389. package/lib/lowcode/view/lc-components/CardList/meta.json +1 -2
  390. package/lib/lowcode/view/lc-components/Dialog/FunctionDesign.js +16 -23
  391. package/lib/lowcode/view/lc-components/Dialog/FunctionPreview.js +16 -0
  392. package/lib/lowcode/view/lc-components/Dialog/index.js +1 -0
  393. package/lib/lowcode/view/lc-components/Dialog/meta.json +0 -1
  394. package/lib/lowcode/view/lc-components/Drawer/FunctionDesign.js +4 -2
  395. package/lib/lowcode/view/lc-components/Drawer/FunctionPreview.js +16 -0
  396. package/lib/lowcode/view/lc-components/Drawer/index.js +17 -0
  397. package/lib/lowcode/view/lc-components/Drawer/index.less +3 -0
  398. package/lib/lowcode/view/lc-components/Drawer/meta.json +0 -1
  399. package/lib/lowcode/view/lc-components/Form/FunctionDesign.js +32 -2
  400. package/lib/lowcode/view/lc-components/Form/FunctionPreview.js +16 -0
  401. package/lib/lowcode/view/lc-components/Form/index.js +113 -7
  402. package/lib/lowcode/view/lc-components/Form/index.less +5 -0
  403. package/lib/lowcode/view/lc-components/Form/meta.json +534 -55
  404. package/lib/lowcode/view/lc-components/Iframe/FunctionPreview.js +16 -0
  405. package/lib/lowcode/view/lc-components/Iframe/index.js +1 -0
  406. package/lib/lowcode/view/lc-components/Iframe/meta.json +1 -1
  407. package/lib/lowcode/view/lc-components/ImEx/FunctionPreview.js +16 -0
  408. package/lib/lowcode/view/lc-components/ImEx/index.js +1 -0
  409. package/lib/lowcode/view/lc-components/ImEx/meta.json +1 -1
  410. package/lib/lowcode/view/lc-components/Image/FunctionPreview.js +16 -0
  411. package/lib/lowcode/view/lc-components/Image/index.js +1 -0
  412. package/lib/lowcode/view/lc-components/Image/meta.json +1 -1
  413. package/lib/lowcode/view/lc-components/JSX/FunctionPreview.js +16 -0
  414. package/lib/lowcode/view/lc-components/JSX/index.js +19 -6
  415. package/lib/lowcode/view/lc-components/JSX/meta.json +8 -5
  416. package/lib/lowcode/view/lc-components/Layout/FunctionDesign.js +21 -18
  417. package/lib/lowcode/view/lc-components/Layout/FunctionLive.js +3 -8
  418. package/lib/lowcode/view/lc-components/Layout/FunctionPreview.js +16 -0
  419. package/lib/lowcode/view/lc-components/Layout/index.js +1 -0
  420. package/lib/lowcode/view/lc-components/Layout/meta.json +1 -2
  421. package/lib/lowcode/view/lc-components/Link/FunctionPreview.js +16 -0
  422. package/lib/lowcode/view/lc-components/Link/index.js +1 -0
  423. package/lib/lowcode/view/lc-components/Link/meta.json +2 -2
  424. package/lib/lowcode/view/lc-components/Page/meta.json +49 -0
  425. package/lib/lowcode/view/lc-components/PageContent/index.js +61 -0
  426. package/lib/lowcode/view/lc-components/PageContent/meta.json +9 -0
  427. package/lib/lowcode/view/lc-components/PageFooter/index.js +46 -0
  428. package/lib/lowcode/view/lc-components/PageFooter/meta.json +9 -0
  429. package/lib/lowcode/view/lc-components/PageHeader/index.js +48 -0
  430. package/lib/lowcode/view/lc-components/PageHeader/meta.json +9 -0
  431. package/lib/lowcode/view/lc-components/PageModal/index.js +30 -0
  432. package/lib/lowcode/view/lc-components/Section/FunctionPreview.js +16 -0
  433. package/lib/lowcode/view/lc-components/Section/index.js +1 -0
  434. package/lib/lowcode/view/lc-components/Section/meta.json +1 -1
  435. package/lib/lowcode/view/lc-components/Split/FunctionDesign.js +60 -2
  436. package/lib/lowcode/view/lc-components/Split/FunctionPreview.js +16 -0
  437. package/lib/lowcode/view/lc-components/Split/index.js +45 -6
  438. package/lib/lowcode/view/lc-components/Split/meta.json +10 -29
  439. package/lib/lowcode/view/lc-components/Table/FunctionDesign.js +43 -5
  440. package/lib/lowcode/view/lc-components/Table/FunctionPreview.js +16 -0
  441. package/lib/lowcode/view/lc-components/Table/components/TopFilter.js +104 -0
  442. package/lib/lowcode/view/lc-components/Table/index.js +364 -48
  443. package/lib/lowcode/view/lc-components/Table/meta.json +229 -55
  444. package/lib/lowcode/view/lc-components/Tabs/FunctionDesign.js +73 -2
  445. package/lib/lowcode/view/lc-components/Tabs/FunctionLive.js +2 -1
  446. package/lib/lowcode/view/lc-components/Tabs/FunctionPreview.js +17 -0
  447. package/lib/lowcode/view/lc-components/Tabs/index.js +112 -9
  448. package/lib/lowcode/view/lc-components/Tabs/meta.json +53 -81
  449. package/lib/lowcode/view/lc-components/Text/FunctionPreview.js +16 -0
  450. package/lib/lowcode/view/lc-components/Text/index.js +1 -0
  451. package/lib/lowcode/view/lc-components/Text/meta.json +1 -1
  452. package/lib/lowcode/view/lc-components/Tree/FunctionDesign.js +64 -3
  453. package/lib/lowcode/view/lc-components/Tree/FunctionPreview.js +33 -0
  454. package/lib/lowcode/view/lc-components/Tree/index.js +321 -6
  455. package/lib/lowcode/view/lc-components/Tree/index.less +5 -0
  456. package/lib/lowcode/view/lc-components/Tree/meta.json +224 -80
  457. package/lib/lowcode/view/lc-components/Wrapper.js +42 -25
  458. package/lib/lowcode/view/style/page.less +3 -0
  459. package/lib/services.js +5 -3
  460. package/lib/utils/grid.js +2 -2
  461. package/package.json +12 -7
  462. package/es/lowcode/engine/provider/ContextProvider.js +0 -169
  463. package/es/lowcode/painter/components/actions-editor/ActionEditor.js +0 -147
  464. package/es/lowcode/painter/panel-section/TableActions.js +0 -19
  465. package/lib/lowcode/engine/provider/ContextProvider.js +0 -177
  466. package/lib/lowcode/painter/panel-section/TableActions.js +0 -26
@@ -1,36 +1,42 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
1
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
5
3
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
6
- var _excluded = ["type", "key", "name", "desc", "default", "props", "panelItem", "next", "repositioning"];
7
4
  import React, { useRef, useState, useEffect, useLayoutEffect } from 'react';
8
- import { useBoolean, useCreation, useMemoizedFn } from 'ahooks';
9
- import { Breadcrumb, Drawer, Icon } from 'luck-design/antd';
5
+ import { useCreation, useMemoizedFn } from 'ahooks';
6
+ import { Breadcrumb } from 'luck-design/antd';
10
7
  import classNames from 'classnames';
11
- import { startsWith, takeRight, cloneDeep, isNil } from 'lodash';
12
- import { useLDContext } from "../engine/provider/ContextProvider";
13
- import PanelItem from "./components/PanelItem";
14
- import PanelItemFactory from "../engine/factory/panel-item-factory";
15
- import { modifyById } from "../engine/tools/dataProcess";
16
- import styles from "./style/panel.less";
8
+ import { takeRight, cloneDeep, isNil, reduce, get, set } from 'lodash';
9
+ import { formatMessage } from '@luck-design-biz/base/utils';
10
+ import { useContext, usePageData } from "../engine/provider/ContextProvider";
11
+ import AttrsPanel from "./components/AttrsPanel";
17
12
  import StylePanel from "./panel-section/StylePanel";
13
+ import AdvancePanel from "./components/AdvancePanel";
14
+ import { modifyById, add, deleteById } from "../engine/tools/dataProcess";
15
+ import styles from "./style/panel.less";
16
+ import { LC_BUILDIN_UNIT_KEY } from "../constants";
17
+ var _I18N_PREFIX_ = 'luckda.lowcode.painter.panel';
18
18
  var _TAB_LIST_ = [{
19
- title: '属性',
19
+ title: formatMessage({
20
+ id: "".concat(_I18N_PREFIX_, ".attrs"),
21
+ label: '属性'
22
+ }),
20
23
  key: 'attrs'
21
24
  }, {
22
- title: '样式',
23
- key: 'styles'
25
+ title: formatMessage({
26
+ id: "".concat(_I18N_PREFIX_, ".css"),
27
+ label: '样式'
28
+ }),
29
+ key: 'css'
24
30
  }, {
25
- title: '高级',
31
+ title: formatMessage({
32
+ id: "".concat(_I18N_PREFIX_, ".advance"),
33
+ label: '高级'
34
+ }),
26
35
  key: 'advance'
27
36
  }];
28
37
  var Panel = function Panel() {
29
- var _nextRef$current, _nextRef$current2;
30
38
  var activeTabRef = useRef(null);
31
39
  var underLineRef = useRef(null);
32
- var nextRef = useRef(null);
33
- var factory = useRef(new PanelItemFactory());
34
40
  var _useState = useState(null),
35
41
  _useState2 = _slicedToArray(_useState, 2),
36
42
  activeNode = _useState2[0],
@@ -39,107 +45,60 @@ var Panel = function Panel() {
39
45
  _useState4 = _slicedToArray(_useState3, 2),
40
46
  activeTabKey = _useState4[0],
41
47
  setActiveTabKey = _useState4[1];
42
- var _useBoolean = useBoolean(false),
43
- _useBoolean2 = _slicedToArray(_useBoolean, 2),
44
- open = _useBoolean2[0],
45
- _useBoolean2$ = _useBoolean2[1],
46
- setTrue = _useBoolean2$.setTrue,
47
- setFalse = _useBoolean2$.setFalse;
48
- var context = useLDContext();
48
+ var context = useContext();
49
+ var _usePageData = usePageData(),
50
+ _usePageData2 = _slicedToArray(_usePageData, 2),
51
+ pageData = _usePageData2[0],
52
+ setPageData = _usePageData2[1].setPageData;
53
+ var meta = useCreation(function () {
54
+ try {
55
+ return isNil(activeNode) ? null : require("../engine/meta/".concat(activeNode.node.component.toLowerCase(), ".props.json"));
56
+ } catch (e) {
57
+ return null;
58
+ }
59
+ }, [activeNode]);
49
60
  var handleChange = useMemoizedFn(function (field, value, repositioning) {
61
+ var cloneData = cloneDeep(pageData);
62
+ if (field === 'enableHeader') {
63
+ if (value) {
64
+ var headerMeta = require("../engine/meta/pageheader.props.default.json");
65
+ add(cloneData, LC_BUILDIN_UNIT_KEY.PAGE_ROOT, LC_BUILDIN_UNIT_KEY.PAGE_HEADER, _objectSpread(_objectSpread({}, headerMeta), {}, {
66
+ buildIn: true
67
+ }));
68
+ } else {
69
+ deleteById(cloneData, LC_BUILDIN_UNIT_KEY.PAGE_HEADER);
70
+ }
71
+ } else if (field === 'enableFooter') {
72
+ if (value) {
73
+ var footerMeta = require("../engine/meta/pagefooter.props.default.json");
74
+ add(cloneData, LC_BUILDIN_UNIT_KEY.PAGE_ROOT, LC_BUILDIN_UNIT_KEY.PAGE_FOOTER, _objectSpread(_objectSpread({}, footerMeta), {}, {
75
+ buildIn: true
76
+ }));
77
+ } else {
78
+ deleteById(cloneData, LC_BUILDIN_UNIT_KEY.PAGE_FOOTER);
79
+ }
80
+ }
50
81
  var component = context.componentMap.get(activeNode.node.id);
51
82
  var _component$api$getSel = component.api.getSelfAndParentLCData(),
52
83
  node = _component$api$getSel.node;
53
- var cloneData = cloneDeep(context.pageData);
54
- modifyById(cloneData, activeNode.node.id, _objectSpread(_objectSpread({}, node.props), {}, _defineProperty({}, field, value)));
55
- context._setPageData(cloneData).then(function (newData) {
84
+ var oldValue = _defineProperty({}, field, get(node.props, field));
85
+ var newNodeData = set(node.props, field, value);
86
+ modifyById(cloneData, activeNode.node.id, newNodeData);
87
+ setPageData(cloneData).then(function (newData) {
56
88
  context.$publisher(context.topics.COMPONENT_MODIFY, {
57
89
  id: activeNode.node.id,
58
- pageData: cloneDeep(newData)
90
+ pageData: cloneDeep(newData),
91
+ oldValue: oldValue,
92
+ newValue: _defineProperty({}, field, value)
59
93
  });
60
94
  if (repositioning) context.$publisher(context.topics.COMPONENT_REPOSITIONING, {
61
95
  id: activeNode.node.id
62
96
  });
63
97
  });
64
- if (nextRef.current.autoClose) {
65
- setFalse();
66
- }
67
98
  });
68
- var handleStyleChange = useMemoizedFn(function (newStyle, newCss) {
69
- console.log('style', newStyle, newCss);
70
- // setCss(newCss);
71
- });
72
- var goNext = useMemoizedFn(function (_next) {
73
- if (!_next) return;
74
- nextRef.current = {
75
- name: _next.name,
76
- autoClose: _next.autoClose,
77
- NextComp: renderPanelItems(_next.props)
78
- };
79
- setTrue();
80
- });
81
- var renderPanelItems = useMemoizedFn(function (items) {
82
- return items.map(function (_ref) {
83
- var type = _ref.type,
84
- key = _ref.key,
85
- name = _ref.name,
86
- desc = _ref.desc,
87
- defaultValue = _ref.default,
88
- props = _ref.props,
89
- panelItem = _ref.panelItem,
90
- _next2 = _ref.next,
91
- repositioning = _ref.repositioning,
92
- rest = _objectWithoutProperties(_ref, _excluded);
93
- var Comp = factory.current.getPanelItemFor(startsWith(type, '_') ? 'dynamic' : type, type);
94
- if (type === 'group') {
95
- return /*#__PURE__*/React.createElement(Comp, {
96
- key: key,
97
- field: key,
98
- label: name,
99
- next: _next2 ? function () {
100
- return goNext(_next2);
101
- } : null,
102
- defaultCollapsed: defaultValue,
103
- desc: desc
104
- }, renderPanelItems(props || []));
105
- }
106
- var _context$componentMap = context.componentMap.get(activeNode.node.id).api.getSelfAndParentLCData(),
107
- node = _context$componentMap.node;
108
- return /*#__PURE__*/React.createElement(PanelItem, _extends({
109
- key: key,
110
- field: key,
111
- label: name,
112
- desc: desc
113
- }, panelItem), Comp && /*#__PURE__*/React.createElement(Comp, _extends({
114
- defaultValue: isNil(node.props[key]) ? defaultValue : node.props[key],
115
- next: function next() {
116
- return goNext(_next2);
117
- },
118
- onChange: function onChange(value) {
119
- return handleChange(key, value, repositioning);
120
- },
121
- size: "small"
122
- }, rest)));
123
- });
124
- });
125
- var PropsComps = useCreation(function () {
126
- setActiveTabKey('attrs');
127
- var _meta;
128
- try {
129
- _meta = require("../engine/meta/".concat(activeNode.node.component.toLowerCase(), ".props.json"));
130
- } catch (e) {
131
- return /*#__PURE__*/React.createElement(React.Fragment, null);
132
- }
133
- return renderPanelItems(_meta.props);
134
- }, [activeNode]);
135
- useEffect(function () {
136
- if (!open) {
137
- nextRef.current = null;
138
- }
139
- }, [open]);
140
99
  useEffect(function () {
141
100
  var _id = context.$subscriber(context.topics.COMPONENT_ACTIVE).on(function (payload) {
142
- setFalse();
101
+ setActiveTabKey('attrs');
143
102
  if (!payload.id) {
144
103
  setActiveNode(null);
145
104
  return;
@@ -154,12 +113,12 @@ var Panel = function Panel() {
154
113
  });
155
114
  }).watch();
156
115
  return function () {
157
- context.$unsubscriber(context.topics.COMPONENT_ACTIVE, _id);
116
+ return context.$unsubscriber(context.topics.COMPONENT_ACTIVE, _id);
158
117
  };
159
118
  }, []);
160
119
  useLayoutEffect(function () {
161
120
  underLineRef.current.style.left = "".concat(activeTabRef.current.offsetLeft + activeTabRef.current.offsetWidth / 2 - 10, "px");
162
- }, [activeTabKey, !!activeNode]);
121
+ }, [activeTabKey, meta === null || meta === void 0 ? void 0 : meta.component]);
163
122
  return /*#__PURE__*/React.createElement("div", {
164
123
  className: styles['lc-painter-panel']
165
124
  }, /*#__PURE__*/React.createElement("div", {
@@ -169,9 +128,9 @@ var Panel = function Panel() {
169
128
  style: {
170
129
  fontSize: 12
171
130
  }
172
- }, activeNode === null || activeNode === void 0 ? void 0 : activeNode.level.map(function (_ref2) {
173
- var id = _ref2.id,
174
- name = _ref2.name;
131
+ }, activeNode === null || activeNode === void 0 ? void 0 : activeNode.level.map(function (_ref) {
132
+ var id = _ref.id,
133
+ name = _ref.name;
175
134
  return /*#__PURE__*/React.createElement(Breadcrumb.Item, {
176
135
  key: id,
177
136
  className: classNames(_defineProperty({}, styles['active-node-level'], id !== activeNode.node.id)),
@@ -196,7 +155,16 @@ var Panel = function Panel() {
196
155
  className: classNames(styles['lc-painter-panel-tabbar'], _defineProperty({}, styles.hidden, !activeNode))
197
156
  }, /*#__PURE__*/React.createElement("ul", {
198
157
  className: styles.headerList
199
- }, (activeNode !== null && activeNode !== void 0 && activeNode.node.style ? _TAB_LIST_ : [_TAB_LIST_[0], _TAB_LIST_[2]]).map(function (_item) {
158
+ }, reduce(_TAB_LIST_, function (ret, item) {
159
+ if (item.key === 'css' && !!(meta !== null && meta !== void 0 && meta.css)) {
160
+ ret.push(item);
161
+ } else if (item.key === 'advance' && !!(meta !== null && meta !== void 0 && meta.advance)) {
162
+ ret.push(item);
163
+ } else if (item.key === 'attrs') {
164
+ ret.push(item);
165
+ }
166
+ return ret;
167
+ }, []).map(function (_item) {
200
168
  return /*#__PURE__*/React.createElement("li", {
201
169
  key: _item.key,
202
170
  ref: activeTabKey === _item.key ? activeTabRef : null,
@@ -208,38 +176,28 @@ var Panel = function Panel() {
208
176
  })), /*#__PURE__*/React.createElement("div", {
209
177
  ref: underLineRef,
210
178
  className: styles.underline
211
- })), activeTabKey === _TAB_LIST_[0].key && /*#__PURE__*/React.createElement("div", {
212
- className: classNames(styles['lc-painter-panel-content'], _defineProperty(_defineProperty({}, styles.hidden, !activeNode), styles.showNext, open))
213
- }, PropsComps, /*#__PURE__*/React.createElement(Drawer, {
214
- visible: open,
215
- width: 320,
216
- mask: false,
217
- closable: false,
218
- getContainer: false,
219
- destroyOnClose: true,
220
- style: {
221
- position: 'absolute'
222
- },
223
- bodyStyle: {
224
- padding: 0,
225
- height: '100%'
179
+ })), activeTabKey === _TAB_LIST_[0].key && /*#__PURE__*/React.createElement(AttrsPanel, {
180
+ meta: meta,
181
+ value: activeNode === null || activeNode === void 0 ? void 0 : activeNode.node,
182
+ onChange: function onChange(field, value, repositioning) {
183
+ return handleChange(field, value, repositioning);
226
184
  }
227
- }, /*#__PURE__*/React.createElement("div", {
228
- className: styles['next-content']
229
- }, /*#__PURE__*/React.createElement("div", {
230
- className: styles['next-content-header'],
231
- onClick: setFalse
232
- }, /*#__PURE__*/React.createElement(Icon, {
233
- type: "left"
234
- }), (_nextRef$current = nextRef.current) === null || _nextRef$current === void 0 ? void 0 : _nextRef$current.name, /*#__PURE__*/React.createElement(Icon, {
235
- type: "close"
236
- })), /*#__PURE__*/React.createElement("div", {
237
- className: styles['next-content-body']
238
- }, (_nextRef$current2 = nextRef.current) === null || _nextRef$current2 === void 0 ? void 0 : _nextRef$current2.NextComp)))), activeTabKey === _TAB_LIST_[1].key && /*#__PURE__*/React.createElement(StylePanel, {
239
- onChange: handleStyleChange,
240
- value: activeNode === null || activeNode === void 0 ? void 0 : activeNode.node.style
241
- }), activeTabKey === _TAB_LIST_[2].key && /*#__PURE__*/React.createElement("div", null, "\u9AD8\u7EA7\u9762\u677F"), /*#__PURE__*/React.createElement("div", {
185
+ }), activeTabKey === _TAB_LIST_[1].key && /*#__PURE__*/React.createElement(StylePanel, {
186
+ value: activeNode === null || activeNode === void 0 ? void 0 : activeNode.node.css,
187
+ onChange: function onChange(_, newCss) {
188
+ return handleChange('css', newCss);
189
+ }
190
+ }), activeTabKey === _TAB_LIST_[2].key && /*#__PURE__*/React.createElement(AdvancePanel, {
191
+ meta: meta,
192
+ value: activeNode === null || activeNode === void 0 ? void 0 : activeNode.node.advance,
193
+ onChange: function onChange(val) {
194
+ return handleChange('advance', val);
195
+ }
196
+ }), /*#__PURE__*/React.createElement("div", {
242
197
  className: classNames(styles['lc-painter-panel-empty'], _defineProperty({}, styles.hidden, !!activeNode))
243
- }, "\u8BF7\u5728\u5DE6\u4FA7\u753B\u5E03\u9009\u4E2D\u8282\u70B9"));
198
+ }, formatMessage({
199
+ id: "".concat(_I18N_PREFIX_, ".empty"),
200
+ label: '请在左侧画布选中节点'
201
+ })));
244
202
  };
245
203
  export default Panel;
@@ -14,7 +14,7 @@ var _DRAWER_PROPS = {
14
14
  placement: 'left',
15
15
  mask: false,
16
16
  getContainer: false,
17
- zIndex: 10000,
17
+ zIndex: 2000,
18
18
  headerStyle: {
19
19
  borderBottom: 'none'
20
20
  },
@@ -0,0 +1,293 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
4
+ import React, { useRef, useState } from 'react';
5
+ import { useMemoizedFn, useLatest, useCreation, useMap, useUpdateEffect } from 'ahooks';
6
+ import { Modal, Icon, Input, Checkbox, Tooltip } from 'luck-design/antd';
7
+ import classNames from 'classnames';
8
+ import { debounce, reduce } from 'lodash';
9
+ import { formatMessage } from '@luck-design-biz/base/utils';
10
+ import { useRemoteSource } from "../../engine/provider/ContextProvider";
11
+ import { useContext } from "../../engine/provider/ContextProvider";
12
+ import JSEditor from "./code-editor/JSEditor";
13
+ import JsonEditor from "./code-editor/JsonEditor";
14
+ import styles from "../style/action-bind-modal.less";
15
+ var _I18N_PREFIX_ = 'luckda.lowcode.painter.actionBindModal';
16
+ var _ACTION_CATEGORY_ = [{
17
+ key: 'page-action',
18
+ label: formatMessage({
19
+ id: "".concat(_I18N_PREFIX_, ".pageActions"),
20
+ label: '页面行为'
21
+ })
22
+ }, {
23
+ key: 'trigger',
24
+ label: formatMessage({
25
+ id: "".concat(_I18N_PREFIX_, ".trigger"),
26
+ label: '触发器'
27
+ })
28
+ }, {
29
+ key: 'custom',
30
+ label: formatMessage({
31
+ id: "".concat(_I18N_PREFIX_, ".custom"),
32
+ label: '自定义动作'
33
+ })
34
+ }];
35
+ var _DEFAULT_JSON_CODE_ = '{"datasetCode": "","params":{},"body":{}}';
36
+ var _DEFAULT_JS_CODE_ = 'function todo() {\n\n}';
37
+ var ActionBindModal = function ActionBindModal(_ref) {
38
+ var event = _ref.event,
39
+ _ref$defaultCode = _ref.defaultCode,
40
+ defaultCode = _ref$defaultCode === void 0 ? _DEFAULT_JS_CODE_ : _ref$defaultCode,
41
+ onComfirm = _ref.onComfirm,
42
+ onClose = _ref.onClose;
43
+ var context = useContext();
44
+ var _useRemoteSource = useRemoteSource(),
45
+ module = _useRemoteSource.module;
46
+ var editorRef = useRef();
47
+ var _useMap = useMap([]),
48
+ _useMap2 = _slicedToArray(_useMap, 2),
49
+ actionPool = _useMap2[0],
50
+ _useMap2$ = _useMap2[1],
51
+ set = _useMap2$.set,
52
+ remove = _useMap2$.remove,
53
+ get = _useMap2$.get,
54
+ setAll = _useMap2$.setAll,
55
+ reset = _useMap2$.reset;
56
+ var _useState = useState('page-action'),
57
+ _useState2 = _slicedToArray(_useState, 2),
58
+ category = _useState2[0],
59
+ setCategory = _useState2[1];
60
+ var _useState3 = useState(void 0),
61
+ _useState4 = _slicedToArray(_useState3, 2),
62
+ activeKey = _useState4[0],
63
+ setActiveKey = _useState4[1];
64
+ var _useState5 = useState(void 0),
65
+ _useState6 = _slicedToArray(_useState5, 2),
66
+ searchValue = _useState6[0],
67
+ setSearchValue = _useState6[1];
68
+ var latestActiveKey = useLatest(activeKey);
69
+ var options = useCreation(function () {
70
+ if (category === 'page-action') {
71
+ return reduce(module.actions, function (ret, actionName, actionKey) {
72
+ ret.push({
73
+ key: actionKey,
74
+ label: actionName
75
+ });
76
+ return ret;
77
+ }, []);
78
+ } else if (category === 'trigger') {
79
+ return reduce(context.componentList, function (ret, _ref2) {
80
+ var _ref3 = _slicedToArray(_ref2, 2),
81
+ key = _ref3[0],
82
+ target = _ref3[1];
83
+ ret.push({
84
+ key: key,
85
+ label: "".concat(target.api.getSelfAndParentLCData().node.props.name, "(").concat(key, ")")
86
+ });
87
+ return ret;
88
+ }, []);
89
+ } else if (category === 'custom') {
90
+ return [{
91
+ key: 'coding',
92
+ label: formatMessage({
93
+ id: "".concat(_I18N_PREFIX_, ".coding"),
94
+ label: '动作编写'
95
+ })
96
+ }];
97
+ }
98
+ return [];
99
+ }, [category]);
100
+ useUpdateEffect(function () {
101
+ if (activeKey) {
102
+ var action = get(activeKey);
103
+ editorRef.current.editor.setValue(action.code);
104
+ }
105
+ }, [activeKey]);
106
+ useUpdateEffect(function () {
107
+ setAll(event === null || event === void 0 ? void 0 : event.actionPool);
108
+ }, [event]);
109
+ var handleEditorValueChange = useRef(debounce(function (code) {
110
+ if (latestActiveKey.current) {
111
+ var action = get(latestActiveKey.current);
112
+ action.code = code;
113
+ }
114
+ }, 400));
115
+ var handleOptionClick = useMemoizedFn(function (key) {
116
+ setActiveKey(key);
117
+ var action;
118
+ if (actionPool.has(key)) {
119
+ action = get(key);
120
+ } else {
121
+ var code = category === 'custom' ? event.func || defaultCode : JSON.stringify(_objectSpread({
122
+ moduleCode: module.moduleCode
123
+ }, JSON.parse(_DEFAULT_JSON_CODE_)), null, '\t');
124
+ action = {
125
+ category: category,
126
+ key: key,
127
+ code: code
128
+ };
129
+ set(key, action);
130
+ }
131
+ });
132
+ var handleChecked = useMemoizedFn(function (key, checked) {
133
+ if (checked) {
134
+ if (activeKey !== key) {
135
+ setActiveKey(key);
136
+ }
137
+ var code = category === 'custom' ? event.func || defaultCode : JSON.stringify(_objectSpread({
138
+ moduleCode: module.moduleCode
139
+ }, JSON.parse(_DEFAULT_JSON_CODE_)), null, '\t');
140
+ set(key, {
141
+ category: category,
142
+ key: key,
143
+ code: code
144
+ });
145
+ } else {
146
+ if (activeKey === key) {
147
+ setActiveKey(void 0);
148
+ }
149
+ remove(key);
150
+ }
151
+ });
152
+ var handleClose = useMemoizedFn(function () {
153
+ onClose();
154
+ reset();
155
+ setCategory('page-action');
156
+ setActiveKey(void 0);
157
+ setSearchValue(void 0);
158
+ });
159
+ var handleComfirm = useMemoizedFn(function () {
160
+ onComfirm(Array.from(actionPool), event);
161
+ handleClose();
162
+ });
163
+ return /*#__PURE__*/React.createElement(Modal, {
164
+ className: styles['lc-painter-panel-action-bind-modal'],
165
+ bodyStyle: {
166
+ marginTop: 0,
167
+ padding: '4px 24px'
168
+ },
169
+ title: event === null || event === void 0 ? void 0 : event.name,
170
+ visible: !!event,
171
+ width: 960,
172
+ closable: false,
173
+ maskClosable: false,
174
+ getContainer: function getContainer() {
175
+ return document.getElementById('lc-design-workspace');
176
+ },
177
+ zIndex: 3000,
178
+ onCancel: handleClose,
179
+ onOk: handleComfirm
180
+ }, /*#__PURE__*/React.createElement("div", {
181
+ className: styles['lc-painter-panel-action-bind-modal-body']
182
+ }, /*#__PURE__*/React.createElement("div", {
183
+ className: styles['lc-painter-panel-action-bind-modal-body-left']
184
+ }, /*#__PURE__*/React.createElement("p", null, formatMessage({
185
+ id: "".concat(_I18N_PREFIX_, ".bind"),
186
+ label: '绑定动作'
187
+ })), /*#__PURE__*/React.createElement("div", {
188
+ className: styles['selector-box']
189
+ }, /*#__PURE__*/React.createElement("ul", {
190
+ className: classNames(styles['selector-box-ul'], styles['action-category'])
191
+ }, _ACTION_CATEGORY_.map(function (_ref4) {
192
+ var key = _ref4.key,
193
+ label = _ref4.label;
194
+ return /*#__PURE__*/React.createElement("li", {
195
+ key: key,
196
+ className: classNames(_defineProperty({}, styles.active, key === category)),
197
+ onClick: function onClick() {
198
+ setCategory(key);
199
+ setActiveKey(void 0);
200
+ }
201
+ }, label, key === category && /*#__PURE__*/React.createElement(Icon, {
202
+ type: "check",
203
+ className: styles['check-icon']
204
+ }));
205
+ })), /*#__PURE__*/React.createElement("div", {
206
+ className: styles['selecter-items-box']
207
+ }, category !== 'custom' && /*#__PURE__*/React.createElement("div", {
208
+ style: {
209
+ height: 42,
210
+ display: 'flex',
211
+ justifyContent: 'center'
212
+ }
213
+ }, /*#__PURE__*/React.createElement(Input.Search, {
214
+ placeholder: formatMessage({
215
+ id: "".concat(_I18N_PREFIX_, ".search"),
216
+ label: '搜索'
217
+ }),
218
+ size: "small",
219
+ onChange: function onChange(e) {
220
+ return setSearchValue(e.target.value);
221
+ },
222
+ style: {
223
+ width: 170,
224
+ alignSelf: 'center'
225
+ }
226
+ })), /*#__PURE__*/React.createElement("ul", {
227
+ className: classNames(styles['selector-box-ul'], styles['selecter-items'])
228
+ }, options.filter(function (_ref5) {
229
+ var key = _ref5.key,
230
+ label = _ref5.label;
231
+ return !searchValue || "".concat(key, " ").concat(label).toLowerCase().includes(searchValue.toLowerCase());
232
+ }).map(function (_ref6) {
233
+ var key = _ref6.key,
234
+ label = _ref6.label;
235
+ return /*#__PURE__*/React.createElement("li", {
236
+ key: key,
237
+ className: classNames(_defineProperty({}, styles.active, key === activeKey)),
238
+ onClick: function onClick() {
239
+ return handleOptionClick(key);
240
+ }
241
+ }, /*#__PURE__*/React.createElement(Checkbox, {
242
+ checked: actionPool.has(key),
243
+ style: {
244
+ marginRight: 4
245
+ },
246
+ onChange: function onChange(e) {
247
+ return handleChecked(key, e.target.checked);
248
+ },
249
+ onClick: function onClick(e) {
250
+ return e.stopPropagation();
251
+ }
252
+ }), label);
253
+ }))))), /*#__PURE__*/React.createElement("div", {
254
+ className: styles['lc-painter-panel-action-bind-modal-body-right']
255
+ }, category === 'page-action' && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("p", null, formatMessage({
256
+ id: "".concat(_I18N_PREFIX_, ".params"),
257
+ label: '配置参数'
258
+ }), /*#__PURE__*/React.createElement(Tooltip, {
259
+ title: formatMessage({
260
+ id: "".concat(_I18N_PREFIX_, ".params.info"),
261
+ label: '请勿随意修改配置参数结构和参数名称,参数异常可能会导致请求失败'
262
+ }),
263
+ getPopupContainer: function getPopupContainer() {
264
+ return document.getElementById('lc-design-workspace');
265
+ },
266
+ zIndex: 3000
267
+ }, /*#__PURE__*/React.createElement(Icon, {
268
+ style: {
269
+ marginLeft: 4
270
+ },
271
+ type: "exclamation-circle"
272
+ }))), /*#__PURE__*/React.createElement("div", {
273
+ className: styles['code-box']
274
+ }, activeKey ? /*#__PURE__*/React.createElement(JsonEditor, {
275
+ ref: editorRef,
276
+ onChange: handleEditorValueChange.current
277
+ }) : formatMessage({
278
+ id: "".concat(_I18N_PREFIX_, ".noActionSelected"),
279
+ label: '请在右侧选择行为项'
280
+ }))), category === 'custom' && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("p", null, formatMessage({
281
+ id: "".concat(_I18N_PREFIX_, ".coding"),
282
+ label: '动作编写'
283
+ })), /*#__PURE__*/React.createElement("div", {
284
+ className: styles['code-box']
285
+ }, activeKey ? /*#__PURE__*/React.createElement(JSEditor, {
286
+ ref: editorRef,
287
+ onChange: handleEditorValueChange.current
288
+ }) : formatMessage({
289
+ id: "".concat(_I18N_PREFIX_, ".noActionSelected"),
290
+ label: '请在右侧选择行为项'
291
+ }))))));
292
+ };
293
+ export default ActionBindModal;