@luck-design-biz/luckda 1.0.2-12 → 1.0.2-14

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 (456) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +40 -40
  3. package/es/components/Builder/index.js +13 -10
  4. package/es/components/LDActions/index.less +70 -70
  5. package/es/components/LdAutoForm/index.js +5 -4
  6. package/es/components/LdCom/index.js +3 -2
  7. package/es/components/LdFormList/index.js +4 -3
  8. package/es/components/LdGrid/index.js +4 -4
  9. package/es/components/LdGridForm/index.js +5 -4
  10. package/es/components/LdGridForm/index.less +7 -7
  11. package/es/components/LdTree/index.less +42 -42
  12. package/es/helper/FromItems.js +64 -5
  13. package/es/helper/action.js +6 -6
  14. package/es/helper/form.js +14 -14
  15. package/es/helper/index.less +7 -7
  16. package/es/helper/ldBuilder.js +5 -4
  17. package/es/helper/ldComBuild.js +16 -11
  18. package/es/locales/zh-CN.js +43 -5
  19. package/es/lowcode/constants/api-url.js +309 -261
  20. package/es/lowcode/constants/event-topics.js +2 -0
  21. package/es/lowcode/constants/index.js +5 -4
  22. package/es/lowcode/engine/meta/components-list.json +12 -6
  23. package/es/lowcode/engine/meta/dialog.props.default.json +3 -1
  24. package/es/lowcode/engine/meta/dialog.props.json +4 -2
  25. package/es/lowcode/engine/meta/drawer.props.json +1 -1
  26. package/es/lowcode/engine/meta/fielddate.props.default.json +1 -0
  27. package/es/lowcode/engine/meta/fielddate.props.json +48 -0
  28. package/es/lowcode/engine/meta/js-editor/auto-complete.json +35 -30
  29. package/es/lowcode/engine/meta/proxy.props.default.json +15 -0
  30. package/es/lowcode/engine/meta/proxy.props.json +66 -0
  31. package/es/lowcode/engine/provider/ContextProvider/index.js +87 -49
  32. package/es/lowcode/engine/provider/ContextProvider/usePageDataStore.js +49 -43
  33. package/es/lowcode/engine/provider/ContextProvider/usePageVar.js +11 -5
  34. package/es/lowcode/engine/provider/ContextProvider/useTodo.js +2 -4
  35. package/es/lowcode/engine/provider/EventBusProvider.js +14 -4
  36. package/es/lowcode/engine/provider/PageProxyProvider.js +95 -0
  37. package/es/lowcode/engine/provider/RemoteSourceProvider.js +10 -12
  38. package/es/lowcode/engine/tools/dataProcess.js +76 -76
  39. package/es/lowcode/engine/tools/helper.js +25 -1
  40. package/es/lowcode/engine/tools/initDS.js +4 -4
  41. package/es/lowcode/painter/Components.js +2 -2
  42. package/es/lowcode/painter/Design.js +1 -0
  43. package/es/lowcode/painter/DesignOperator.js +129 -27
  44. package/es/lowcode/painter/DesignToolbar.js +88 -173
  45. package/es/lowcode/painter/components/AdvancePanel.js +29 -11
  46. package/es/lowcode/painter/components/Collapse.js +26 -26
  47. package/es/lowcode/painter/components/ColorInput.js +24 -24
  48. package/es/lowcode/painter/components/ListEditor.js +24 -24
  49. package/es/lowcode/painter/components/NumberInput.js +28 -28
  50. package/es/lowcode/painter/components/PanelItem.js +24 -24
  51. package/es/lowcode/painter/components/PopConfirm.js +8 -8
  52. package/es/lowcode/painter/components/PopForm.js +27 -27
  53. package/es/lowcode/painter/components/RuleInput.js +30 -30
  54. package/es/lowcode/painter/components/SortBox.js +22 -22
  55. package/es/lowcode/painter/components/TipIcon.js +12 -4
  56. package/es/lowcode/painter/components/TreeEditor.js +10 -10
  57. package/es/lowcode/painter/components/code-editor/BaseEditor.js +32 -32
  58. package/es/lowcode/painter/components/code-editor/CssEditor.js +25 -25
  59. package/es/lowcode/painter/components/code-editor/FullScreenEditor.js +23 -23
  60. package/es/lowcode/painter/components/code-editor/JSEditor.js +20 -20
  61. package/es/lowcode/painter/components/code-editor/JsonEditor.js +25 -25
  62. package/es/lowcode/painter/components/field-setting/SettingUI.js +56 -4
  63. package/es/lowcode/painter/components/field-setting/index.js +24 -1
  64. package/es/lowcode/painter/components/shortcut-modal/KeyIcon.js +11 -0
  65. package/es/lowcode/painter/components/shortcut-modal/index.js +208 -0
  66. package/es/lowcode/painter/panel-section/BlockEditor/index.js +10 -19
  67. package/es/lowcode/painter/panel-section/BlocksEditor/index.js +4 -1
  68. package/es/lowcode/painter/panel-section/ConditionCheck.js +70 -0
  69. package/es/lowcode/painter/panel-section/DataSetSelector.js +6 -3
  70. package/es/lowcode/painter/panel-section/FieldsSetting.js +1 -1
  71. package/es/lowcode/painter/panel-section/Icon.js +23 -23
  72. package/es/lowcode/painter/panel-section/IconConditionSelector.js +2 -1
  73. package/es/lowcode/painter/panel-section/IconSelector.js +16 -16
  74. package/es/lowcode/painter/panel-section/JSEditor/ToolBar.js +7 -4
  75. package/es/lowcode/painter/panel-section/JSEditor/index.js +43 -5
  76. package/es/lowcode/painter/panel-section/JSEditor/index.less +4 -0
  77. package/es/lowcode/painter/panel-section/LayoutRatio.js +21 -21
  78. package/es/lowcode/painter/panel-section/ProxyLinker.js +137 -0
  79. package/es/lowcode/painter/panel-section/ProxyParams.js +28 -0
  80. package/es/lowcode/painter/panel-section/ProxyParamsSetter.js +240 -0
  81. package/es/lowcode/painter/panel-section/StylePanel/BackGround.js +2 -2
  82. package/es/lowcode/painter/panel-section/StylePanel/Border.js +2 -2
  83. package/es/lowcode/painter/panel-section/StylePanel/BorderRadius.js +2 -2
  84. package/es/lowcode/painter/panel-section/StylePanel/BorderRadiusSelector.js +2 -2
  85. package/es/lowcode/painter/panel-section/StylePanel/BorderSelector.js +2 -2
  86. package/es/lowcode/painter/panel-section/StylePanel/Display.js +2 -2
  87. package/es/lowcode/painter/panel-section/StylePanel/Font.js +2 -2
  88. package/es/lowcode/painter/panel-section/StylePanel/FontEditor.js +2 -2
  89. package/es/lowcode/painter/panel-section/StylePanel/GapSelector.js +2 -2
  90. package/es/lowcode/painter/panel-section/StylePanel/HighLightPanel.js +2 -2
  91. package/es/lowcode/painter/panel-section/StylePanel/HighLigthtSpan.js +2 -2
  92. package/es/lowcode/painter/panel-section/StylePanel/HightLightSvg.js +2 -2
  93. package/es/lowcode/painter/panel-section/StylePanel/MainPanel.js +2 -2
  94. package/es/lowcode/painter/panel-section/StylePanel/Margin.js +2 -2
  95. package/es/lowcode/painter/panel-section/StylePanel/Opacity.js +2 -2
  96. package/es/lowcode/painter/panel-section/StylePanel/Padding.js +2 -2
  97. package/es/lowcode/painter/panel-section/StylePanel/Pointer.js +2 -2
  98. package/es/lowcode/painter/panel-section/StylePanel/Shadow.js +2 -2
  99. package/es/lowcode/painter/panel-section/StylePanel/Size.js +2 -2
  100. package/es/lowcode/painter/panel-section/StylePanel/StyleContext.js +2 -2
  101. package/es/lowcode/painter/panel-section/StylePanel/StyleRow.js +2 -2
  102. package/es/lowcode/painter/panel-section/StylePanel/WidthHeight.js +2 -2
  103. package/es/lowcode/painter/panel-section/StylePanel/index.js +15 -15
  104. package/es/lowcode/painter/style/action-bind-modal.less +104 -104
  105. package/es/lowcode/painter/style/actions-editor.less +15 -15
  106. package/es/lowcode/painter/style/border-editor.less +36 -36
  107. package/es/lowcode/painter/style/border-radius-selector.less +42 -42
  108. package/es/lowcode/painter/style/border-selector.less +39 -39
  109. package/es/lowcode/painter/style/button-type.less +5 -5
  110. package/es/lowcode/painter/style/collapse.less +28 -28
  111. package/es/lowcode/painter/style/color-input.less +19 -19
  112. package/es/lowcode/painter/style/components.less +91 -91
  113. package/es/lowcode/painter/style/design.less +178 -178
  114. package/es/lowcode/painter/style/display.less +17 -17
  115. package/es/lowcode/painter/style/dragdrop.less +56 -56
  116. package/es/lowcode/painter/style/fields-setting.less +25 -25
  117. package/es/lowcode/painter/style/font-editor.less +9 -9
  118. package/es/lowcode/painter/style/fullscreen-editor.less +17 -17
  119. package/es/lowcode/painter/style/history.less +46 -46
  120. package/es/lowcode/painter/style/icon-selector.less +22 -22
  121. package/es/lowcode/painter/style/icon.less +10 -10
  122. package/es/lowcode/painter/style/impexp.less +7 -7
  123. package/es/lowcode/painter/style/index.less +6 -6
  124. package/es/lowcode/painter/style/layout-ratio.less +51 -51
  125. package/es/lowcode/painter/style/list-editor.less +97 -97
  126. package/es/lowcode/painter/style/number-input.less +19 -19
  127. package/es/lowcode/painter/style/outline.less +30 -30
  128. package/es/lowcode/painter/style/page-layout-display.less +27 -27
  129. package/es/lowcode/painter/style/page-vars.less +25 -25
  130. package/es/lowcode/painter/style/panel-attrs.less +47 -47
  131. package/es/lowcode/painter/style/panel-item.less +55 -54
  132. package/es/lowcode/painter/style/panel.less +100 -100
  133. package/es/lowcode/painter/style/pop-confirm.less +17 -17
  134. package/es/lowcode/painter/style/pop-form.less +19 -19
  135. package/es/lowcode/painter/style/radio.less +24 -24
  136. package/es/lowcode/painter/style/ribbon.less +7 -7
  137. package/es/lowcode/painter/style/rule-input.less +12 -12
  138. package/es/lowcode/painter/style/split-display.less +18 -18
  139. package/es/lowcode/painter/style/style-panel.less +37 -37
  140. package/es/lowcode/painter/style/tabitems.less +90 -90
  141. package/es/lowcode/painter/svg/code.svg +3 -3
  142. package/es/lowcode/painter/svg/expect.svg +9 -9
  143. package/es/lowcode/preview/DebugTool.js +78 -0
  144. package/es/lowcode/preview/DebugToolDetail.js +103 -0
  145. package/es/lowcode/preview/index.js +10 -17
  146. package/es/lowcode/preview/useDebugSettings.js +62 -0
  147. package/es/lowcode/view/Canvas.js +5 -1
  148. package/es/lowcode/view/Page.js +8 -3
  149. package/es/lowcode/view/lc-components/Box/index.js +4 -4
  150. package/es/lowcode/view/lc-components/Box/index.less +14 -14
  151. package/es/lowcode/view/lc-components/Box/meta.json +40 -40
  152. package/es/lowcode/view/lc-components/Button/index.js +33 -33
  153. package/es/lowcode/view/lc-components/Button/meta.json +127 -127
  154. package/es/lowcode/view/lc-components/Button/style.less +2 -2
  155. package/es/lowcode/view/lc-components/CardList/index.js +126 -123
  156. package/es/lowcode/view/lc-components/CardList/meta.json +332 -332
  157. package/es/lowcode/view/lc-components/Dialog/index.js +18 -17
  158. package/es/lowcode/view/lc-components/Dialog/index.less +12 -12
  159. package/es/lowcode/view/lc-components/Dialog/meta.json +224 -222
  160. package/es/lowcode/view/lc-components/Drawer/index.js +18 -16
  161. package/es/lowcode/view/lc-components/Drawer/index.less +13 -13
  162. package/es/lowcode/view/lc-components/Drawer/meta.json +242 -242
  163. package/es/lowcode/view/lc-components/FieldColor/meta.json +157 -157
  164. package/es/lowcode/view/lc-components/FieldComplex/meta.json +140 -140
  165. package/es/lowcode/view/lc-components/FieldDate/meta.json +188 -140
  166. package/es/lowcode/view/lc-components/FieldDict/meta.json +138 -138
  167. package/es/lowcode/view/lc-components/FieldEditor/meta.json +137 -137
  168. package/es/lowcode/view/lc-components/FieldGroup/meta.json +166 -166
  169. package/es/lowcode/view/lc-components/FieldNumber/meta.json +143 -143
  170. package/es/lowcode/view/lc-components/FieldRadio/meta.json +115 -115
  171. package/es/lowcode/view/lc-components/FieldRegion/meta.json +121 -121
  172. package/es/lowcode/view/lc-components/FieldSelect/meta.json +152 -152
  173. package/es/lowcode/view/lc-components/FieldString/meta.json +152 -152
  174. package/es/lowcode/view/lc-components/FieldSwitch/meta.json +125 -125
  175. package/es/lowcode/view/lc-components/FieldTextarea/meta.json +143 -143
  176. package/es/lowcode/view/lc-components/FieldUpload/meta.json +165 -165
  177. package/es/lowcode/view/lc-components/FieldUser/meta.json +176 -176
  178. package/es/lowcode/view/lc-components/FieldYear/meta.json +128 -128
  179. package/es/lowcode/view/lc-components/Form/index.js +23 -20
  180. package/es/lowcode/view/lc-components/Form/meta.json +629 -629
  181. package/es/lowcode/view/lc-components/GroupTree/index.js +23 -23
  182. package/es/lowcode/view/lc-components/GroupTree/index.less +11 -11
  183. package/es/lowcode/view/lc-components/GroupTree/meta.json +82 -82
  184. package/es/lowcode/view/lc-components/Iframe/meta.json +31 -31
  185. package/es/lowcode/view/lc-components/ImEx/index.js +25 -25
  186. package/es/lowcode/view/lc-components/ImEx/index.less +7 -7
  187. package/es/lowcode/view/lc-components/ImEx/meta.json +134 -134
  188. package/es/lowcode/view/lc-components/Image/index.less +27 -27
  189. package/es/lowcode/view/lc-components/Image/meta.json +149 -149
  190. package/es/lowcode/view/lc-components/JSX/RuntimeComp.js +4 -4
  191. package/es/lowcode/view/lc-components/JSX/meta.json +29 -29
  192. package/es/lowcode/view/lc-components/Layout/index.js +16 -16
  193. package/es/lowcode/view/lc-components/Layout/index.less +5 -5
  194. package/es/lowcode/view/lc-components/Layout/meta.json +107 -107
  195. package/es/lowcode/view/lc-components/Link/index.less +15 -15
  196. package/es/lowcode/view/lc-components/Link/meta.json +112 -112
  197. package/es/lowcode/view/lc-components/Page/meta.json +61 -61
  198. package/es/lowcode/view/lc-components/PageContent/meta.json +9 -9
  199. package/es/lowcode/view/lc-components/PageFooter/meta.json +9 -9
  200. package/es/lowcode/view/lc-components/PageHeader/meta.json +9 -9
  201. package/es/lowcode/view/lc-components/PageLayout/meta.json +59 -59
  202. package/es/lowcode/view/lc-components/Proxy/FunctionDesign.js +17 -0
  203. package/es/lowcode/view/lc-components/Proxy/FunctionLive.js +23 -0
  204. package/es/lowcode/view/lc-components/Proxy/FunctionPreview.js +23 -0
  205. package/es/lowcode/view/lc-components/Proxy/index.js +42 -0
  206. package/es/lowcode/view/lc-components/Proxy/index.less +5 -0
  207. package/es/lowcode/view/lc-components/Proxy/meta.json +66 -0
  208. package/es/lowcode/view/lc-components/Section/index.less +7 -7
  209. package/es/lowcode/view/lc-components/Section/meta.json +108 -108
  210. package/es/lowcode/view/lc-components/Split/meta.json +53 -53
  211. package/es/lowcode/view/lc-components/Table/index.js +156 -149
  212. package/es/lowcode/view/lc-components/Table/meta.json +443 -443
  213. package/es/lowcode/view/lc-components/Tabs/index.js +23 -23
  214. package/es/lowcode/view/lc-components/Tabs/meta.json +113 -113
  215. package/es/lowcode/view/lc-components/Text/meta.json +56 -56
  216. package/es/lowcode/view/lc-components/Tree/index.js +99 -96
  217. package/es/lowcode/view/lc-components/Tree/index.less +4 -4
  218. package/es/lowcode/view/lc-components/Tree/meta.json +353 -353
  219. package/es/lowcode/view/lc-components/Wrapper.js +7 -1
  220. package/es/lowcode/view/style/canvas.less +5 -5
  221. package/es/lowcode/view/style/loading.less +98 -98
  222. package/es/lowcode/view/style/page.less +7 -7
  223. package/es/upload/FilesWall/index.js +13 -13
  224. package/es/upload/FilesWall/index.less +74 -74
  225. package/es/upload/Form/index.less +7 -7
  226. package/es/upload/FormItem/index.js +15 -15
  227. package/es/utils/form.js +21 -21
  228. package/lib/components/Builder/index.js +13 -10
  229. package/lib/components/LDActions/index.less +70 -70
  230. package/lib/components/LdAutoForm/index.js +3 -2
  231. package/lib/components/LdCom/index.js +3 -2
  232. package/lib/components/LdFormList/index.js +3 -2
  233. package/lib/components/LdGrid/index.js +4 -4
  234. package/lib/components/LdGridForm/index.js +3 -2
  235. package/lib/components/LdGridForm/index.less +7 -7
  236. package/lib/components/LdTree/index.less +42 -42
  237. package/lib/helper/FromItems.js +64 -5
  238. package/lib/helper/action.js +6 -6
  239. package/lib/helper/form.js +14 -14
  240. package/lib/helper/index.less +7 -7
  241. package/lib/helper/ldBuilder.js +4 -4
  242. package/lib/helper/ldComBuild.js +14 -9
  243. package/lib/locales/zh-CN.js +43 -5
  244. package/lib/lowcode/constants/api-url.js +309 -260
  245. package/lib/lowcode/constants/event-topics.js +3 -1
  246. package/lib/lowcode/constants/index.js +6 -5
  247. package/lib/lowcode/engine/meta/components-list.json +12 -6
  248. package/lib/lowcode/engine/meta/dialog.props.default.json +3 -1
  249. package/lib/lowcode/engine/meta/dialog.props.json +4 -2
  250. package/lib/lowcode/engine/meta/drawer.props.json +1 -1
  251. package/lib/lowcode/engine/meta/fielddate.props.default.json +1 -0
  252. package/lib/lowcode/engine/meta/fielddate.props.json +48 -0
  253. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +35 -30
  254. package/lib/lowcode/engine/meta/proxy.props.default.json +15 -0
  255. package/lib/lowcode/engine/meta/proxy.props.json +66 -0
  256. package/lib/lowcode/engine/provider/ContextProvider/index.js +87 -49
  257. package/lib/lowcode/engine/provider/ContextProvider/usePageDataStore.js +50 -44
  258. package/lib/lowcode/engine/provider/ContextProvider/usePageVar.js +10 -4
  259. package/lib/lowcode/engine/provider/ContextProvider/useTodo.js +1 -3
  260. package/lib/lowcode/engine/provider/EventBusProvider.js +14 -4
  261. package/lib/lowcode/engine/provider/PageProxyProvider.js +103 -0
  262. package/lib/lowcode/engine/provider/RemoteSourceProvider.js +10 -12
  263. package/lib/lowcode/engine/tools/dataProcess.js +76 -76
  264. package/lib/lowcode/engine/tools/helper.js +25 -0
  265. package/lib/lowcode/engine/tools/initDS.js +4 -4
  266. package/lib/lowcode/painter/Components.js +2 -2
  267. package/lib/lowcode/painter/Design.js +1 -0
  268. package/lib/lowcode/painter/DesignOperator.js +126 -24
  269. package/lib/lowcode/painter/DesignToolbar.js +84 -169
  270. package/lib/lowcode/painter/components/AdvancePanel.js +28 -10
  271. package/lib/lowcode/painter/components/Collapse.js +26 -26
  272. package/lib/lowcode/painter/components/ColorInput.js +24 -24
  273. package/lib/lowcode/painter/components/ListEditor.js +24 -24
  274. package/lib/lowcode/painter/components/NumberInput.js +28 -28
  275. package/lib/lowcode/painter/components/PanelItem.js +24 -24
  276. package/lib/lowcode/painter/components/PopConfirm.js +8 -8
  277. package/lib/lowcode/painter/components/PopForm.js +27 -27
  278. package/lib/lowcode/painter/components/RuleInput.js +30 -30
  279. package/lib/lowcode/painter/components/SortBox.js +22 -22
  280. package/lib/lowcode/painter/components/TipIcon.js +12 -4
  281. package/lib/lowcode/painter/components/TreeEditor.js +10 -10
  282. package/lib/lowcode/painter/components/code-editor/BaseEditor.js +32 -32
  283. package/lib/lowcode/painter/components/code-editor/CssEditor.js +25 -25
  284. package/lib/lowcode/painter/components/code-editor/FullScreenEditor.js +23 -23
  285. package/lib/lowcode/painter/components/code-editor/JSEditor.js +20 -20
  286. package/lib/lowcode/painter/components/code-editor/JsonEditor.js +25 -25
  287. package/lib/lowcode/painter/components/field-setting/SettingUI.js +55 -3
  288. package/lib/lowcode/painter/components/field-setting/index.js +24 -1
  289. package/lib/lowcode/painter/components/shortcut-modal/KeyIcon.js +18 -0
  290. package/lib/lowcode/painter/components/shortcut-modal/index.js +215 -0
  291. package/lib/lowcode/painter/panel-section/BlockEditor/index.js +9 -18
  292. package/lib/lowcode/painter/panel-section/BlocksEditor/index.js +4 -1
  293. package/lib/lowcode/painter/panel-section/ConditionCheck.js +78 -0
  294. package/lib/lowcode/painter/panel-section/DataSetSelector.js +6 -3
  295. package/lib/lowcode/painter/panel-section/FieldsSetting.js +1 -1
  296. package/lib/lowcode/painter/panel-section/Icon.js +23 -23
  297. package/lib/lowcode/painter/panel-section/IconConditionSelector.js +2 -1
  298. package/lib/lowcode/painter/panel-section/IconSelector.js +16 -16
  299. package/lib/lowcode/painter/panel-section/JSEditor/ToolBar.js +7 -4
  300. package/lib/lowcode/painter/panel-section/JSEditor/index.js +42 -4
  301. package/lib/lowcode/painter/panel-section/JSEditor/index.less +4 -0
  302. package/lib/lowcode/painter/panel-section/LayoutRatio.js +21 -21
  303. package/lib/lowcode/painter/panel-section/ProxyLinker.js +145 -0
  304. package/lib/lowcode/painter/panel-section/ProxyParams.js +35 -0
  305. package/lib/lowcode/painter/panel-section/ProxyParamsSetter.js +248 -0
  306. package/lib/lowcode/painter/panel-section/StylePanel/BackGround.js +2 -2
  307. package/lib/lowcode/painter/panel-section/StylePanel/Border.js +2 -2
  308. package/lib/lowcode/painter/panel-section/StylePanel/BorderRadius.js +2 -2
  309. package/lib/lowcode/painter/panel-section/StylePanel/BorderRadiusSelector.js +2 -2
  310. package/lib/lowcode/painter/panel-section/StylePanel/BorderSelector.js +2 -2
  311. package/lib/lowcode/painter/panel-section/StylePanel/Display.js +2 -2
  312. package/lib/lowcode/painter/panel-section/StylePanel/Font.js +2 -2
  313. package/lib/lowcode/painter/panel-section/StylePanel/FontEditor.js +2 -2
  314. package/lib/lowcode/painter/panel-section/StylePanel/GapSelector.js +2 -2
  315. package/lib/lowcode/painter/panel-section/StylePanel/HighLightPanel.js +2 -2
  316. package/lib/lowcode/painter/panel-section/StylePanel/HighLigthtSpan.js +2 -2
  317. package/lib/lowcode/painter/panel-section/StylePanel/HightLightSvg.js +2 -2
  318. package/lib/lowcode/painter/panel-section/StylePanel/MainPanel.js +2 -2
  319. package/lib/lowcode/painter/panel-section/StylePanel/Margin.js +2 -2
  320. package/lib/lowcode/painter/panel-section/StylePanel/Opacity.js +2 -2
  321. package/lib/lowcode/painter/panel-section/StylePanel/Padding.js +2 -2
  322. package/lib/lowcode/painter/panel-section/StylePanel/Pointer.js +2 -2
  323. package/lib/lowcode/painter/panel-section/StylePanel/Shadow.js +2 -2
  324. package/lib/lowcode/painter/panel-section/StylePanel/Size.js +2 -2
  325. package/lib/lowcode/painter/panel-section/StylePanel/StyleContext.js +2 -2
  326. package/lib/lowcode/painter/panel-section/StylePanel/StyleRow.js +2 -2
  327. package/lib/lowcode/painter/panel-section/StylePanel/WidthHeight.js +2 -2
  328. package/lib/lowcode/painter/panel-section/StylePanel/index.js +15 -15
  329. package/lib/lowcode/painter/style/action-bind-modal.less +104 -104
  330. package/lib/lowcode/painter/style/actions-editor.less +15 -15
  331. package/lib/lowcode/painter/style/border-editor.less +36 -36
  332. package/lib/lowcode/painter/style/border-radius-selector.less +42 -42
  333. package/lib/lowcode/painter/style/border-selector.less +39 -39
  334. package/lib/lowcode/painter/style/button-type.less +5 -5
  335. package/lib/lowcode/painter/style/collapse.less +28 -28
  336. package/lib/lowcode/painter/style/color-input.less +19 -19
  337. package/lib/lowcode/painter/style/components.less +91 -91
  338. package/lib/lowcode/painter/style/design.less +178 -178
  339. package/lib/lowcode/painter/style/display.less +17 -17
  340. package/lib/lowcode/painter/style/dragdrop.less +56 -56
  341. package/lib/lowcode/painter/style/fields-setting.less +25 -25
  342. package/lib/lowcode/painter/style/font-editor.less +9 -9
  343. package/lib/lowcode/painter/style/fullscreen-editor.less +17 -17
  344. package/lib/lowcode/painter/style/history.less +46 -46
  345. package/lib/lowcode/painter/style/icon-selector.less +22 -22
  346. package/lib/lowcode/painter/style/icon.less +10 -10
  347. package/lib/lowcode/painter/style/impexp.less +7 -7
  348. package/lib/lowcode/painter/style/index.less +6 -6
  349. package/lib/lowcode/painter/style/layout-ratio.less +51 -51
  350. package/lib/lowcode/painter/style/list-editor.less +97 -97
  351. package/lib/lowcode/painter/style/number-input.less +19 -19
  352. package/lib/lowcode/painter/style/outline.less +30 -30
  353. package/lib/lowcode/painter/style/page-layout-display.less +27 -27
  354. package/lib/lowcode/painter/style/page-vars.less +25 -25
  355. package/lib/lowcode/painter/style/panel-attrs.less +47 -47
  356. package/lib/lowcode/painter/style/panel-item.less +55 -54
  357. package/lib/lowcode/painter/style/panel.less +100 -100
  358. package/lib/lowcode/painter/style/pop-confirm.less +17 -17
  359. package/lib/lowcode/painter/style/pop-form.less +19 -19
  360. package/lib/lowcode/painter/style/radio.less +24 -24
  361. package/lib/lowcode/painter/style/ribbon.less +7 -7
  362. package/lib/lowcode/painter/style/rule-input.less +12 -12
  363. package/lib/lowcode/painter/style/split-display.less +18 -18
  364. package/lib/lowcode/painter/style/style-panel.less +37 -37
  365. package/lib/lowcode/painter/style/tabitems.less +90 -90
  366. package/lib/lowcode/painter/svg/code.svg +3 -3
  367. package/lib/lowcode/painter/svg/expect.svg +9 -9
  368. package/lib/lowcode/preview/DebugTool.js +86 -0
  369. package/lib/lowcode/preview/DebugToolDetail.js +111 -0
  370. package/lib/lowcode/preview/index.js +10 -18
  371. package/lib/lowcode/preview/useDebugSettings.js +69 -0
  372. package/lib/lowcode/view/Canvas.js +5 -1
  373. package/lib/lowcode/view/Page.js +8 -3
  374. package/lib/lowcode/view/lc-components/Box/index.js +4 -4
  375. package/lib/lowcode/view/lc-components/Box/index.less +14 -14
  376. package/lib/lowcode/view/lc-components/Box/meta.json +40 -40
  377. package/lib/lowcode/view/lc-components/Button/index.js +33 -33
  378. package/lib/lowcode/view/lc-components/Button/meta.json +127 -127
  379. package/lib/lowcode/view/lc-components/Button/style.less +2 -2
  380. package/lib/lowcode/view/lc-components/CardList/index.js +126 -123
  381. package/lib/lowcode/view/lc-components/CardList/meta.json +332 -332
  382. package/lib/lowcode/view/lc-components/Dialog/index.js +16 -15
  383. package/lib/lowcode/view/lc-components/Dialog/index.less +12 -12
  384. package/lib/lowcode/view/lc-components/Dialog/meta.json +224 -222
  385. package/lib/lowcode/view/lc-components/Drawer/index.js +16 -14
  386. package/lib/lowcode/view/lc-components/Drawer/index.less +13 -13
  387. package/lib/lowcode/view/lc-components/Drawer/meta.json +242 -242
  388. package/lib/lowcode/view/lc-components/FieldColor/meta.json +157 -157
  389. package/lib/lowcode/view/lc-components/FieldComplex/meta.json +140 -140
  390. package/lib/lowcode/view/lc-components/FieldDate/meta.json +188 -140
  391. package/lib/lowcode/view/lc-components/FieldDict/meta.json +138 -138
  392. package/lib/lowcode/view/lc-components/FieldEditor/meta.json +137 -137
  393. package/lib/lowcode/view/lc-components/FieldGroup/meta.json +166 -166
  394. package/lib/lowcode/view/lc-components/FieldNumber/meta.json +143 -143
  395. package/lib/lowcode/view/lc-components/FieldRadio/meta.json +115 -115
  396. package/lib/lowcode/view/lc-components/FieldRegion/meta.json +121 -121
  397. package/lib/lowcode/view/lc-components/FieldSelect/meta.json +152 -152
  398. package/lib/lowcode/view/lc-components/FieldString/meta.json +152 -152
  399. package/lib/lowcode/view/lc-components/FieldSwitch/meta.json +125 -125
  400. package/lib/lowcode/view/lc-components/FieldTextarea/meta.json +143 -143
  401. package/lib/lowcode/view/lc-components/FieldUpload/meta.json +165 -165
  402. package/lib/lowcode/view/lc-components/FieldUser/meta.json +176 -176
  403. package/lib/lowcode/view/lc-components/FieldYear/meta.json +128 -128
  404. package/lib/lowcode/view/lc-components/Form/index.js +23 -20
  405. package/lib/lowcode/view/lc-components/Form/meta.json +629 -629
  406. package/lib/lowcode/view/lc-components/GroupTree/index.js +23 -23
  407. package/lib/lowcode/view/lc-components/GroupTree/index.less +11 -11
  408. package/lib/lowcode/view/lc-components/GroupTree/meta.json +82 -82
  409. package/lib/lowcode/view/lc-components/Iframe/meta.json +31 -31
  410. package/lib/lowcode/view/lc-components/ImEx/index.js +25 -25
  411. package/lib/lowcode/view/lc-components/ImEx/index.less +7 -7
  412. package/lib/lowcode/view/lc-components/ImEx/meta.json +134 -134
  413. package/lib/lowcode/view/lc-components/Image/index.less +27 -27
  414. package/lib/lowcode/view/lc-components/Image/meta.json +149 -149
  415. package/lib/lowcode/view/lc-components/JSX/RuntimeComp.js +4 -4
  416. package/lib/lowcode/view/lc-components/JSX/meta.json +29 -29
  417. package/lib/lowcode/view/lc-components/Layout/index.js +16 -16
  418. package/lib/lowcode/view/lc-components/Layout/index.less +5 -5
  419. package/lib/lowcode/view/lc-components/Layout/meta.json +107 -107
  420. package/lib/lowcode/view/lc-components/Link/index.less +15 -15
  421. package/lib/lowcode/view/lc-components/Link/meta.json +112 -112
  422. package/lib/lowcode/view/lc-components/Page/meta.json +61 -61
  423. package/lib/lowcode/view/lc-components/PageContent/meta.json +9 -9
  424. package/lib/lowcode/view/lc-components/PageFooter/meta.json +9 -9
  425. package/lib/lowcode/view/lc-components/PageHeader/meta.json +9 -9
  426. package/lib/lowcode/view/lc-components/PageLayout/meta.json +59 -59
  427. package/lib/lowcode/view/lc-components/Proxy/FunctionDesign.js +24 -0
  428. package/lib/lowcode/view/lc-components/Proxy/FunctionLive.js +30 -0
  429. package/lib/lowcode/view/lc-components/Proxy/FunctionPreview.js +30 -0
  430. package/lib/lowcode/view/lc-components/Proxy/index.js +50 -0
  431. package/lib/lowcode/view/lc-components/Proxy/index.less +5 -0
  432. package/lib/lowcode/view/lc-components/Proxy/meta.json +66 -0
  433. package/lib/lowcode/view/lc-components/Section/index.less +7 -7
  434. package/lib/lowcode/view/lc-components/Section/meta.json +108 -108
  435. package/lib/lowcode/view/lc-components/Split/meta.json +53 -53
  436. package/lib/lowcode/view/lc-components/Table/index.js +156 -149
  437. package/lib/lowcode/view/lc-components/Table/meta.json +443 -443
  438. package/lib/lowcode/view/lc-components/Tabs/index.js +23 -23
  439. package/lib/lowcode/view/lc-components/Tabs/meta.json +113 -113
  440. package/lib/lowcode/view/lc-components/Text/meta.json +56 -56
  441. package/lib/lowcode/view/lc-components/Tree/index.js +99 -96
  442. package/lib/lowcode/view/lc-components/Tree/index.less +4 -4
  443. package/lib/lowcode/view/lc-components/Tree/meta.json +353 -353
  444. package/lib/lowcode/view/lc-components/Wrapper.js +6 -0
  445. package/lib/lowcode/view/style/canvas.less +5 -5
  446. package/lib/lowcode/view/style/loading.less +98 -98
  447. package/lib/lowcode/view/style/page.less +7 -7
  448. package/lib/upload/FilesWall/index.js +13 -13
  449. package/lib/upload/FilesWall/index.less +74 -74
  450. package/lib/upload/Form/index.less +7 -7
  451. package/lib/upload/FormItem/index.js +15 -15
  452. package/lib/utils/form.js +21 -21
  453. package/lowcode.js +1 -1
  454. package/package.json +175 -175
  455. package/upload.js +1 -1
  456. package/utils.js +1 -1
@@ -20,10 +20,10 @@ var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime
20
20
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
21
21
  var LZString = _interopRequireWildcard(require("lz-string"));
22
22
  var _constants = require("../../constants");
23
- /**
24
- * 数据压缩
25
- * @param {JSON} data
26
- * @returns 加密后的字符串
23
+ /**
24
+ * 数据压缩
25
+ * @param {JSON} data
26
+ * @returns 加密后的字符串
27
27
  */
28
28
  function compress(data) {
29
29
  // 将对象转换为JSON字符串
@@ -32,10 +32,10 @@ function compress(data) {
32
32
  return LZString.compressToBase64(jsonString);
33
33
  }
34
34
 
35
- /**
36
- * 数据解压
37
- * @param {string} compressedData
38
- * @returns {json}
35
+ /**
36
+ * 数据解压
37
+ * @param {string} compressedData
38
+ * @returns {json}
39
39
  */
40
40
  function decompress(compressedData) {
41
41
  // 使用LZ-String解压数据
@@ -44,13 +44,13 @@ function decompress(compressedData) {
44
44
  return JSON.parse(jsonString);
45
45
  }
46
46
 
47
- /**
48
- * 查找指定ID的节点及其父节点。
49
- *
50
- * @param {string} id - 要查找的节点ID。
51
- * @param {Object} current - 当前遍历的JSON对象。
52
- * @param {Object|null} parent - 当前节点的父节点。
53
- * @returns {{node: Object|null, parent: Object|null}} 查找结果,包含节点和其父节点。
47
+ /**
48
+ * 查找指定ID的节点及其父节点。
49
+ *
50
+ * @param {string} id - 要查找的节点ID。
51
+ * @param {Object} current - 当前遍历的JSON对象。
52
+ * @param {Object|null} parent - 当前节点的父节点。
53
+ * @returns {{node: Object|null, parent: Object|null}} 查找结果,包含节点和其父节点。
54
54
  */
55
55
  function findNodeAndParent(id, current) {
56
56
  var parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
@@ -84,13 +84,13 @@ function findNodeAndParent(id, current) {
84
84
  };
85
85
  }
86
86
 
87
- /**
88
- * 对指定的JSON结构进行节点的添加、修改或删除操作。
89
- *
90
- * @param {Object} json - 要操作的JSON对象。
91
- * @param {string|null} path - 要操作的节点路径,使用'/'分隔。
92
- * @param {string} id - 操作节点的唯一标识符。
93
- * @param {Object|null} data - 要添加或修改的数据。如果为null,表示删除操作。
87
+ /**
88
+ * 对指定的JSON结构进行节点的添加、修改或删除操作。
89
+ *
90
+ * @param {Object} json - 要操作的JSON对象。
91
+ * @param {string|null} path - 要操作的节点路径,使用'/'分隔。
92
+ * @param {string} id - 操作节点的唯一标识符。
93
+ * @param {Object|null} data - 要添加或修改的数据。如果为null,表示删除操作。
94
94
  */
95
95
  function process(json, path, id, data) {
96
96
  if (!json) {
@@ -156,25 +156,25 @@ function process(json, path, id, data) {
156
156
  }
157
157
  }
158
158
 
159
- /**
160
- * 对指定的JSON结构进行节点的添加操作。
161
- *
162
- * @param {Object} json - 要操作的JSON对象。
163
- * @param {string} parentId - 父节点的唯一标识符。
164
- * @param {string} id - 操作节点的唯一标识符。
165
- * @param {Object|null} data - 要添加或修改的数据。如果为null,表示删除操作。
159
+ /**
160
+ * 对指定的JSON结构进行节点的添加操作。
161
+ *
162
+ * @param {Object} json - 要操作的JSON对象。
163
+ * @param {string} parentId - 父节点的唯一标识符。
164
+ * @param {string} id - 操作节点的唯一标识符。
165
+ * @param {Object|null} data - 要添加或修改的数据。如果为null,表示删除操作。
166
166
  */
167
167
  function add(json, parentId, id, data) {
168
168
  process(json, getPathById(json, parentId), id, data);
169
169
  }
170
170
 
171
- /**
172
- * 移动指定的节点到另一个节点的指定位置。
173
- *
174
- * @param {Object} json - 要操作的JSON对象。
175
- * @param {string} sid - 被移动的节点id
176
- * @param {string} tid - 目标节点id
177
- * @param {string} action - 'left': 往节点前面插入,'right':往节点后面插,'inside':往节点子节点插
171
+ /**
172
+ * 移动指定的节点到另一个节点的指定位置。
173
+ *
174
+ * @param {Object} json - 要操作的JSON对象。
175
+ * @param {string} sid - 被移动的节点id
176
+ * @param {string} tid - 目标节点id
177
+ * @param {string} action - 'left': 往节点前面插入,'right':往节点后面插,'inside':往节点子节点插
178
178
  */
179
179
  function move(json, sid, tid, action) {
180
180
  // 验证节点存在性
@@ -230,34 +230,34 @@ function move(json, sid, tid, action) {
230
230
  }
231
231
  }
232
232
 
233
- /**
234
- * 对指定的JSON结构进行节点的修改操作。
235
- *
236
- * @param {Object} json - 要操作的JSON对象。
237
- * @param {string} id - 操作节点的唯一标识符。
238
- * @param {Object|null} data - 要添加或修改的数据。如果为null,表示删除操作。
233
+ /**
234
+ * 对指定的JSON结构进行节点的修改操作。
235
+ *
236
+ * @param {Object} json - 要操作的JSON对象。
237
+ * @param {string} id - 操作节点的唯一标识符。
238
+ * @param {Object|null} data - 要添加或修改的数据。如果为null,表示删除操作。
239
239
  */
240
240
  function modifyById(json, id, data) {
241
241
  process(json, null, id, data);
242
242
  }
243
243
 
244
- /**
245
- * 删除指定id的节点。
246
- *
247
- * @param {Object} json - JSON对象。
248
- * @param {string} id - 要删除的节点ID。
244
+ /**
245
+ * 删除指定id的节点。
246
+ *
247
+ * @param {Object} json - JSON对象。
248
+ * @param {string} id - 要删除的节点ID。
249
249
  */
250
250
  function deleteById(json, id) {
251
251
  process(json, null, id);
252
252
  }
253
253
 
254
- /**
255
- * 根据ID在给定的JSON结构中查找节点的路径。
256
- *
257
- * @param {Object} json - 要搜索的JSON对象。
258
- * @param {string} id - 要查找的节点ID。
259
- * @param {string} currentPath - 当前递归到的路径,用于构建返回的路径字符串。
260
- * @returns {string|null} 如果找到节点,返回节点的路径;否则返回null。
254
+ /**
255
+ * 根据ID在给定的JSON结构中查找节点的路径。
256
+ *
257
+ * @param {Object} json - 要搜索的JSON对象。
258
+ * @param {string} id - 要查找的节点ID。
259
+ * @param {string} currentPath - 当前递归到的路径,用于构建返回的路径字符串。
260
+ * @returns {string|null} 如果找到节点,返回节点的路径;否则返回null。
261
261
  */
262
262
  function getPathById(json, id) {
263
263
  var currentPath = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
@@ -277,28 +277,28 @@ function getPathById(json, id) {
277
277
  return null;
278
278
  }
279
279
 
280
- /**
281
- * 在给定的JSON结构中搜索具有特定id的节点,并返回包含该节点及其所有父节点的props属性的路径数组。
282
- *
283
- * @param {Object} data - 待搜索的JSON对象,它代表了一个复杂的树状结构,每个节点都可能有props和children属性。
284
- * @param {string} targetId - 需要找到的目标节点的id。
285
- * @returns {Array<Object>} 一个包含目标节点及其所有父节点的props属性的数组。如果未找到目标节点,则返回空数组。
286
- *
287
- * @example
288
- * const data = {
289
- * props: {
290
- * id: 'page_root',
291
- * type: 'Page',
292
- * name: '页面',
293
- * hasHeder: true,
294
- * hasFooter: true,
295
- * },
296
- * // ...其他节点
297
- * };
298
- *
299
- * const path = getPathNodesById(data, 'form_jknbjkun');
300
- * console.log(path);
301
- * // 输出目标节点及其所有父节点的props属性的数组
280
+ /**
281
+ * 在给定的JSON结构中搜索具有特定id的节点,并返回包含该节点及其所有父节点的props属性的路径数组。
282
+ *
283
+ * @param {Object} data - 待搜索的JSON对象,它代表了一个复杂的树状结构,每个节点都可能有props和children属性。
284
+ * @param {string} targetId - 需要找到的目标节点的id。
285
+ * @returns {Array<Object>} 一个包含目标节点及其所有父节点的props属性的数组。如果未找到目标节点,则返回空数组。
286
+ *
287
+ * @example
288
+ * const data = {
289
+ * props: {
290
+ * id: 'page_root',
291
+ * type: 'Page',
292
+ * name: '页面',
293
+ * hasHeder: true,
294
+ * hasFooter: true,
295
+ * },
296
+ * // ...其他节点
297
+ * };
298
+ *
299
+ * const path = getPathNodesById(data, 'form_jknbjkun');
300
+ * console.log(path);
301
+ * // 输出目标节点及其所有父节点的props属性的数组
302
302
  */
303
303
  function getPathNodesById(data, targetId) {
304
304
  // 初始化结果数组
@@ -4,6 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
+ exports.dataToTree = dataToTree;
7
8
  exports.executeCode = executeCode;
8
9
  exports.extractKeywords = extractKeywords;
9
10
  exports.findFirstLeafNode = findFirstLeafNode;
@@ -282,4 +283,28 @@ function findFirstLeafNode(node) {
282
283
  _iterator2.f();
283
284
  }
284
285
  return null;
286
+ }
287
+ function dataToTree(data, params) {
288
+ var _ref = params || {},
289
+ _ref$parentKey = _ref.parentKey,
290
+ parentKey = _ref$parentKey === void 0 ? 'parentId' : _ref$parentKey,
291
+ _ref$childKey = _ref.childKey,
292
+ childKey = _ref$childKey === void 0 ? 'children' : _ref$childKey,
293
+ _ref$rootId = _ref.rootId,
294
+ rootId = _ref$rootId === void 0 ? '0' : _ref$rootId,
295
+ _ref$id = _ref.id,
296
+ id = _ref$id === void 0 ? 'id' : _ref$id,
297
+ _ref$stain = _ref.stain,
298
+ stain = _ref$stain === void 0 ? false : _ref$stain;
299
+ var _data = stain ? data : (0, _lodash.cloneDeep)(data);
300
+ var groupedByParents = (0, _lodash.groupBy)(_data, parentKey);
301
+ var itemsById = (0, _lodash.keyBy)(_data, id);
302
+ try {
303
+ (0, _lodash.each)((0, _lodash.omit)(groupedByParents, rootId), function (children, parentId) {
304
+ itemsById[parentId][childKey] = children;
305
+ });
306
+ } catch (e) {
307
+ console.error('helper.dataToTree error', e);
308
+ }
309
+ return groupedByParents[rootId];
285
310
  }
@@ -147,8 +147,8 @@ var wrapPromise = function wrapPromise(promise) {
147
147
  }
148
148
  };
149
149
  };
150
- function initialize(ctx) {
151
- var pageVars = _usePageDataStore.default.getState().pageData.props.vars;
150
+ function initialize(ctx, proxyCode) {
151
+ var pageVars = _usePageDataStore.default.getState()[proxyCode || 'pageData'].props.vars;
152
152
  if ((0, _lodash.isNil)(pageVars)) return null;
153
153
  var remoteApis = new Map();
154
154
  var _reduce = (0, _lodash.reduce)(pageVars, function (ret, val) {
@@ -177,8 +177,8 @@ function initialize(ctx) {
177
177
  _reduce2 = (0, _toArray2.default)(_reduce),
178
178
  variables = _reduce2[0],
179
179
  autoTasks = _reduce2.slice(1);
180
- _usePageVar.useStateStore.getState().initialize(variables);
181
- ctx._initRemoteApiMap(remoteApis);
180
+ _usePageVar.useStateStore.getState().initialize(variables, !!proxyCode);
181
+ ctx._initRemoteApiMap(remoteApis, !!proxyCode);
182
182
  function run() {
183
183
  return _run2.apply(this, arguments);
184
184
  }
@@ -96,8 +96,8 @@ var CompItem = function CompItem(_ref2) {
96
96
  }, /*#__PURE__*/_react.default.createElement("span", null, item.name)));
97
97
  };
98
98
 
99
- /**
100
- * 组件清单
99
+ /**
100
+ * 组件清单
101
101
  */
102
102
  var Components = function Components(_ref3) {
103
103
  var _ref3$dataset = _ref3.dataset,
@@ -73,6 +73,7 @@ var Design = function Design() {
73
73
  return /*#__PURE__*/_react.default.createElement("div", {
74
74
  className: _design.default['lc-painter-design']
75
75
  }, /*#__PURE__*/_react.default.createElement(_DesignToolbar.default, {
76
+ canvas: simulatorRef,
76
77
  locale: locale,
77
78
  onLangChange: handleLangChange
78
79
  }), /*#__PURE__*/_react.default.createElement("div", {
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _react = _interopRequireWildcard(require("react"));
11
+ var _umi = require("umi");
11
12
  var _lodash = require("lodash");
12
13
  var _ahooks = require("ahooks");
13
14
  var _antd = require("luck-design/antd");
@@ -50,6 +51,18 @@ var DesignOperator = function DesignOperator(_ref) {
50
51
  setOperatorId = _useSetState2[1];
51
52
  var lastSelectorId = (0, _ahooks.useLatest)(operatorId.selector);
52
53
  var currentModal = (0, _react.useRef)(null);
54
+ var _useTemporalStore = (0, _ContextProvider.useTemporalStore)(function (state) {
55
+ return {
56
+ undo: state.undo,
57
+ redo: state.redo,
58
+ pastStates: state.pastStates,
59
+ futureStates: state.futureStates
60
+ };
61
+ }),
62
+ canUndo = _useTemporalStore.canUndo,
63
+ canRedo = _useTemporalStore.canRedo,
64
+ undo = _useTemporalStore.undo,
65
+ redo = _useTemporalStore.redo;
53
66
  var getElement = (0, _ahooks.useMemoizedFn)(function (_target) {
54
67
  var _context$componentMap;
55
68
  return (0, _lodash.isString)(_target) ? (_context$componentMap = context.componentMap.get(_target)) === null || _context$componentMap === void 0 ? void 0 : _context$componentMap.api.getSelfDom() : _target;
@@ -70,9 +83,109 @@ var DesignOperator = function DesignOperator(_ref) {
70
83
  id: id
71
84
  });
72
85
  });
86
+ var handleShortcutEmit = (0, _ahooks.useMemoizedFn)(function (_ref3) {
87
+ var key = _ref3.key;
88
+ switch (key) {
89
+ case 'meta.s':
90
+ case 'ctrl.s':
91
+ context.$publisher(context.topics.DESIGN_OPERATE_SAVE);
92
+ break;
93
+ case 'meta.p':
94
+ case 'ctrl.p':
95
+ {
96
+ var _getCreateHistoryOpti = (0, _umi.getCreateHistoryOptions)(),
97
+ basename = _getCreateHistoryOpti.basename;
98
+ var previewUrl = "".concat(basename === '/' ? '' : basename, "/byteman/preview/").concat(context.router.getQuery('code'));
99
+ window.open(previewUrl, '_blank');
100
+ }
101
+ break;
102
+ case 'meta.z':
103
+ case 'ctrl.z':
104
+ canUndo && undo();
105
+ break;
106
+ case 'meta.shift.z':
107
+ case 'ctrl.shift.z':
108
+ canRedo && redo();
109
+ break;
110
+ case 'meta.c':
111
+ case 'ctrl.c':
112
+ if (operatorId.selector) {
113
+ var _context$$$api$getSel = context.$(operatorId.selector).api.getSelfAndParentData(),
114
+ node = _context$$$api$getSel.node,
115
+ parent = _context$$$api$getSel.parent;
116
+ if (_constants.CONTAINER_UNITS.includes(parent === null || parent === void 0 ? void 0 : parent.props.component)) {
117
+ addComponent((0, _lodash.omit)(node.props), parent.props.id);
118
+ }
119
+ }
120
+ break;
121
+ case 'backspace':
122
+ if (operatorId.selector && operatorId.deletable) {
123
+ handleDelete({
124
+ id: operatorId.selector
125
+ });
126
+ }
127
+ break;
128
+ case 'uparrow':
129
+ if (operatorId.selector) {
130
+ var _context$$$api$getSel2 = context.$(operatorId.selector).api.getSelfAndParentData(),
131
+ _parent = _context$$$api$getSel2.parent;
132
+ if (_parent) {
133
+ handleSelect(_parent.props.id);
134
+ }
135
+ }
136
+ break;
137
+ case 'downarrow':
138
+ if (operatorId.selector) {
139
+ var _node$children;
140
+ var _node = context.$(operatorId.selector).api.getSelfData();
141
+ if (_node !== null && _node !== void 0 && (_node$children = _node.children) !== null && _node$children !== void 0 && _node$children.length) {
142
+ handleSelect(_node.children[0]);
143
+ }
144
+ }
145
+ break;
146
+ case 'leftarrow':
147
+ case 'rightarrow':
148
+ if (operatorId.selector) {
149
+ var _parent2$children;
150
+ var _context$$$api$getSel3 = context.$(operatorId.selector).api.getSelfAndParentData(),
151
+ _parent2 = _context$$$api$getSel3.parent;
152
+ if (_parent2 !== null && _parent2 !== void 0 && (_parent2$children = _parent2.children) !== null && _parent2$children !== void 0 && _parent2$children.length) {
153
+ var index = _parent2.children.findIndex(function (c) {
154
+ return c === operatorId.selector;
155
+ });
156
+ if (key === 'leftarrow' && index > 0) {
157
+ handleSelect(_parent2.children[index - 1]);
158
+ } else if (key === 'rightarrow' && index < _parent2.children.length - 1) {
159
+ handleSelect(_parent2.children[index + 1]);
160
+ }
161
+ }
162
+ }
163
+ break;
164
+ case 'alt.leftarrow':
165
+ case 'alt.rightarrow':
166
+ if (operatorId.selector) {
167
+ var _parent3$children;
168
+ var _context$$$api$getSel4 = context.$(operatorId.selector).api.getSelfAndParentData(),
169
+ _parent3 = _context$$$api$getSel4.parent;
170
+ if (_parent3 !== null && _parent3 !== void 0 && (_parent3$children = _parent3.children) !== null && _parent3$children !== void 0 && _parent3$children.length) {
171
+ var _index = _parent3.children.findIndex(function (c) {
172
+ return c === operatorId.selector;
173
+ });
174
+ if (key === 'alt.leftarrow' && _index > 0) {
175
+ (0, _ContextProvider.moveNode)(_parent3.children[_index], _parent3.children[_index - 1], 'left');
176
+ } else if (key === 'alt.rightarrow' && _index < _parent3.children.length - 1) {
177
+ (0, _ContextProvider.moveNode)(_parent3.children[_index], _parent3.children[_index + 1], 'right');
178
+ }
179
+ }
180
+ }
181
+ break;
182
+ default:
183
+ break;
184
+ }
185
+ });
73
186
  var addComponent = (0, _ahooks.useMemoizedFn)(function (data, targetId) {
74
- context.$subscriber(context.topics.COMPONENT_MOUNT).once(function (_ref3) {
75
- var mountCompId = _ref3.id;
187
+ context.$subscriber(context.topics.COMPONENT_MOUNT).once(function (_ref4) {
188
+ var mountCompId = _ref4.id;
76
189
  if (mountCompId === _id) {
77
190
  context.$publisher(context.topics.COMPONENT_APPEND, {
78
191
  id: _id
@@ -133,19 +246,6 @@ var DesignOperator = function DesignOperator(_ref) {
133
246
  var _last;
134
247
  return operatorId.detector && (0, _lodash.isString)(operatorId.detector) ? (_last = (0, _lodash.last)(context.componentMap.get(operatorId.detector).api.getLevelNodes())) === null || _last === void 0 ? void 0 : _last.name : void 0;
135
248
  }, [operatorId.detector]);
136
- (0, _ahooks.useKeyPress)('backspace', function () {
137
- if (operatorId.selector && operatorId.deletable) {
138
- handleDelete({
139
- id: operatorId.selector
140
- });
141
- }
142
- }, {
143
- target: canvas
144
- });
145
- (0, _ahooks.useKeyPress)('ctrl.s', function (e) {
146
- e.preventDefault();
147
- context.$publisher(context.topics.DESIGN_OPERATE_SAVE);
148
- });
149
249
  (0, _ahooks.useEventListener)('mousemove', function (event) {
150
250
  var elem = event.target;
151
251
  var targetFormItem = elem.closest("[".concat(_constants.LC_COMPONENT_UNIT_KEY, "=\"").concat(_constants.LC_FORMITEM_UNIT, "\"]"));
@@ -208,11 +308,11 @@ var DesignOperator = function DesignOperator(_ref) {
208
308
  target: canvas
209
309
  });
210
310
  (0, _react.useEffect)(function () {
211
- var csid = context.$subscriber(context.topics.COMPONENT_SETTING_CLICK).on(function (_ref4) {
212
- var data = _ref4.data;
311
+ var csid = context.$subscriber(context.topics.COMPONENT_SETTING_CLICK).on(function (_ref5) {
312
+ var data = _ref5.data;
213
313
  if (_MODAL_COMPONENT_.includes(data.component)) {
214
- context.$subscriber(context.topics.COMPONENT_APPEND).once(function (_ref5) {
215
- var compId = _ref5.id;
314
+ context.$subscriber(context.topics.COMPONENT_APPEND).once(function (_ref6) {
315
+ var compId = _ref6.id;
216
316
  context.$publisher(context.topics.COMPONENT_MODAL_TOGGLE, {
217
317
  toggle: true,
218
318
  id: compId
@@ -268,9 +368,9 @@ var DesignOperator = function DesignOperator(_ref) {
268
368
  });
269
369
  }
270
370
  }).watch();
271
- var cmtid = context.$subscriber(context.topics.COMPONENT_MODAL_TOGGLE).on(function (_ref6) {
272
- var toggle = _ref6.toggle,
273
- id = _ref6.id;
371
+ var cmtid = context.$subscriber(context.topics.COMPONENT_MODAL_TOGGLE).on(function (_ref7) {
372
+ var toggle = _ref7.toggle,
373
+ id = _ref7.id;
274
374
  if (toggle && id !== currentModal.current) {
275
375
  var _canvas$current2;
276
376
  (_canvas$current2 = canvas.current) === null || _canvas$current2 === void 0 || _canvas$current2.style.setProperty('overflow', 'hidden');
@@ -290,19 +390,21 @@ var DesignOperator = function DesignOperator(_ref) {
290
390
  }
291
391
  }
292
392
  }).watch();
293
- var cdid = context.$subscriber(context.topics.COMPONENT_DELETE).on(function (_ref7) {
294
- var id = _ref7.id;
393
+ var cdid = context.$subscriber(context.topics.COMPONENT_DELETE).on(function (_ref8) {
394
+ var id = _ref8.id;
295
395
  if (lastSelectorId.current === id) {
296
396
  handleSelect();
297
397
  }
298
398
  (0, _ContextProvider.deleteNode)(id);
299
399
  });
400
+ var dseid = context.$subscriber(context.topics.DESIGN_SHORTCUT_EMIT).on(handleShortcutEmit);
300
401
  return function () {
301
402
  context.$unsubscriber(context.topics.COMPONENT_SETTING_CLICK, csid);
302
403
  context.$unsubscriber(context.topics.COMPONENT_HOVER, hcid);
303
404
  context.$unsubscriber(context.topics.COMPONENT_ACTIVE, acid);
304
405
  context.$unsubscriber(context.topics.MODAL_OPEN, cmtid);
305
406
  context.$unsubscriber(context.topics.COMPONENT_DELETE, cdid);
407
+ context.$unsubscriber(context.topics.COMPONENT_DELETE, dseid);
306
408
  };
307
409
  }, []);
308
410
  (0, _react.useEffect)(function () {