@luck-design-biz/luckda 0.0.25-7 → 0.0.25-9

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 (329) hide show
  1. package/es/components/ComplexItem/index.js +92 -0
  2. package/es/components/ComplexItem/service.js +21 -0
  3. package/es/components/LDActions/index.js +8 -10
  4. package/es/components/LDActions/index.less +7 -4
  5. package/es/components/LdAutoForm/index.js +18 -11
  6. package/es/components/LdFormList/index.js +14 -5
  7. package/es/components/LdGrid/index.js +19 -6
  8. package/es/components/LdGridForm/index.js +20 -9
  9. package/es/components/LdTree/index.js +30 -13
  10. package/es/helper/FromItems.js +177 -94
  11. package/es/helper/form.js +49 -11
  12. package/es/helper/props_config.js +17 -0
  13. package/es/locales/zh-CN.js +16 -11
  14. package/es/lowcode/constants/api-url.js +192 -28
  15. package/es/lowcode/constants/event-topics.js +2 -0
  16. package/es/lowcode/constants/index.js +2 -1
  17. package/es/lowcode/engine/meta/box.props.json +3 -3
  18. package/es/lowcode/engine/meta/button.props.json +3 -3
  19. package/es/lowcode/engine/meta/cardlist.props.json +13 -3
  20. package/es/lowcode/engine/meta/components-list.json +108 -0
  21. package/es/lowcode/engine/meta/dialog.props.default.json +1 -0
  22. package/es/lowcode/engine/meta/dialog.props.json +12 -5
  23. package/es/lowcode/engine/meta/drawer.props.json +8 -20
  24. package/es/lowcode/engine/meta/fieldcolor.props.default.json +14 -0
  25. package/es/lowcode/engine/meta/fieldcolor.props.json +63 -0
  26. package/es/lowcode/engine/meta/fieldcomplex.props.default.json +13 -0
  27. package/es/lowcode/engine/meta/fieldcomplex.props.json +39 -0
  28. package/es/lowcode/engine/meta/fielddate.props.default.json +12 -0
  29. package/es/lowcode/engine/meta/fielddate.props.json +47 -0
  30. package/es/lowcode/engine/meta/fielddict.props.default.json +14 -0
  31. package/es/lowcode/engine/meta/fielddict.props.json +44 -0
  32. package/es/lowcode/engine/meta/fieldeditor.props.default.json +13 -0
  33. package/es/lowcode/engine/meta/fieldeditor.props.json +44 -0
  34. package/es/lowcode/engine/meta/fieldgroup.props.default.json +15 -0
  35. package/es/lowcode/engine/meta/fieldgroup.props.json +73 -0
  36. package/es/lowcode/engine/meta/fieldnumber.props.default.json +14 -0
  37. package/es/lowcode/engine/meta/fieldnumber.props.json +48 -0
  38. package/es/lowcode/engine/meta/fieldradio.props.default.json +12 -0
  39. package/es/lowcode/engine/meta/fieldradio.props.json +20 -0
  40. package/es/lowcode/engine/meta/fieldregion.props.default.json +12 -0
  41. package/es/lowcode/engine/meta/fieldregion.props.json +26 -0
  42. package/es/lowcode/engine/meta/fieldselect.props.default.json +14 -0
  43. package/es/lowcode/engine/meta/fieldselect.props.json +58 -0
  44. package/es/lowcode/engine/meta/fieldstring.props.default.json +16 -0
  45. package/es/lowcode/engine/meta/fieldstring.props.json +62 -0
  46. package/es/lowcode/engine/meta/fieldswitch.props.default.json +12 -0
  47. package/es/lowcode/engine/meta/fieldswitch.props.json +31 -0
  48. package/es/lowcode/engine/meta/fieldtextarea.props.default.json +13 -0
  49. package/es/lowcode/engine/meta/fieldtextarea.props.json +49 -0
  50. package/es/lowcode/engine/meta/fieldupload.props.default.json +15 -0
  51. package/es/lowcode/engine/meta/fieldupload.props.json +71 -0
  52. package/es/lowcode/engine/meta/fielduser.props.default.json +16 -0
  53. package/es/lowcode/engine/meta/fielduser.props.json +82 -0
  54. package/es/lowcode/engine/meta/fieldyear.props.default.json +12 -0
  55. package/es/lowcode/engine/meta/fieldyear.props.json +20 -0
  56. package/es/lowcode/engine/meta/form.props.json +15 -9
  57. package/es/lowcode/engine/meta/imex.props.default.json +8 -1
  58. package/es/lowcode/engine/meta/imex.props.json +54 -22
  59. package/es/lowcode/engine/meta/js-editor/auto-complete.json +53 -3
  60. package/es/lowcode/engine/meta/layout.props.json +2 -2
  61. package/es/lowcode/engine/meta/page.props.json +2 -2
  62. package/es/lowcode/engine/meta/pagelayout.props.default.json +14 -0
  63. package/es/lowcode/engine/meta/pagelayout.props.json +47 -0
  64. package/es/lowcode/engine/meta/section.props.json +2 -2
  65. package/es/lowcode/engine/meta/split.props.default.json +1 -1
  66. package/es/lowcode/engine/meta/split.props.json +4 -4
  67. package/es/lowcode/engine/meta/table.props.json +17 -11
  68. package/es/lowcode/engine/meta/tabs.props.json +3 -3
  69. package/es/lowcode/engine/meta/tree.props.default.json +1 -0
  70. package/es/lowcode/engine/meta/tree.props.json +62 -6
  71. package/es/lowcode/engine/provider/ContextProvider/index.js +13 -3
  72. package/es/lowcode/engine/provider/RemoteSourceProvider.js +61 -18
  73. package/es/lowcode/engine/tools/dataProcess.js +4 -0
  74. package/es/lowcode/engine/tools/helper.js +24 -2
  75. package/es/lowcode/engine/tools/usePageDataStore.js +4 -2
  76. package/es/lowcode/painter/Design.js +4 -4
  77. package/es/lowcode/painter/DesignOperator.js +103 -66
  78. package/es/lowcode/painter/DesignToolbar.js +15 -16
  79. package/es/lowcode/painter/Outline.js +10 -6
  80. package/es/lowcode/painter/Panel.js +60 -22
  81. package/es/lowcode/painter/components/ActionBindModal.js +33 -16
  82. package/es/lowcode/painter/components/AdvancePanel.js +37 -21
  83. package/es/lowcode/painter/components/AttrsPanel.js +16 -12
  84. package/es/lowcode/painter/components/FieldSelector.js +26 -13
  85. package/es/lowcode/painter/components/code-editor/JSEditor.js +5 -9
  86. package/es/lowcode/painter/components/field-setting/CheckFrontRules.js +108 -0
  87. package/es/lowcode/painter/components/field-setting/CheckRules.js +1 -26
  88. package/es/lowcode/painter/components/field-setting/FieldRulesModal.js +33 -13
  89. package/es/lowcode/painter/components/field-setting/SettingUI.js +156 -24
  90. package/es/lowcode/painter/components/field-setting/index.js +32 -63
  91. package/es/lowcode/painter/components/field-setting/meta/frontRules.js +53 -0
  92. package/es/lowcode/painter/panel-section/BlocksEditor/index.js +9 -15
  93. package/es/lowcode/painter/panel-section/DataSetSelector.js +29 -9
  94. package/es/lowcode/painter/panel-section/FieldsSetting.js +77 -33
  95. package/es/lowcode/painter/panel-section/ImpExp.js +99 -14
  96. package/es/lowcode/painter/panel-section/ImpExpAlone.js +108 -0
  97. package/es/lowcode/painter/panel-section/PageLayoutDisplay.js +95 -0
  98. package/es/lowcode/painter/panel-section/SplitDisplay.js +25 -110
  99. package/es/lowcode/painter/panel-section/StylePanel/index.js +10 -4
  100. package/es/lowcode/painter/panel-section/TableTopFilter.js +23 -13
  101. package/es/lowcode/painter/style/action-bind-modal.less +3 -3
  102. package/es/lowcode/painter/style/page-layout-display.less +28 -0
  103. package/es/lowcode/painter/style/split-display.less +0 -9
  104. package/es/lowcode/preview/index.js +4 -2
  105. package/es/lowcode/view/Page.js +4 -4
  106. package/es/lowcode/view/lc-components/Box/FunctionDesign.js +3 -2
  107. package/es/lowcode/view/lc-components/Box/meta.json +3 -3
  108. package/es/lowcode/view/lc-components/Button/index.js +2 -6
  109. package/es/lowcode/view/lc-components/Button/meta.json +3 -3
  110. package/es/lowcode/view/lc-components/CardList/meta.json +13 -3
  111. package/es/lowcode/view/lc-components/Dialog/index.js +30 -3
  112. package/es/lowcode/view/lc-components/Dialog/meta.json +12 -5
  113. package/es/lowcode/view/lc-components/Drawer/meta.json +8 -20
  114. package/es/lowcode/view/lc-components/FieldColor/meta.json +63 -0
  115. package/es/lowcode/view/lc-components/FieldComplex/meta.json +39 -0
  116. package/es/lowcode/view/lc-components/FieldDate/meta.json +45 -0
  117. package/es/lowcode/view/lc-components/FieldDict/meta.json +44 -0
  118. package/es/lowcode/view/lc-components/FieldEditor/meta.json +44 -0
  119. package/es/lowcode/view/lc-components/FieldGroup/meta.json +73 -0
  120. package/es/lowcode/view/lc-components/FieldNumber/meta.json +48 -0
  121. package/es/lowcode/view/lc-components/FieldRadio/meta.json +20 -0
  122. package/es/lowcode/view/lc-components/FieldRegion/meta.json +26 -0
  123. package/es/lowcode/view/lc-components/FieldSelect/meta.json +58 -0
  124. package/es/lowcode/view/lc-components/FieldString/meta.json +62 -0
  125. package/es/lowcode/view/lc-components/FieldSwitch/meta.json +31 -0
  126. package/es/lowcode/view/lc-components/FieldTextarea/meta.json +49 -0
  127. package/es/lowcode/view/lc-components/FieldUpload/meta.json +71 -0
  128. package/es/lowcode/view/lc-components/FieldUser/meta.json +82 -0
  129. package/es/lowcode/view/lc-components/FieldYear/meta.json +20 -0
  130. package/es/lowcode/view/lc-components/Form/FunctionPreview.js +8 -1
  131. package/es/lowcode/view/lc-components/Form/index.js +188 -38
  132. package/es/lowcode/view/lc-components/Form/meta.json +15 -9
  133. package/es/lowcode/view/lc-components/ImEx/FunctionDesign.js +8 -3
  134. package/es/lowcode/view/lc-components/ImEx/index.js +470 -11
  135. package/es/lowcode/view/lc-components/ImEx/index.less +7 -0
  136. package/es/lowcode/view/lc-components/ImEx/meta.json +55 -23
  137. package/es/lowcode/view/lc-components/Layout/meta.json +2 -2
  138. package/es/lowcode/view/lc-components/Page/meta.json +2 -2
  139. package/es/lowcode/view/lc-components/PageLayout/FunctionDesign.js +63 -0
  140. package/es/lowcode/view/lc-components/PageLayout/FunctionLive.js +10 -0
  141. package/es/lowcode/view/lc-components/PageLayout/FunctionPreview.js +10 -0
  142. package/es/lowcode/view/lc-components/PageLayout/index.js +32 -0
  143. package/es/lowcode/view/lc-components/PageLayout/meta.json +47 -0
  144. package/es/lowcode/view/lc-components/Section/meta.json +2 -2
  145. package/es/lowcode/view/lc-components/Split/FunctionDesign.js +11 -5
  146. package/es/lowcode/view/lc-components/Split/index.js +5 -9
  147. package/es/lowcode/view/lc-components/Split/meta.json +4 -4
  148. package/es/lowcode/view/lc-components/Table/components/TopFilter.js +78 -57
  149. package/es/lowcode/view/lc-components/Table/components/TopImex.js +420 -0
  150. package/es/lowcode/view/lc-components/Table/index.js +228 -24
  151. package/es/lowcode/view/lc-components/Table/meta.json +17 -11
  152. package/es/lowcode/view/lc-components/Tabs/FunctionDesign.js +2 -1
  153. package/es/lowcode/view/lc-components/Tabs/index.js +3 -1
  154. package/es/lowcode/view/lc-components/Tabs/meta.json +3 -3
  155. package/es/lowcode/view/lc-components/Tree/FunctionDesign.js +2 -3
  156. package/es/lowcode/view/lc-components/Tree/index.js +96 -29
  157. package/es/lowcode/view/lc-components/Tree/meta.json +62 -7
  158. package/es/upload/FilesWall/index.js +13 -13
  159. package/es/upload/FilesWall/index.less +74 -74
  160. package/es/upload/Form/gridForm.js +3 -2
  161. package/es/upload/FormItem/index.js +3 -5
  162. package/es/utils/form.js +16 -3
  163. package/es/utils/grid.js +8 -5
  164. package/lib/components/ComplexItem/index.js +100 -0
  165. package/lib/components/ComplexItem/service.js +28 -0
  166. package/lib/components/LDActions/index.js +7 -9
  167. package/lib/components/LDActions/index.less +7 -4
  168. package/lib/components/LdAutoForm/index.js +17 -10
  169. package/lib/components/LdFormList/index.js +13 -4
  170. package/lib/components/LdGrid/index.js +19 -6
  171. package/lib/components/LdGridForm/index.js +19 -8
  172. package/lib/components/LdTree/index.js +30 -13
  173. package/lib/helper/FromItems.js +175 -92
  174. package/lib/helper/form.js +47 -10
  175. package/lib/helper/props_config.js +23 -0
  176. package/lib/locales/zh-CN.js +16 -11
  177. package/lib/lowcode/constants/api-url.js +192 -28
  178. package/lib/lowcode/constants/event-topics.js +3 -1
  179. package/lib/lowcode/constants/index.js +3 -2
  180. package/lib/lowcode/engine/meta/box.props.json +3 -3
  181. package/lib/lowcode/engine/meta/button.props.json +3 -3
  182. package/lib/lowcode/engine/meta/cardlist.props.json +13 -3
  183. package/lib/lowcode/engine/meta/components-list.json +108 -0
  184. package/lib/lowcode/engine/meta/dialog.props.default.json +1 -0
  185. package/lib/lowcode/engine/meta/dialog.props.json +12 -5
  186. package/lib/lowcode/engine/meta/drawer.props.json +8 -20
  187. package/lib/lowcode/engine/meta/fieldcolor.props.default.json +14 -0
  188. package/lib/lowcode/engine/meta/fieldcolor.props.json +63 -0
  189. package/lib/lowcode/engine/meta/fieldcomplex.props.default.json +13 -0
  190. package/lib/lowcode/engine/meta/fieldcomplex.props.json +39 -0
  191. package/lib/lowcode/engine/meta/fielddate.props.default.json +12 -0
  192. package/lib/lowcode/engine/meta/fielddate.props.json +47 -0
  193. package/lib/lowcode/engine/meta/fielddict.props.default.json +14 -0
  194. package/lib/lowcode/engine/meta/fielddict.props.json +44 -0
  195. package/lib/lowcode/engine/meta/fieldeditor.props.default.json +13 -0
  196. package/lib/lowcode/engine/meta/fieldeditor.props.json +44 -0
  197. package/lib/lowcode/engine/meta/fieldgroup.props.default.json +15 -0
  198. package/lib/lowcode/engine/meta/fieldgroup.props.json +73 -0
  199. package/lib/lowcode/engine/meta/fieldnumber.props.default.json +14 -0
  200. package/lib/lowcode/engine/meta/fieldnumber.props.json +48 -0
  201. package/lib/lowcode/engine/meta/fieldradio.props.default.json +12 -0
  202. package/lib/lowcode/engine/meta/fieldradio.props.json +20 -0
  203. package/lib/lowcode/engine/meta/fieldregion.props.default.json +12 -0
  204. package/lib/lowcode/engine/meta/fieldregion.props.json +26 -0
  205. package/lib/lowcode/engine/meta/fieldselect.props.default.json +14 -0
  206. package/lib/lowcode/engine/meta/fieldselect.props.json +58 -0
  207. package/lib/lowcode/engine/meta/fieldstring.props.default.json +16 -0
  208. package/lib/lowcode/engine/meta/fieldstring.props.json +62 -0
  209. package/lib/lowcode/engine/meta/fieldswitch.props.default.json +12 -0
  210. package/lib/lowcode/engine/meta/fieldswitch.props.json +31 -0
  211. package/lib/lowcode/engine/meta/fieldtextarea.props.default.json +13 -0
  212. package/lib/lowcode/engine/meta/fieldtextarea.props.json +49 -0
  213. package/lib/lowcode/engine/meta/fieldupload.props.default.json +15 -0
  214. package/lib/lowcode/engine/meta/fieldupload.props.json +71 -0
  215. package/lib/lowcode/engine/meta/fielduser.props.default.json +16 -0
  216. package/lib/lowcode/engine/meta/fielduser.props.json +82 -0
  217. package/lib/lowcode/engine/meta/fieldyear.props.default.json +12 -0
  218. package/lib/lowcode/engine/meta/fieldyear.props.json +20 -0
  219. package/lib/lowcode/engine/meta/form.props.json +15 -9
  220. package/lib/lowcode/engine/meta/imex.props.default.json +8 -1
  221. package/lib/lowcode/engine/meta/imex.props.json +54 -22
  222. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +53 -3
  223. package/lib/lowcode/engine/meta/layout.props.json +2 -2
  224. package/lib/lowcode/engine/meta/page.props.json +2 -2
  225. package/lib/lowcode/engine/meta/pagelayout.props.default.json +14 -0
  226. package/lib/lowcode/engine/meta/pagelayout.props.json +47 -0
  227. package/lib/lowcode/engine/meta/section.props.json +2 -2
  228. package/lib/lowcode/engine/meta/split.props.default.json +1 -1
  229. package/lib/lowcode/engine/meta/split.props.json +4 -4
  230. package/lib/lowcode/engine/meta/table.props.json +17 -11
  231. package/lib/lowcode/engine/meta/tabs.props.json +3 -3
  232. package/lib/lowcode/engine/meta/tree.props.default.json +1 -0
  233. package/lib/lowcode/engine/meta/tree.props.json +62 -6
  234. package/lib/lowcode/engine/provider/ContextProvider/index.js +12 -2
  235. package/lib/lowcode/engine/provider/RemoteSourceProvider.js +60 -17
  236. package/lib/lowcode/engine/tools/dataProcess.js +4 -0
  237. package/lib/lowcode/engine/tools/helper.js +25 -1
  238. package/lib/lowcode/engine/tools/usePageDataStore.js +4 -2
  239. package/lib/lowcode/painter/Design.js +4 -4
  240. package/lib/lowcode/painter/DesignOperator.js +101 -64
  241. package/lib/lowcode/painter/DesignToolbar.js +14 -15
  242. package/lib/lowcode/painter/Outline.js +9 -5
  243. package/lib/lowcode/painter/Panel.js +59 -21
  244. package/lib/lowcode/painter/components/ActionBindModal.js +31 -14
  245. package/lib/lowcode/painter/components/AdvancePanel.js +36 -20
  246. package/lib/lowcode/painter/components/AttrsPanel.js +15 -11
  247. package/lib/lowcode/painter/components/FieldSelector.js +26 -13
  248. package/lib/lowcode/painter/components/code-editor/JSEditor.js +5 -9
  249. package/lib/lowcode/painter/components/field-setting/CheckFrontRules.js +116 -0
  250. package/lib/lowcode/painter/components/field-setting/CheckRules.js +1 -26
  251. package/lib/lowcode/painter/components/field-setting/FieldRulesModal.js +34 -13
  252. package/lib/lowcode/painter/components/field-setting/SettingUI.js +153 -21
  253. package/lib/lowcode/painter/components/field-setting/index.js +32 -63
  254. package/lib/lowcode/painter/components/field-setting/meta/frontRules.js +59 -0
  255. package/lib/lowcode/painter/panel-section/BlocksEditor/index.js +9 -15
  256. package/lib/lowcode/painter/panel-section/DataSetSelector.js +29 -9
  257. package/lib/lowcode/painter/panel-section/FieldsSetting.js +76 -32
  258. package/lib/lowcode/painter/panel-section/ImpExp.js +99 -13
  259. package/lib/lowcode/painter/panel-section/ImpExpAlone.js +114 -0
  260. package/lib/lowcode/painter/panel-section/PageLayoutDisplay.js +103 -0
  261. package/lib/lowcode/painter/panel-section/SplitDisplay.js +24 -109
  262. package/lib/lowcode/painter/panel-section/StylePanel/index.js +10 -4
  263. package/lib/lowcode/painter/panel-section/TableTopFilter.js +22 -12
  264. package/lib/lowcode/painter/style/action-bind-modal.less +3 -3
  265. package/lib/lowcode/painter/style/page-layout-display.less +28 -0
  266. package/lib/lowcode/painter/style/split-display.less +0 -9
  267. package/lib/lowcode/preview/index.js +4 -2
  268. package/lib/lowcode/view/Page.js +4 -4
  269. package/lib/lowcode/view/lc-components/Box/FunctionDesign.js +3 -2
  270. package/lib/lowcode/view/lc-components/Box/meta.json +3 -3
  271. package/lib/lowcode/view/lc-components/Button/index.js +2 -6
  272. package/lib/lowcode/view/lc-components/Button/meta.json +3 -3
  273. package/lib/lowcode/view/lc-components/CardList/meta.json +13 -3
  274. package/lib/lowcode/view/lc-components/Dialog/index.js +32 -5
  275. package/lib/lowcode/view/lc-components/Dialog/meta.json +12 -5
  276. package/lib/lowcode/view/lc-components/Drawer/meta.json +8 -20
  277. package/lib/lowcode/view/lc-components/FieldColor/meta.json +63 -0
  278. package/lib/lowcode/view/lc-components/FieldComplex/meta.json +39 -0
  279. package/lib/lowcode/view/lc-components/FieldDate/meta.json +45 -0
  280. package/lib/lowcode/view/lc-components/FieldDict/meta.json +44 -0
  281. package/lib/lowcode/view/lc-components/FieldEditor/meta.json +44 -0
  282. package/lib/lowcode/view/lc-components/FieldGroup/meta.json +73 -0
  283. package/lib/lowcode/view/lc-components/FieldNumber/meta.json +48 -0
  284. package/lib/lowcode/view/lc-components/FieldRadio/meta.json +20 -0
  285. package/lib/lowcode/view/lc-components/FieldRegion/meta.json +26 -0
  286. package/lib/lowcode/view/lc-components/FieldSelect/meta.json +58 -0
  287. package/lib/lowcode/view/lc-components/FieldString/meta.json +62 -0
  288. package/lib/lowcode/view/lc-components/FieldSwitch/meta.json +31 -0
  289. package/lib/lowcode/view/lc-components/FieldTextarea/meta.json +49 -0
  290. package/lib/lowcode/view/lc-components/FieldUpload/meta.json +71 -0
  291. package/lib/lowcode/view/lc-components/FieldUser/meta.json +82 -0
  292. package/lib/lowcode/view/lc-components/FieldYear/meta.json +20 -0
  293. package/lib/lowcode/view/lc-components/Form/FunctionPreview.js +8 -1
  294. package/lib/lowcode/view/lc-components/Form/index.js +185 -35
  295. package/lib/lowcode/view/lc-components/Form/meta.json +15 -9
  296. package/lib/lowcode/view/lc-components/ImEx/FunctionDesign.js +8 -3
  297. package/lib/lowcode/view/lc-components/ImEx/index.js +468 -9
  298. package/lib/lowcode/view/lc-components/ImEx/index.less +7 -0
  299. package/lib/lowcode/view/lc-components/ImEx/meta.json +55 -23
  300. package/lib/lowcode/view/lc-components/Layout/meta.json +2 -2
  301. package/lib/lowcode/view/lc-components/Page/meta.json +2 -2
  302. package/lib/lowcode/view/lc-components/PageLayout/FunctionDesign.js +71 -0
  303. package/lib/lowcode/view/lc-components/PageLayout/FunctionLive.js +17 -0
  304. package/lib/lowcode/view/lc-components/PageLayout/FunctionPreview.js +17 -0
  305. package/lib/lowcode/view/lc-components/PageLayout/index.js +40 -0
  306. package/lib/lowcode/view/lc-components/PageLayout/meta.json +47 -0
  307. package/lib/lowcode/view/lc-components/Section/meta.json +2 -2
  308. package/lib/lowcode/view/lc-components/Split/FunctionDesign.js +12 -6
  309. package/lib/lowcode/view/lc-components/Split/index.js +2 -6
  310. package/lib/lowcode/view/lc-components/Split/meta.json +4 -4
  311. package/lib/lowcode/view/lc-components/Table/components/TopFilter.js +75 -55
  312. package/lib/lowcode/view/lc-components/Table/components/TopImex.js +428 -0
  313. package/lib/lowcode/view/lc-components/Table/index.js +226 -22
  314. package/lib/lowcode/view/lc-components/Table/meta.json +17 -11
  315. package/lib/lowcode/view/lc-components/Tabs/FunctionDesign.js +4 -3
  316. package/lib/lowcode/view/lc-components/Tabs/index.js +3 -1
  317. package/lib/lowcode/view/lc-components/Tabs/meta.json +3 -3
  318. package/lib/lowcode/view/lc-components/Tree/FunctionDesign.js +2 -3
  319. package/lib/lowcode/view/lc-components/Tree/index.js +93 -26
  320. package/lib/lowcode/view/lc-components/Tree/meta.json +62 -7
  321. package/lib/upload/FilesWall/index.js +13 -13
  322. package/lib/upload/FilesWall/index.less +74 -74
  323. package/lib/upload/Form/gridForm.js +3 -2
  324. package/lib/upload/FormItem/index.js +3 -5
  325. package/lib/utils/form.js +16 -3
  326. package/lib/utils/grid.js +8 -5
  327. package/package.json +3 -3
  328. package/es/lowcode/engine/meta/local/local.zh-cn.js +0 -97
  329. package/lib/lowcode/engine/meta/local/local.zh-cn.js +0 -103
@@ -1,10 +1,10 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
2
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
3
  import React, { useRef, useState } from 'react';
4
- import { useMemoizedFn, useLatest, useCreation, useMap, useUpdateEffect } from 'ahooks';
4
+ import { useMemoizedFn, useLatest, useCreation, useMap, useUpdateEffect, useDebounceFn } from 'ahooks';
5
5
  import { Modal, Icon, Input, Checkbox, Tooltip } from 'luck-design/antd';
6
6
  import classNames from 'classnames';
7
- import { debounce, reduce } from 'lodash';
7
+ import { reduce } from 'lodash';
8
8
  import { formatMessage } from '@luck-design-biz/base/utils';
9
9
  import { useRemoteSource } from "../../engine/provider/ContextProvider";
10
10
  import { useContext } from "../../engine/provider/ContextProvider";
@@ -33,7 +33,8 @@ var _ACTION_CATEGORY_ = [{
33
33
  var _DEFAULT_JSON_CODE_ = '{"params":{},"data":{}}';
34
34
  var _DEFAULT_JS_CODE_ = 'function todo() {\n\n}';
35
35
  var ActionBindModal = function ActionBindModal(_ref) {
36
- var event = _ref.event,
36
+ var nodeId = _ref.nodeId,
37
+ event = _ref.event,
37
38
  _ref$defaultCode = _ref.defaultCode,
38
39
  defaultCode = _ref$defaultCode === void 0 ? _DEFAULT_JS_CODE_ : _ref$defaultCode,
39
40
  onComfirm = _ref.onComfirm,
@@ -97,19 +98,23 @@ var ActionBindModal = function ActionBindModal(_ref) {
97
98
  }, [category]);
98
99
  useUpdateEffect(function () {
99
100
  if (activeKey) {
101
+ var _editorRef$current;
100
102
  var action = get(activeKey);
101
- editorRef.current.editor.setValue(action.code);
103
+ (_editorRef$current = editorRef.current) === null || _editorRef$current === void 0 || _editorRef$current.editor.setValue(action === null || action === void 0 ? void 0 : action.code);
102
104
  }
103
- }, [activeKey]);
105
+ }, [category, activeKey]);
104
106
  useUpdateEffect(function () {
105
107
  setAll(event === null || event === void 0 ? void 0 : event.actionPool);
106
108
  }, [event]);
107
- var handleEditorValueChange = useRef(debounce(function (code) {
108
- if (latestActiveKey.current) {
109
- var action = get(latestActiveKey.current);
110
- action.code = code;
111
- }
112
- }, 400));
109
+ var _useDebounceFn = useDebounceFn(function (code) {
110
+ if (latestActiveKey.current) {
111
+ var action = get(latestActiveKey.current);
112
+ action.code = code;
113
+ }
114
+ }, {
115
+ wait: 500
116
+ }),
117
+ handleEditorValueChange = _useDebounceFn.run;
113
118
  var handleOptionClick = useMemoizedFn(function (key) {
114
119
  setActiveKey(key);
115
120
  var action;
@@ -160,9 +165,9 @@ var ActionBindModal = function ActionBindModal(_ref) {
160
165
  marginTop: 0,
161
166
  padding: '4px 24px'
162
167
  },
163
- title: event === null || event === void 0 ? void 0 : event.name,
168
+ title: "".concat(event === null || event === void 0 ? void 0 : event.name, "(").concat(nodeId, ")"),
164
169
  visible: !!event,
165
- width: 960,
170
+ width: "70vw",
166
171
  closable: false,
167
172
  maskClosable: false,
168
173
  getContainer: function getContainer() {
@@ -190,7 +195,19 @@ var ActionBindModal = function ActionBindModal(_ref) {
190
195
  className: classNames(_defineProperty({}, styles.active, key === category)),
191
196
  onClick: function onClick() {
192
197
  setCategory(key);
193
- setActiveKey(void 0);
198
+ if ('custom' === key) {
199
+ var _activeKey = 'coding';
200
+ setActiveKey(_activeKey);
201
+ if (!actionPool.has(_activeKey)) {
202
+ set(_activeKey, {
203
+ category: key,
204
+ key: _activeKey,
205
+ code: event.func || defaultCode
206
+ });
207
+ }
208
+ } else {
209
+ setActiveKey(void 0);
210
+ }
194
211
  }
195
212
  }, label, key === category && /*#__PURE__*/React.createElement(Icon, {
196
213
  type: "check",
@@ -267,7 +284,7 @@ var ActionBindModal = function ActionBindModal(_ref) {
267
284
  className: styles['code-box']
268
285
  }, activeKey ? /*#__PURE__*/React.createElement(JSEditor, {
269
286
  ref: editorRef,
270
- onChange: handleEditorValueChange.current
287
+ onChange: handleEditorValueChange
271
288
  }) : formatMessage({
272
289
  id: "".concat(_I18N_PREFIX_, ".noActionSelected"),
273
290
  label: '请在右侧选择行为项'
@@ -278,7 +295,7 @@ var ActionBindModal = function ActionBindModal(_ref) {
278
295
  className: styles['code-box']
279
296
  }, activeKey ? /*#__PURE__*/React.createElement(JSEditor, {
280
297
  ref: editorRef,
281
- onChange: handleEditorValueChange.current
298
+ onChange: handleEditorValueChange
282
299
  }) : formatMessage({
283
300
  id: "".concat(_I18N_PREFIX_, ".noActionSelected"),
284
301
  label: '请在右侧选择行为项'
@@ -8,7 +8,8 @@ import React, { useState } from 'react';
8
8
  import { useCreation, useMemoizedFn } from 'ahooks';
9
9
  import { Menu, Dropdown, Button, Tooltip, Icon } from 'luck-design/antd';
10
10
  import styled from 'styled-components';
11
- import { keyBy, keys, omit } from 'lodash';
11
+ import { isNil, keyBy, keys, omit, reduce } from 'lodash';
12
+ import { useGet } from "../../engine/provider/ContextProvider";
12
13
  import { formatMessage } from '@luck-design-biz/base/utils';
13
14
  import Collapse from "./Collapse";
14
15
  import ActionBindModal from "./ActionBindModal";
@@ -19,8 +20,16 @@ var EventItem = styled.div.withConfig({
19
20
  })(["display:flex;align-items:center;justify-content:space-between;padding:4px 8px;border:1px solid #e5e6e8;border-radius:6px;margin-bottom:6px;font-size:12px;i{color:rgba(0,0,0,0.4);cursor:pointer;}i:not(:last-child){margin-right:6px;}"]);
20
21
  var AdvancePanel = function AdvancePanel(_ref) {
21
22
  var meta = _ref.meta,
22
- value = _ref.value,
23
+ nodeId = _ref.nodeId,
24
+ target = _ref.target,
23
25
  onChange = _ref.onChange;
26
+ var value = useGet(isNil(target) ? {
27
+ id: nodeId,
28
+ path: 'props.advance'
29
+ } : {
30
+ id: target.ancestorId,
31
+ path: "props.".concat(target.keyPath, ".advance")
32
+ });
24
33
  var _useState = useState((value === null || value === void 0 ? void 0 : value.events) || {}),
25
34
  _useState2 = _slicedToArray(_useState, 2),
26
35
  events = _useState2[0],
@@ -66,24 +75,28 @@ var AdvancePanel = function AdvancePanel(_ref) {
66
75
  style: {
67
76
  fontSize: 12
68
77
  }
69
- }, (_meta$advance2 = meta.advance) === null || _meta$advance2 === void 0 || (_meta$advance2 = _meta$advance2.events) === null || _meta$advance2 === void 0 ? void 0 : _meta$advance2.map(function (event) {
70
- return /*#__PURE__*/React.createElement(Menu.Item, {
71
- key: event.key,
72
- payload: event
73
- }, /*#__PURE__*/React.createElement(Tooltip, {
74
- title: event.desc || event.name,
75
- placement: "left",
76
- getPopupContainer: function getPopupContainer() {
77
- return document.getElementById('lc-design-workspace');
78
- }
79
- }, /*#__PURE__*/React.createElement("div", {
80
- style: {
81
- width: '100%',
82
- fontSize: 12
83
- }
84
- }, event.name)));
85
- }));
86
- }, []);
78
+ }, reduce((_meta$advance2 = meta.advance) === null || _meta$advance2 === void 0 ? void 0 : _meta$advance2.events, function (ret, event) {
79
+ var _value$events;
80
+ if (!(value !== null && value !== void 0 && (_value$events = value.events) !== null && _value$events !== void 0 && _value$events[event.key])) {
81
+ ret.push( /*#__PURE__*/React.createElement(Menu.Item, {
82
+ key: event.key,
83
+ payload: event
84
+ }, /*#__PURE__*/React.createElement(Tooltip, {
85
+ title: event.desc || event.name,
86
+ placement: "left",
87
+ getPopupContainer: function getPopupContainer() {
88
+ return document.getElementById('lc-design-workspace');
89
+ }
90
+ }, /*#__PURE__*/React.createElement("div", {
91
+ style: {
92
+ width: '100%',
93
+ fontSize: 12
94
+ }
95
+ }, event.name))));
96
+ }
97
+ return ret;
98
+ }, []));
99
+ }, [value]);
87
100
  return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Collapse, {
88
101
  field: "events",
89
102
  label: formatMessage({
@@ -94,7 +107,9 @@ var AdvancePanel = function AdvancePanel(_ref) {
94
107
  padding: '12px 16px'
95
108
  }
96
109
  }, keys(events).map(function (ek) {
97
- return /*#__PURE__*/React.createElement(EventItem, null, /*#__PURE__*/React.createElement("span", null, metaMap[ek].name), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Tooltip, {
110
+ return /*#__PURE__*/React.createElement(EventItem, {
111
+ key: ek
112
+ }, /*#__PURE__*/React.createElement("span", null, metaMap[ek].name), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Tooltip, {
98
113
  title: formatMessage({
99
114
  id: 'luckda.lowcode.painter.edit',
100
115
  label: '编辑'
@@ -130,6 +145,7 @@ var AdvancePanel = function AdvancePanel(_ref) {
130
145
  id: "".concat(_I18N_PREFIX_, ".addEventAction"),
131
146
  label: '添加事件动作'
132
147
  })))), /*#__PURE__*/React.createElement(ActionBindModal, {
148
+ nodeId: nodeId,
133
149
  event: event,
134
150
  onComfirm: handleComfirm,
135
151
  onClose: function onClose() {
@@ -8,7 +8,7 @@ import { useBoolean, useCreation, useMemoizedFn } from 'ahooks';
8
8
  import { Drawer, Icon } from 'luck-design/antd';
9
9
  import classNames from 'classnames';
10
10
  import { startsWith, isNil, get } from 'lodash';
11
- import { useContext } from "../../engine/provider/ContextProvider";
11
+ import { useGet } from "../../engine/provider/ContextProvider";
12
12
  import PanelItemFactory from "../../engine/factory/panel-item-factory";
13
13
  import PanelItem from "./PanelItem";
14
14
  import Collapse from "./Collapse";
@@ -16,7 +16,8 @@ import styles from "../style/panel-attrs.less";
16
16
  var AttrsPanel = function AttrsPanel(_ref) {
17
17
  var _nextRef$current2, _nextRef$current3;
18
18
  var meta = _ref.meta,
19
- value = _ref.value,
19
+ nodeId = _ref.nodeId,
20
+ ancestorId = _ref.ancestorId,
20
21
  onChange = _ref.onChange;
21
22
  var nextRef = useRef(null);
22
23
  var factory = useRef(new PanelItemFactory());
@@ -26,7 +27,10 @@ var AttrsPanel = function AttrsPanel(_ref) {
26
27
  _useBoolean2$ = _useBoolean2[1],
27
28
  setTrue = _useBoolean2$.setTrue,
28
29
  setFalse = _useBoolean2$.setFalse;
29
- var context = useContext();
30
+ var node = useGet({
31
+ id: isNil(ancestorId) ? nodeId : ancestorId,
32
+ path: 'props'
33
+ });
30
34
  var handleChange = useMemoizedFn(function (field, val, _ref2) {
31
35
  var _nextRef$current;
32
36
  var repositioning = _ref2.repositioning,
@@ -49,7 +53,6 @@ var AttrsPanel = function AttrsPanel(_ref) {
49
53
  setTrue();
50
54
  });
51
55
  var renderPanelItems = useMemoizedFn(function (items, dynamicProps) {
52
- var node = context.componentMap.get(value.id).api.getSelfData();
53
56
  return items.map(function (_ref3) {
54
57
  var type = _ref3.type,
55
58
  key = _ref3.key,
@@ -64,9 +67,10 @@ var AttrsPanel = function AttrsPanel(_ref) {
64
67
  repositioning = _ref3.repositioning,
65
68
  rest = _objectWithoutProperties(_ref3, _excluded);
66
69
  var Comp = factory.current.getPanelItemFor(startsWith(type, '_') ? 'dynamic' : type, type);
70
+ var _valueKey = (dynamicProps === null || dynamicProps === void 0 ? void 0 : dynamicProps.valueKey) || valueKey;
67
71
  if (type === 'group') {
68
72
  return /*#__PURE__*/React.createElement(Comp, {
69
- nodeId: value.id,
73
+ nodeId: nodeId,
70
74
  key: key,
71
75
  field: key,
72
76
  label: name,
@@ -77,29 +81,29 @@ var AttrsPanel = function AttrsPanel(_ref) {
77
81
  desc: desc
78
82
  }, renderPanelItems(props || [], dynamicProps));
79
83
  }
80
- var _originalVal = get(node.props, valueKey || key);
84
+ var _originalVal = get(node, _valueKey || key);
81
85
  var comp = Comp && /*#__PURE__*/React.createElement(Comp, _extends({
82
- nodeId: value.id,
86
+ nodeId: nodeId,
83
87
  key: key,
84
88
  defaultValue: isNil(_originalVal) ? defaultValue : _originalVal,
85
89
  next: next !== null && next !== void 0 && next.props ? function (_dp) {
86
90
  return goNext(next, _dp);
87
91
  } : null,
88
92
  onChange: function onChange(val, before) {
89
- return handleChange(valueKey || key, val, {
93
+ return handleChange(_valueKey || key, val, {
90
94
  repositioning: repositioning,
91
95
  before: before
92
96
  });
93
97
  },
94
98
  size: "small",
95
- settings: node.props,
99
+ settings: node,
96
100
  renderPanelItems: renderPanelItems
97
101
  }, rest, dynamicProps));
98
102
  if (wrapper === 'hidden') return comp;
99
103
  var Wrapper = wrapper === 'collapse' ? Collapse : PanelItem;
100
104
  return /*#__PURE__*/React.createElement(Wrapper, _extends({
101
105
  key: key,
102
- nodeId: value.id,
106
+ nodeId: nodeId,
103
107
  field: key,
104
108
  label: name,
105
109
  desc: desc
@@ -112,7 +116,7 @@ var AttrsPanel = function AttrsPanel(_ref) {
112
116
  return /*#__PURE__*/React.createElement(React.Fragment, null);
113
117
  }
114
118
  return renderPanelItems(meta.props);
115
- }, [value]);
119
+ }, [nodeId]);
116
120
  useEffect(function () {
117
121
  if (!open) {
118
122
  nextRef.current = null;
@@ -120,7 +124,7 @@ var AttrsPanel = function AttrsPanel(_ref) {
120
124
  }, [open]);
121
125
  return /*#__PURE__*/React.createElement("div", {
122
126
  id: "lc-painter-panel-attrs-container",
123
- className: classNames(styles['lc-painter-panel-attrs'], _defineProperty(_defineProperty({}, styles.hidden, !value), styles.showNext, open))
127
+ className: classNames(styles['lc-painter-panel-attrs'], _defineProperty(_defineProperty({}, styles.hidden, !nodeId), styles.showNext, open))
124
128
  }, PropsComps, /*#__PURE__*/React.createElement(Drawer, {
125
129
  visible: open,
126
130
  width: 320,
@@ -3,33 +3,46 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
4
  var _excluded = ["dsid", "defaultValue", "onChange"];
5
5
  import React, { useState } from 'react';
6
+ import { useRequest } from 'ahooks';
6
7
  import { Select } from 'luck-design/antd';
7
8
  import { formatMessage } from '@luck-design-biz/base/utils';
9
+ import { fetchFieldsByDataset } from "../../constants/api-url";
10
+ import { getLDMetaAttr } from "../../engine/tools/helper";
8
11
  var FieldSelector = function FieldSelector(_ref) {
9
12
  var dsid = _ref.dsid,
10
13
  defaultValue = _ref.defaultValue,
11
14
  onChange = _ref.onChange,
12
15
  props = _objectWithoutProperties(_ref, _excluded);
13
- var _useState = useState([{
14
- value: 'state',
15
- label: '状态'
16
- }, {
17
- value: 'type',
18
- label: '类型'
19
- }, {
20
- value: 'year',
21
- label: '年份'
22
- }, {
23
- value: 'count',
24
- label: '次数'
25
- }]),
16
+ var _useState = useState([]),
26
17
  _useState2 = _slicedToArray(_useState, 2),
27
18
  options = _useState2[0],
28
19
  setOptions = _useState2[1];
20
+ var _useRequest = useRequest(fetchFieldsByDataset, {
21
+ defaultParams: [{
22
+ datasetUid: dsid,
23
+ moduleUid: getLDMetaAttr('moduleId')
24
+ }],
25
+ ready: !!dsid,
26
+ onSuccess: function onSuccess(_ref2) {
27
+ var code = _ref2.code,
28
+ list = _ref2.list,
29
+ detail = _ref2.detail;
30
+ if (code === 1) {
31
+ setOptions(list.map(function (_id) {
32
+ return {
33
+ value: detail[_id].field,
34
+ label: detail[_id].fieldAliasName
35
+ };
36
+ }));
37
+ }
38
+ }
39
+ }),
40
+ loading = _useRequest.loading;
29
41
  return /*#__PURE__*/React.createElement(Select, _extends({
30
42
  defaultValue: defaultValue,
31
43
  onChange: onChange,
32
44
  size: "small",
45
+ loading: loading,
33
46
  placeholder: formatMessage({
34
47
  id: "luckda.lowcode.painter.panel-section.field-selector.placeholder",
35
48
  label: '请选择字段'
@@ -1,14 +1,13 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
3
  import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
4
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
4
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
6
5
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
7
6
  var _excluded = ["children"];
8
7
  import React, { useEffect, forwardRef } from 'react';
9
- import BaseEditor from "./BaseEditor";
10
8
  import * as monaco from 'monaco-editor';
11
9
  import { isNil } from 'lodash';
10
+ import BaseEditor from "./BaseEditor";
12
11
  function capitalizeFirstLetter(string) {
13
12
  if (isNil(string)) return null;
14
13
  if (string.length === 0) {
@@ -27,7 +26,6 @@ var _provideCompletionItems = function provideCompletionItems(monaco, model, pos
27
26
  // 正则表达式匹配以 triggerWord 开头的任何单词
28
27
  var pattern = new RegExp('\\b' + module.triggerWord + '[\\w.]*', 'i');
29
28
  var match = textUntilPosition.match(pattern);
30
- // console.log('match',match)
31
29
  if (match) {
32
30
  var word = model.getWordUntilPosition(position);
33
31
  var range = {
@@ -55,10 +53,7 @@ var setupAutocomplete = /*#__PURE__*/function () {
55
53
  return import("../../../engine/meta/js-editor/auto-complete.json");
56
54
  case 2:
57
55
  autoCompleteModules = _context.sent;
58
- // console.log('autoCompleteModules', autoCompleteModules);
59
-
60
- monaco.languages.registerCompletionItemProvider('javascript', _defineProperty({
61
- triggerCharacters: ['.'],
56
+ monaco.languages.registerCompletionItemProvider('javascript', {
62
57
  provideCompletionItems: function provideCompletionItems(model, position) {
63
58
  var allCompletionItems = [];
64
59
 
@@ -70,8 +65,9 @@ var setupAutocomplete = /*#__PURE__*/function () {
70
65
  return {
71
66
  suggestions: allCompletionItems
72
67
  };
73
- }
74
- }, "triggerCharacters", ['.']));
68
+ },
69
+ triggerCharacters: ['.'] // 当用户输入点号时触发补全
70
+ });
75
71
  case 4:
76
72
  case "end":
77
73
  return _context.stop();
@@ -0,0 +1,108 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
+ import React, { useRef, useImperativeHandle, useState } from 'react';
3
+ import { useMount, useCreation } from 'ahooks';
4
+ import { keyBy } from 'lodash';
5
+ import { Form, Row, Col, Select } from 'luck-design/antd';
6
+ import styled from 'styled-components';
7
+ import { formatMessage } from '@luck-design-biz/base/utils';
8
+ import { JSEditor } from "../code-editor";
9
+ import { getFrontRules } from "./meta/frontRules";
10
+ var _I18N_PREFIX_ = 'luckda.lowcode.painter.panel-section.fieldsSetting.checkRules';
11
+ var FormItem = styled(Form.Item).withConfig({
12
+ displayName: "FormItem",
13
+ componentId: "luckda-6530__sc-d9mrmm-0"
14
+ })(["margin-bottom:0;"]);
15
+ var CheckRules = function CheckRules(_ref) {
16
+ var form = _ref.form,
17
+ fields = _ref.fields,
18
+ rule = _ref.rule,
19
+ fieldData = _ref.fieldData,
20
+ ruleRef = _ref.ruleRef;
21
+ var _useState = useState(),
22
+ _useState2 = _slicedToArray(_useState, 2),
23
+ verifyType = _useState2[0],
24
+ setVerifyType = _useState2[1];
25
+ var _useState3 = useState(''),
26
+ _useState4 = _slicedToArray(_useState3, 2),
27
+ expression = _useState4[0],
28
+ setExpression = _useState4[1];
29
+ var jsRef = useRef();
30
+ useImperativeHandle(ruleRef, function () {
31
+ return jsRef.current;
32
+ });
33
+ useMount(function () {
34
+ if (rule.uid) {
35
+ form.setFieldsValue({
36
+ verifyType: rule.verifyType
37
+ });
38
+ setExpression(rule.expression);
39
+ } else {
40
+ var defaultType = getFrontRules(fieldData.property)[0].key;
41
+ form.setFieldsValue({
42
+ verifyType: defaultType
43
+ });
44
+ setVerifyType(defaultType);
45
+ }
46
+ });
47
+ var frontRulesObj = useCreation(function () {
48
+ return keyBy(getFrontRules(fieldData.property), 'key');
49
+ }, []);
50
+ var frontRule = useCreation(function () {
51
+ var _frontRulesObj$verify;
52
+ setExpression(((_frontRulesObj$verify = frontRulesObj[verifyType]) === null || _frontRulesObj$verify === void 0 ? void 0 : _frontRulesObj$verify.defaultCode) || '');
53
+ if (verifyType) return frontRulesObj[verifyType];
54
+ return {
55
+ noCode: false
56
+ };
57
+ }, [verifyType]);
58
+ return /*#__PURE__*/React.createElement(Form, {
59
+ layout: "vertical"
60
+ }, /*#__PURE__*/React.createElement(Row, {
61
+ gutter: 8
62
+ }, /*#__PURE__*/React.createElement(Col, {
63
+ span: 24
64
+ }, /*#__PURE__*/React.createElement(FormItem, {
65
+ label: formatMessage({
66
+ id: "".concat(_I18N_PREFIX_, ".verifyType"),
67
+ label: '校验规则'
68
+ })
69
+ }, form.getFieldDecorator('verifyType', {
70
+ rules: [{
71
+ required: true,
72
+ message: formatMessage({
73
+ id: "".concat(_I18N_PREFIX_, ".message.verifyType"),
74
+ label: '请选择校验规则'
75
+ })
76
+ }]
77
+ })( /*#__PURE__*/React.createElement(Select, {
78
+ onChange: function onChange(val) {
79
+ console.log('setVerifyType');
80
+ setVerifyType(val);
81
+ }
82
+ }, getFrontRules(fieldData.property).map(function (rule) {
83
+ return /*#__PURE__*/React.createElement(Option, {
84
+ key: rule.key,
85
+ value: rule.key
86
+ }, rule.label);
87
+ }))))), !frontRule.noCode && /*#__PURE__*/React.createElement(Col, {
88
+ span: 24
89
+ }, /*#__PURE__*/React.createElement("span", {
90
+ style: {
91
+ fontSize: '14px',
92
+ marginBottom: '16px',
93
+ color: 'rgba(0, 0, 0, 0.85)'
94
+ }
95
+ }, formatMessage({
96
+ id: "".concat(_I18N_PREFIX_, ".logic"),
97
+ label: '校验逻辑'
98
+ })), /*#__PURE__*/React.createElement(JSEditor, {
99
+ style: {
100
+ height: '300px',
101
+ border: '1px solid rgb(217, 217, 217)',
102
+ borderRadius: '4px',
103
+ padding: '12px'
104
+ },
105
+ ref: jsRef
106
+ }, expression))));
107
+ };
108
+ export default CheckRules;
@@ -29,7 +29,7 @@ var CheckRules = function CheckRules(_ref) {
29
29
  }, /*#__PURE__*/React.createElement(Row, {
30
30
  gutter: 8
31
31
  }, /*#__PURE__*/React.createElement(Col, {
32
- span: 12
32
+ span: 24
33
33
  }, /*#__PURE__*/React.createElement(FormItem, {
34
34
  label: formatMessage({
35
35
  id: "".concat(_I18N_PREFIX_, ".verifyType"),
@@ -50,31 +50,6 @@ var CheckRules = function CheckRules(_ref) {
50
50
  }, val));
51
51
  return types;
52
52
  }, []))))), /*#__PURE__*/React.createElement(Col, {
53
- span: 12
54
- }, /*#__PURE__*/React.createElement(FormItem, {
55
- label: formatMessage({
56
- id: "".concat(_I18N_PREFIX_, ".verifyScope"),
57
- label: '校验类型'
58
- })
59
- }, form.getFieldDecorator('verifyScope', {
60
- rules: [{
61
- required: true,
62
- message: formatMessage({
63
- id: "".concat(_I18N_PREFIX_, ".message.verifyScope"),
64
- label: '请选择校验类型'
65
- })
66
- }]
67
- })( /*#__PURE__*/React.createElement(Select, null, /*#__PURE__*/React.createElement(Option, {
68
- value: 0
69
- }, formatMessage({
70
- id: "".concat(_I18N_PREFIX_, ".frontend"),
71
- label: '前端'
72
- })), /*#__PURE__*/React.createElement(Option, {
73
- value: 1
74
- }, formatMessage({
75
- id: "".concat(_I18N_PREFIX_, ".backend"),
76
- label: '后端'
77
- })))))), /*#__PURE__*/React.createElement(Col, {
78
53
  span: 24
79
54
  }, /*#__PURE__*/React.createElement(FormItem, {
80
55
  label: formatMessage({
@@ -2,12 +2,15 @@ import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
2
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
3
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
4
4
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
5
- import React from 'react';
5
+ import React, { useRef } from 'react';
6
6
  import { useMemoizedFn, useBoolean } from 'ahooks';
7
7
  import { Modal, Form } from 'luck-design/antd';
8
+ import { formatMessage } from '@luck-design-biz/base/utils';
8
9
  import CheckRules from "./CheckRules";
10
+ import CheckFrontRules from "./CheckFrontRules";
9
11
  import { fetchAddFieldAttrs, fetchUpdateFieldAttrs } from "../../../constants/api-url";
10
12
  import { FIELD_SCOPES } from "../../../constants";
13
+ var _I18N_PREFIX_ = 'luckda.lowcode.painter.panel-section.fieldsSetting';
11
14
  var FieldRulesModal = Form.create({
12
15
  name: 'field-rules-form'
13
16
  })(function (_ref) {
@@ -27,6 +30,7 @@ var FieldRulesModal = Form.create({
27
30
  _useBoolean2$ = _useBoolean2[1],
28
31
  setTrue = _useBoolean2$.setTrue,
29
32
  setFalse = _useBoolean2$.setFalse;
33
+ var frontRuleRef = useRef();
30
34
  var handleOk = useMemoizedFn( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
31
35
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
32
36
  while (1) switch (_context2.prev = _context2.next) {
@@ -34,7 +38,8 @@ var FieldRulesModal = Form.create({
34
38
  setTrue();
35
39
  form.validateFields( /*#__PURE__*/function () {
36
40
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(err, vals) {
37
- var request, data, _yield$request, code;
41
+ var _frontRuleRef$current;
42
+ var request, data, expression, _val, _yield$request, code;
38
43
  return _regeneratorRuntime().wrap(function _callee$(_context) {
39
44
  while (1) switch (_context.prev = _context.next) {
40
45
  case 0:
@@ -48,29 +53,35 @@ var FieldRulesModal = Form.create({
48
53
  data = {
49
54
  scope: FIELD_SCOPES.CHECK_RULES
50
55
  };
56
+ expression = (_frontRuleRef$current = frontRuleRef.current) === null || _frontRuleRef$current === void 0 ? void 0 : _frontRuleRef$current.editor.getValue();
57
+ _val = expression ? _objectSpread(_objectSpread({}, vals), {}, {
58
+ expression: expression
59
+ }) : vals;
51
60
  if (rule.uid) {
52
- data.ccmModuleFieldVerifies = [_objectSpread(_objectSpread({}, vals), {}, {
53
- uid: rule.uid
61
+ data.ccmModuleFieldVerifies = [_objectSpread(_objectSpread({}, _val), {}, {
62
+ uid: rule.uid,
63
+ verifyScope: (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? 0 : 1
54
64
  })];
55
65
  } else {
56
- data.ccmModuleFieldVerifies = [_objectSpread(_objectSpread({}, vals), {}, {
57
- dataModelKey: dataModelKey
66
+ data.ccmModuleFieldVerifies = [_objectSpread(_objectSpread({}, _val), {}, {
67
+ dataModelKey: dataModelKey,
68
+ verifyScope: (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? 0 : 1
58
69
  })];
59
70
  data.dataModelKey = dataModelKey;
60
71
  data.datasetBusinessUids = [fieldData.uid];
61
72
  data.moduleDatasetUid = datasetId;
62
73
  data.moduleUid = moduleId;
63
74
  }
64
- _context.next = 7;
75
+ _context.next = 9;
65
76
  return request(data);
66
- case 7:
77
+ case 9:
67
78
  _yield$request = _context.sent;
68
79
  code = _yield$request.code;
69
80
  setFalse();
70
81
  if (code === 1) {
71
- onClose(true);
82
+ onClose(true, (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? 0 : 1);
72
83
  }
73
- case 11:
84
+ case 13:
74
85
  case "end":
75
86
  return _context.stop();
76
87
  }
@@ -87,7 +98,10 @@ var FieldRulesModal = Form.create({
87
98
  }, _callee2);
88
99
  })));
89
100
  return /*#__PURE__*/React.createElement(Modal, {
90
- title: condition === null || condition === void 0 || (_condition$FIELD_SCOP = condition[FIELD_SCOPES.CHECK_RULES]) === null || _condition$FIELD_SCOP === void 0 ? void 0 : _condition$FIELD_SCOP.scopeName,
101
+ title: (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? formatMessage({
102
+ id: "".concat(_I18N_PREFIX_, ".rules.front"),
103
+ label: '前端校验规则'
104
+ }) : condition === null || condition === void 0 || (_condition$FIELD_SCOP = condition[FIELD_SCOPES.CHECK_RULES]) === null || _condition$FIELD_SCOP === void 0 ? void 0 : _condition$FIELD_SCOP.scopeName,
91
105
  width: 800,
92
106
  visible: !!rule,
93
107
  getContainer: function getContainer() {
@@ -104,9 +118,15 @@ var FieldRulesModal = Form.create({
104
118
  },
105
119
  onOk: handleOk,
106
120
  onCancel: function onCancel() {
107
- return onClose(false);
121
+ return onClose(false, (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' ? 0 : 1);
108
122
  }
109
- }, /*#__PURE__*/React.createElement(CheckRules, {
123
+ }, (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'front' && /*#__PURE__*/React.createElement(CheckFrontRules, {
124
+ form: form,
125
+ rule: rule,
126
+ fields: fields,
127
+ ruleRef: frontRuleRef,
128
+ fieldData: fieldData
129
+ }), (rule === null || rule === void 0 ? void 0 : rule.ruleType) === 'back' && /*#__PURE__*/React.createElement(CheckRules, {
110
130
  form: form,
111
131
  rule: rule,
112
132
  condition: condition === null || condition === void 0 ? void 0 : condition[FIELD_SCOPES.CHECK_RULES],