@luck-design-biz/luckda 0.0.22 → 0.0.24-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (465) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +40 -49
  3. package/es/components/Builder/index.js +4 -4
  4. package/es/components/LdAutoForm/index.js +7 -9
  5. package/es/components/LdCard/index.js +5 -6
  6. package/es/components/LdCard/model.js +1 -1
  7. package/es/components/LdCom/index.js +2 -2
  8. package/es/components/LdFormList/index.js +15 -16
  9. package/es/components/LdFormList/model.js +0 -0
  10. package/es/components/LdGrid/index.js +11 -12
  11. package/es/components/LdGrid/model.js +1 -1
  12. package/es/components/LdGridForm/index.js +10 -10
  13. package/es/components/LdGridForm/index.less +7 -7
  14. package/es/components/LdInfoPanel/index.js +2 -2
  15. package/es/components/LdPop/index.js +0 -0
  16. package/es/components/LdRuntimeCom/index.js +42 -0
  17. package/es/components/LdTree/index.js +3 -4
  18. package/es/components/LdTree/index.less +36 -36
  19. package/es/helper/FromItems.js +1 -1
  20. package/es/helper/action.js +8 -8
  21. package/es/helper/form.js +16 -16
  22. package/es/helper/index.less +7 -7
  23. package/es/helper/ldBuilder.js +1 -1
  24. package/es/helper/ldComBuild.js +4 -4
  25. package/es/index.js +10 -9
  26. package/es/lowcode/constants/api-url.js +3 -0
  27. package/es/lowcode/constants/event-topics.js +36 -0
  28. package/es/lowcode/constants/index.js +12 -0
  29. package/es/lowcode/engine/factory/DataFactory.js +1 -0
  30. package/es/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +60 -0
  31. package/es/lowcode/engine/factory/panel-item-factory/GroupStrategy.js +32 -0
  32. package/es/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +32 -0
  33. package/es/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +50 -0
  34. package/es/lowcode/engine/factory/panel-item-factory/Strategy.js +21 -0
  35. package/es/lowcode/engine/factory/panel-item-factory/StringStrategy.js +50 -0
  36. package/es/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +32 -0
  37. package/es/lowcode/engine/factory/panel-item-factory/index.js +42 -0
  38. package/es/lowcode/engine/meta/box.props.default.json +12 -0
  39. package/es/lowcode/engine/meta/box.props.json +42 -0
  40. package/es/lowcode/engine/meta/button.props.default.json +16 -0
  41. package/es/lowcode/engine/meta/button.props.json +122 -0
  42. package/es/lowcode/engine/meta/cardlist.props.default.json +18 -0
  43. package/es/lowcode/engine/meta/cardlist.props.json +144 -0
  44. package/es/lowcode/engine/meta/components-list.json +128 -0
  45. package/es/lowcode/engine/meta/dialog.props.default.json +19 -0
  46. package/es/lowcode/engine/meta/dialog.props.json +121 -0
  47. package/es/lowcode/engine/meta/drawer.props.default.json +18 -0
  48. package/es/lowcode/engine/meta/drawer.props.json +144 -0
  49. package/es/lowcode/engine/meta/form.props.default.json +13 -0
  50. package/es/lowcode/engine/meta/form.props.json +117 -0
  51. package/es/lowcode/engine/meta/iframe.props.default.json +11 -0
  52. package/es/lowcode/engine/meta/iframe.props.json +32 -0
  53. package/es/lowcode/engine/meta/image.props.default.json +16 -0
  54. package/es/lowcode/engine/meta/image.props.json +114 -0
  55. package/es/lowcode/engine/meta/imex.props.default.json +12 -0
  56. package/es/lowcode/engine/meta/imex.props.json +82 -0
  57. package/es/lowcode/engine/meta/js-editor/auto-complete.json +29 -0
  58. package/es/lowcode/engine/meta/jsx.props.default.json +10 -0
  59. package/es/lowcode/engine/meta/jsx.props.json +25 -0
  60. package/es/lowcode/engine/meta/layout.props.default.json +13 -0
  61. package/es/lowcode/engine/meta/layout.props.json +108 -0
  62. package/es/lowcode/engine/meta/link.props.default.json +14 -0
  63. package/es/lowcode/engine/meta/link.props.json +112 -0
  64. package/es/lowcode/engine/meta/section.props.default.json +17 -0
  65. package/es/lowcode/engine/meta/section.props.json +108 -0
  66. package/es/lowcode/engine/meta/split.props.default.json +13 -0
  67. package/es/lowcode/engine/meta/split.props.json +72 -0
  68. package/es/lowcode/engine/meta/table.props.default.json +12 -0
  69. package/es/lowcode/engine/meta/table.props.json +174 -0
  70. package/es/lowcode/engine/meta/tabs.props.default.json +18 -0
  71. package/es/lowcode/engine/meta/tabs.props.json +141 -0
  72. package/es/lowcode/engine/meta/text.props.default.json +12 -0
  73. package/es/lowcode/engine/meta/text.props.json +66 -0
  74. package/es/lowcode/engine/meta/tree.props.default.json +17 -0
  75. package/es/lowcode/engine/meta/tree.props.json +157 -0
  76. package/es/lowcode/engine/provider/ContextProvider.js +157 -0
  77. package/es/lowcode/engine/provider/EventBusProvider.js +120 -0
  78. package/es/lowcode/engine/tools/dataProcess.js +263 -0
  79. package/es/lowcode/engine/tools/helper.js +4 -0
  80. package/es/lowcode/engine/tools/usePromiseState.js +24 -0
  81. package/es/lowcode/index.js +3 -0
  82. package/es/lowcode/painter/Components.js +104 -0
  83. package/es/lowcode/painter/Design.js +329 -0
  84. package/es/lowcode/painter/I18n.js +205 -0
  85. package/es/lowcode/painter/Outline.js +207 -0
  86. package/es/lowcode/painter/Panel.js +207 -0
  87. package/es/lowcode/painter/Ribbon.js +142 -0
  88. package/es/lowcode/painter/components/Collapse.js +31 -0
  89. package/es/lowcode/painter/components/NumberInput.js +93 -0
  90. package/es/lowcode/painter/components/PanelItem.js +63 -0
  91. package/es/lowcode/painter/components/PopConfirm.js +20 -0
  92. package/es/lowcode/painter/components/PopForm.js +71 -0
  93. package/es/lowcode/painter/components/RuleInput.js +105 -0
  94. package/es/lowcode/painter/components/SortBox.js +92 -0
  95. package/es/lowcode/painter/components/TabEditor.js +88 -0
  96. package/es/lowcode/painter/components/code-editor/BaseEditor.js +118 -0
  97. package/es/lowcode/painter/components/code-editor/CssEditor.js +14 -0
  98. package/es/lowcode/painter/components/code-editor/FullScreenEditor.js +64 -0
  99. package/es/lowcode/painter/components/code-editor/JSEditor.js +84 -0
  100. package/es/lowcode/painter/components/code-editor/index.js +2 -0
  101. package/es/lowcode/painter/index.js +45 -0
  102. package/es/lowcode/painter/panel-section/ButtonType.js +39 -0
  103. package/es/lowcode/painter/panel-section/Icon.js +48 -0
  104. package/es/lowcode/painter/panel-section/IconSelector.js +134 -0
  105. package/es/lowcode/painter/panel-section/LayoutRatio.js +130 -0
  106. package/es/lowcode/painter/panel-section/StylePanel/Display.js +292 -0
  107. package/es/lowcode/painter/panel-section/StylePanel/DisplaySvg.js +543 -0
  108. package/es/lowcode/painter/panel-section/StylePanel/Height.js +48 -0
  109. package/es/lowcode/painter/panel-section/StylePanel/MainPanel.js +64 -0
  110. package/es/lowcode/painter/panel-section/StylePanel/StyleContext.js +101 -0
  111. package/es/lowcode/painter/panel-section/StylePanel/Width.js +48 -0
  112. package/es/lowcode/painter/panel-section/StylePanel/index.js +12 -0
  113. package/es/lowcode/painter/panel-section/TabItems.js +237 -0
  114. package/es/lowcode/painter/services/I18n.js +85 -0
  115. package/es/lowcode/painter/style/button-type.less +5 -0
  116. package/es/lowcode/painter/style/collapse.less +21 -0
  117. package/es/lowcode/painter/style/components.less +90 -0
  118. package/es/lowcode/painter/style/design.less +142 -0
  119. package/es/lowcode/painter/style/display.less +17 -0
  120. package/es/lowcode/painter/style/fullscreen-editor.less +17 -0
  121. package/es/lowcode/painter/style/icon-selector.less +22 -0
  122. package/es/lowcode/painter/style/icon.less +11 -0
  123. package/es/lowcode/painter/style/index.less +6 -0
  124. package/es/lowcode/painter/style/layout-ratio.less +51 -0
  125. package/es/lowcode/painter/style/number-input.less +17 -0
  126. package/es/lowcode/painter/style/outline.less +28 -0
  127. package/es/lowcode/painter/style/panel-item.less +44 -0
  128. package/es/lowcode/painter/style/panel.less +142 -0
  129. package/es/lowcode/painter/style/pop-confirm.less +10 -0
  130. package/es/lowcode/painter/style/pop-form.less +20 -0
  131. package/es/lowcode/painter/style/radio.less +24 -0
  132. package/es/lowcode/painter/style/ribbon.less +5 -0
  133. package/es/lowcode/painter/style/rule-input.less +13 -0
  134. package/es/lowcode/painter/style/style-panel.less +5 -0
  135. package/es/lowcode/painter/style/tabeditor.less +90 -0
  136. package/es/lowcode/painter/style/tabitems.less +90 -0
  137. package/es/lowcode/view/Canvas.js +143 -0
  138. package/es/lowcode/view/Loading.js +23 -0
  139. package/es/lowcode/view/Page.js +252 -0
  140. package/es/lowcode/view/index.js +18 -0
  141. package/es/lowcode/view/lc-components/Box/FunctionDesign.js +20 -0
  142. package/es/lowcode/view/lc-components/Box/FunctionLive.js +9 -0
  143. package/es/lowcode/view/lc-components/Box/index.js +38 -0
  144. package/es/lowcode/view/lc-components/Box/index.less +15 -0
  145. package/es/lowcode/view/lc-components/Box/meta.json +42 -0
  146. package/es/lowcode/view/lc-components/Button/FunctionDesign.js +21 -0
  147. package/es/lowcode/view/lc-components/Button/FunctionLive.js +9 -0
  148. package/es/lowcode/view/lc-components/Button/index.js +102 -0
  149. package/es/lowcode/view/lc-components/Button/meta.json +122 -0
  150. package/es/lowcode/view/lc-components/CardList/FunctionDesign.js +9 -0
  151. package/es/lowcode/view/lc-components/CardList/FunctionLive.js +9 -0
  152. package/es/lowcode/view/lc-components/CardList/index.js +20 -0
  153. package/es/lowcode/view/lc-components/CardList/meta.json +144 -0
  154. package/es/lowcode/view/lc-components/Dialog/FunctionDesign.js +9 -0
  155. package/es/lowcode/view/lc-components/Dialog/FunctionLive.js +9 -0
  156. package/es/lowcode/view/lc-components/Dialog/index.js +61 -0
  157. package/es/lowcode/view/lc-components/Dialog/index.less +3 -0
  158. package/es/lowcode/view/lc-components/Dialog/meta.json +121 -0
  159. package/es/lowcode/view/lc-components/Drawer/FunctionDesign.js +9 -0
  160. package/es/lowcode/view/lc-components/Drawer/FunctionLive.js +9 -0
  161. package/es/lowcode/view/lc-components/Drawer/index.js +62 -0
  162. package/es/lowcode/view/lc-components/Drawer/meta.json +144 -0
  163. package/es/lowcode/view/lc-components/Drawer/style.less +7 -0
  164. package/es/lowcode/view/lc-components/Form/FunctionDesign.js +9 -0
  165. package/es/lowcode/view/lc-components/Form/FunctionLive.js +9 -0
  166. package/es/lowcode/view/lc-components/Form/index.js +20 -0
  167. package/es/lowcode/view/lc-components/Form/meta.json +117 -0
  168. package/es/lowcode/view/lc-components/Iframe/FunctionDesign.js +9 -0
  169. package/es/lowcode/view/lc-components/Iframe/FunctionLive.js +9 -0
  170. package/es/lowcode/view/lc-components/Iframe/index.js +20 -0
  171. package/es/lowcode/view/lc-components/Iframe/meta.json +32 -0
  172. package/es/lowcode/view/lc-components/ImEx/FunctionDesign.js +9 -0
  173. package/es/lowcode/view/lc-components/ImEx/FunctionLive.js +9 -0
  174. package/es/lowcode/view/lc-components/ImEx/index.js +20 -0
  175. package/es/lowcode/view/lc-components/ImEx/meta.json +82 -0
  176. package/es/lowcode/view/lc-components/Image/FunctionDesign.js +9 -0
  177. package/es/lowcode/view/lc-components/Image/FunctionLive.js +9 -0
  178. package/es/lowcode/view/lc-components/Image/index.js +20 -0
  179. package/es/lowcode/view/lc-components/Image/meta.json +114 -0
  180. package/es/lowcode/view/lc-components/JSX/FunctionDesign.js +9 -0
  181. package/es/lowcode/view/lc-components/JSX/FunctionLive.js +9 -0
  182. package/es/lowcode/view/lc-components/JSX/index.js +20 -0
  183. package/es/lowcode/view/lc-components/JSX/meta.json +25 -0
  184. package/es/lowcode/view/lc-components/Layout/FunctionDesign.js +75 -0
  185. package/es/lowcode/view/lc-components/Layout/FunctionLive.js +15 -0
  186. package/es/lowcode/view/lc-components/Layout/index.js +57 -0
  187. package/es/lowcode/view/lc-components/Layout/index.less +5 -0
  188. package/es/lowcode/view/lc-components/Layout/meta.json +108 -0
  189. package/es/lowcode/view/lc-components/Link/FunctionDesign.js +9 -0
  190. package/es/lowcode/view/lc-components/Link/FunctionLive.js +9 -0
  191. package/es/lowcode/view/lc-components/Link/index.js +20 -0
  192. package/es/lowcode/view/lc-components/Link/meta.json +112 -0
  193. package/es/lowcode/view/lc-components/Section/FunctionDesign.js +9 -0
  194. package/es/lowcode/view/lc-components/Section/FunctionLive.js +9 -0
  195. package/es/lowcode/view/lc-components/Section/index.js +34 -0
  196. package/es/lowcode/view/lc-components/Section/meta.json +108 -0
  197. package/es/lowcode/view/lc-components/Split/FunctionDesign.js +9 -0
  198. package/es/lowcode/view/lc-components/Split/FunctionLive.js +9 -0
  199. package/es/lowcode/view/lc-components/Split/index.js +21 -0
  200. package/es/lowcode/view/lc-components/Split/meta.json +72 -0
  201. package/es/lowcode/view/lc-components/Table/FunctionDesign.js +16 -0
  202. package/es/lowcode/view/lc-components/Table/FunctionLive.js +9 -0
  203. package/es/lowcode/view/lc-components/Table/index.js +153 -0
  204. package/es/lowcode/view/lc-components/Table/meta.json +174 -0
  205. package/es/lowcode/view/lc-components/Tabs/FunctionDesign.js +9 -0
  206. package/es/lowcode/view/lc-components/Tabs/FunctionLive.js +9 -0
  207. package/es/lowcode/view/lc-components/Tabs/index.js +21 -0
  208. package/es/lowcode/view/lc-components/Tabs/meta.json +141 -0
  209. package/es/lowcode/view/lc-components/Text/FunctionDesign.js +9 -0
  210. package/es/lowcode/view/lc-components/Text/FunctionLive.js +9 -0
  211. package/es/lowcode/view/lc-components/Text/index.js +23 -0
  212. package/es/lowcode/view/lc-components/Text/meta.json +66 -0
  213. package/es/lowcode/view/lc-components/Tree/FunctionDesign.js +9 -0
  214. package/es/lowcode/view/lc-components/Tree/FunctionLive.js +9 -0
  215. package/es/lowcode/view/lc-components/Tree/index.js +20 -0
  216. package/es/lowcode/view/lc-components/Tree/meta.json +157 -0
  217. package/es/lowcode/view/lc-components/Wrapper.js +54 -0
  218. package/es/lowcode/view/style/canvas.less +5 -0
  219. package/es/lowcode/view/style/loading.less +84 -0
  220. package/es/lowcode/view/style/page.less +5 -0
  221. package/es/services.js +1 -1
  222. package/es/upload/Form/gridForm.js +30 -8
  223. package/es/upload/Form/index.js +1 -1
  224. package/es/upload/Form/index.less +7 -7
  225. package/es/upload/FormItem/index.js +30 -18
  226. package/es/upload/GridCell/index.js +0 -0
  227. package/es/upload/index.js +3 -3
  228. package/es/utils/action.js +1 -1
  229. package/es/utils/form.js +26 -26
  230. package/es/utils/grid.js +26 -29
  231. package/es/utils/index.js +3 -3
  232. package/lib/components/Builder/index.js +3 -5
  233. package/lib/components/LdAutoForm/index.js +5 -8
  234. package/lib/components/LdCard/index.js +5 -7
  235. package/lib/components/LdCard/model.js +0 -0
  236. package/lib/components/LdCom/index.js +6 -11
  237. package/lib/components/LdFormList/index.js +10 -12
  238. package/lib/components/LdFormList/model.js +0 -0
  239. package/lib/components/LdGrid/index.js +10 -12
  240. package/lib/components/LdGrid/model.js +0 -0
  241. package/lib/components/LdGridForm/index.js +6 -7
  242. package/lib/components/LdGridForm/index.less +7 -7
  243. package/lib/components/LdInfoPanel/index.js +2 -3
  244. package/lib/components/LdPop/index.js +2 -4
  245. package/lib/components/LdRuntimeCom/index.js +49 -0
  246. package/lib/components/LdTree/index.js +2 -4
  247. package/lib/components/LdTree/index.less +36 -36
  248. package/lib/helper/FromItems.js +15 -29
  249. package/lib/helper/action.js +9 -11
  250. package/lib/helper/form.js +18 -20
  251. package/lib/helper/index.less +7 -7
  252. package/lib/helper/ldBuilder.js +1 -2
  253. package/lib/helper/ldComBuild.js +7 -11
  254. package/lib/index.js +9 -1
  255. package/lib/lowcode/constants/api-url.js +9 -0
  256. package/lib/lowcode/constants/event-topics.js +42 -0
  257. package/lib/lowcode/constants/index.js +18 -0
  258. package/lib/lowcode/engine/factory/DataFactory.js +3 -0
  259. package/lib/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +73 -0
  260. package/lib/lowcode/engine/factory/panel-item-factory/GroupStrategy.js +38 -0
  261. package/lib/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +38 -0
  262. package/lib/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +56 -0
  263. package/lib/lowcode/engine/factory/panel-item-factory/Strategy.js +27 -0
  264. package/lib/lowcode/engine/factory/panel-item-factory/StringStrategy.js +56 -0
  265. package/lib/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +38 -0
  266. package/lib/lowcode/engine/factory/panel-item-factory/index.js +48 -0
  267. package/lib/lowcode/engine/meta/box.props.default.json +12 -0
  268. package/lib/lowcode/engine/meta/box.props.json +42 -0
  269. package/lib/lowcode/engine/meta/button.props.default.json +16 -0
  270. package/lib/lowcode/engine/meta/button.props.json +122 -0
  271. package/lib/lowcode/engine/meta/cardlist.props.default.json +18 -0
  272. package/lib/lowcode/engine/meta/cardlist.props.json +144 -0
  273. package/lib/lowcode/engine/meta/components-list.json +128 -0
  274. package/lib/lowcode/engine/meta/dialog.props.default.json +19 -0
  275. package/lib/lowcode/engine/meta/dialog.props.json +121 -0
  276. package/lib/lowcode/engine/meta/drawer.props.default.json +18 -0
  277. package/lib/lowcode/engine/meta/drawer.props.json +144 -0
  278. package/lib/lowcode/engine/meta/form.props.default.json +13 -0
  279. package/lib/lowcode/engine/meta/form.props.json +117 -0
  280. package/lib/lowcode/engine/meta/iframe.props.default.json +11 -0
  281. package/lib/lowcode/engine/meta/iframe.props.json +32 -0
  282. package/lib/lowcode/engine/meta/image.props.default.json +16 -0
  283. package/lib/lowcode/engine/meta/image.props.json +114 -0
  284. package/lib/lowcode/engine/meta/imex.props.default.json +12 -0
  285. package/lib/lowcode/engine/meta/imex.props.json +82 -0
  286. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +29 -0
  287. package/lib/lowcode/engine/meta/jsx.props.default.json +10 -0
  288. package/lib/lowcode/engine/meta/jsx.props.json +25 -0
  289. package/lib/lowcode/engine/meta/layout.props.default.json +13 -0
  290. package/lib/lowcode/engine/meta/layout.props.json +108 -0
  291. package/lib/lowcode/engine/meta/link.props.default.json +14 -0
  292. package/lib/lowcode/engine/meta/link.props.json +112 -0
  293. package/lib/lowcode/engine/meta/section.props.default.json +17 -0
  294. package/lib/lowcode/engine/meta/section.props.json +108 -0
  295. package/lib/lowcode/engine/meta/split.props.default.json +13 -0
  296. package/lib/lowcode/engine/meta/split.props.json +72 -0
  297. package/lib/lowcode/engine/meta/table.props.default.json +12 -0
  298. package/lib/lowcode/engine/meta/table.props.json +174 -0
  299. package/lib/lowcode/engine/meta/tabs.props.default.json +18 -0
  300. package/lib/lowcode/engine/meta/tabs.props.json +141 -0
  301. package/lib/lowcode/engine/meta/text.props.default.json +12 -0
  302. package/lib/lowcode/engine/meta/text.props.json +66 -0
  303. package/lib/lowcode/engine/meta/tree.props.default.json +17 -0
  304. package/lib/lowcode/engine/meta/tree.props.json +157 -0
  305. package/lib/lowcode/engine/provider/ContextProvider.js +165 -0
  306. package/lib/lowcode/engine/provider/EventBusProvider.js +128 -0
  307. package/lib/lowcode/engine/tools/dataProcess.js +277 -0
  308. package/lib/lowcode/engine/tools/helper.js +11 -0
  309. package/lib/lowcode/engine/tools/usePromiseState.js +31 -0
  310. package/lib/lowcode/index.js +20 -0
  311. package/lib/lowcode/painter/Components.js +112 -0
  312. package/lib/lowcode/painter/Design.js +336 -0
  313. package/lib/lowcode/painter/I18n.js +213 -0
  314. package/lib/lowcode/painter/Outline.js +215 -0
  315. package/lib/lowcode/painter/Panel.js +215 -0
  316. package/lib/lowcode/painter/Ribbon.js +150 -0
  317. package/lib/lowcode/painter/components/Collapse.js +39 -0
  318. package/lib/lowcode/painter/components/NumberInput.js +101 -0
  319. package/lib/lowcode/painter/components/PanelItem.js +70 -0
  320. package/lib/lowcode/painter/components/PopConfirm.js +26 -0
  321. package/lib/lowcode/painter/components/PopForm.js +77 -0
  322. package/lib/lowcode/painter/components/RuleInput.js +112 -0
  323. package/lib/lowcode/painter/components/SortBox.js +99 -0
  324. package/lib/lowcode/painter/components/TabEditor.js +94 -0
  325. package/lib/lowcode/painter/components/code-editor/BaseEditor.js +126 -0
  326. package/lib/lowcode/painter/components/code-editor/CssEditor.js +22 -0
  327. package/lib/lowcode/painter/components/code-editor/FullScreenEditor.js +72 -0
  328. package/lib/lowcode/painter/components/code-editor/JSEditor.js +95 -0
  329. package/lib/lowcode/painter/components/code-editor/index.js +20 -0
  330. package/lib/lowcode/painter/index.js +54 -0
  331. package/lib/lowcode/painter/panel-section/ButtonType.js +46 -0
  332. package/lib/lowcode/painter/panel-section/Icon.js +54 -0
  333. package/lib/lowcode/painter/panel-section/IconSelector.js +141 -0
  334. package/lib/lowcode/painter/panel-section/LayoutRatio.js +138 -0
  335. package/lib/lowcode/painter/panel-section/StylePanel/Display.js +299 -0
  336. package/lib/lowcode/painter/panel-section/StylePanel/DisplaySvg.js +550 -0
  337. package/lib/lowcode/painter/panel-section/StylePanel/Height.js +55 -0
  338. package/lib/lowcode/painter/panel-section/StylePanel/MainPanel.js +72 -0
  339. package/lib/lowcode/painter/panel-section/StylePanel/StyleContext.js +112 -0
  340. package/lib/lowcode/painter/panel-section/StylePanel/Width.js +55 -0
  341. package/lib/lowcode/painter/panel-section/StylePanel/index.js +19 -0
  342. package/lib/lowcode/painter/panel-section/TabItems.js +245 -0
  343. package/lib/lowcode/painter/services/I18n.js +95 -0
  344. package/lib/lowcode/painter/style/button-type.less +5 -0
  345. package/lib/lowcode/painter/style/collapse.less +21 -0
  346. package/lib/lowcode/painter/style/components.less +90 -0
  347. package/lib/lowcode/painter/style/design.less +142 -0
  348. package/lib/lowcode/painter/style/display.less +17 -0
  349. package/lib/lowcode/painter/style/fullscreen-editor.less +17 -0
  350. package/lib/lowcode/painter/style/icon-selector.less +22 -0
  351. package/lib/lowcode/painter/style/icon.less +11 -0
  352. package/lib/lowcode/painter/style/index.less +6 -0
  353. package/lib/lowcode/painter/style/layout-ratio.less +51 -0
  354. package/lib/lowcode/painter/style/number-input.less +17 -0
  355. package/lib/lowcode/painter/style/outline.less +28 -0
  356. package/lib/lowcode/painter/style/panel-item.less +44 -0
  357. package/lib/lowcode/painter/style/panel.less +142 -0
  358. package/lib/lowcode/painter/style/pop-confirm.less +10 -0
  359. package/lib/lowcode/painter/style/pop-form.less +20 -0
  360. package/lib/lowcode/painter/style/radio.less +24 -0
  361. package/lib/lowcode/painter/style/ribbon.less +5 -0
  362. package/lib/lowcode/painter/style/rule-input.less +13 -0
  363. package/lib/lowcode/painter/style/style-panel.less +5 -0
  364. package/lib/lowcode/painter/style/tabeditor.less +90 -0
  365. package/lib/lowcode/painter/style/tabitems.less +90 -0
  366. package/lib/lowcode/view/Canvas.js +158 -0
  367. package/lib/lowcode/view/Loading.js +30 -0
  368. package/lib/lowcode/view/Page.js +260 -0
  369. package/lib/lowcode/view/index.js +25 -0
  370. package/lib/lowcode/view/lc-components/Box/FunctionDesign.js +27 -0
  371. package/lib/lowcode/view/lc-components/Box/FunctionLive.js +16 -0
  372. package/lib/lowcode/view/lc-components/Box/index.js +46 -0
  373. package/lib/lowcode/view/lc-components/Box/index.less +15 -0
  374. package/lib/lowcode/view/lc-components/Box/meta.json +42 -0
  375. package/lib/lowcode/view/lc-components/Button/FunctionDesign.js +28 -0
  376. package/lib/lowcode/view/lc-components/Button/FunctionLive.js +16 -0
  377. package/lib/lowcode/view/lc-components/Button/index.js +110 -0
  378. package/lib/lowcode/view/lc-components/Button/meta.json +122 -0
  379. package/lib/lowcode/view/lc-components/CardList/FunctionDesign.js +16 -0
  380. package/lib/lowcode/view/lc-components/CardList/FunctionLive.js +16 -0
  381. package/lib/lowcode/view/lc-components/CardList/index.js +28 -0
  382. package/lib/lowcode/view/lc-components/CardList/meta.json +144 -0
  383. package/lib/lowcode/view/lc-components/Dialog/FunctionDesign.js +16 -0
  384. package/lib/lowcode/view/lc-components/Dialog/FunctionLive.js +16 -0
  385. package/lib/lowcode/view/lc-components/Dialog/index.js +69 -0
  386. package/lib/lowcode/view/lc-components/Dialog/index.less +3 -0
  387. package/lib/lowcode/view/lc-components/Dialog/meta.json +121 -0
  388. package/lib/lowcode/view/lc-components/Drawer/FunctionDesign.js +16 -0
  389. package/lib/lowcode/view/lc-components/Drawer/FunctionLive.js +16 -0
  390. package/lib/lowcode/view/lc-components/Drawer/index.js +70 -0
  391. package/lib/lowcode/view/lc-components/Drawer/meta.json +144 -0
  392. package/lib/lowcode/view/lc-components/Drawer/style.less +7 -0
  393. package/lib/lowcode/view/lc-components/Form/FunctionDesign.js +16 -0
  394. package/lib/lowcode/view/lc-components/Form/FunctionLive.js +16 -0
  395. package/lib/lowcode/view/lc-components/Form/index.js +28 -0
  396. package/lib/lowcode/view/lc-components/Form/meta.json +117 -0
  397. package/lib/lowcode/view/lc-components/Iframe/FunctionDesign.js +16 -0
  398. package/lib/lowcode/view/lc-components/Iframe/FunctionLive.js +16 -0
  399. package/lib/lowcode/view/lc-components/Iframe/index.js +28 -0
  400. package/lib/lowcode/view/lc-components/Iframe/meta.json +32 -0
  401. package/lib/lowcode/view/lc-components/ImEx/FunctionDesign.js +16 -0
  402. package/lib/lowcode/view/lc-components/ImEx/FunctionLive.js +16 -0
  403. package/lib/lowcode/view/lc-components/ImEx/index.js +28 -0
  404. package/lib/lowcode/view/lc-components/ImEx/meta.json +82 -0
  405. package/lib/lowcode/view/lc-components/Image/FunctionDesign.js +16 -0
  406. package/lib/lowcode/view/lc-components/Image/FunctionLive.js +16 -0
  407. package/lib/lowcode/view/lc-components/Image/index.js +28 -0
  408. package/lib/lowcode/view/lc-components/Image/meta.json +114 -0
  409. package/lib/lowcode/view/lc-components/JSX/FunctionDesign.js +16 -0
  410. package/lib/lowcode/view/lc-components/JSX/FunctionLive.js +16 -0
  411. package/lib/lowcode/view/lc-components/JSX/index.js +28 -0
  412. package/lib/lowcode/view/lc-components/JSX/meta.json +25 -0
  413. package/lib/lowcode/view/lc-components/Layout/FunctionDesign.js +82 -0
  414. package/lib/lowcode/view/lc-components/Layout/FunctionLive.js +22 -0
  415. package/lib/lowcode/view/lc-components/Layout/index.js +65 -0
  416. package/lib/lowcode/view/lc-components/Layout/index.less +5 -0
  417. package/lib/lowcode/view/lc-components/Layout/meta.json +108 -0
  418. package/lib/lowcode/view/lc-components/Link/FunctionDesign.js +16 -0
  419. package/lib/lowcode/view/lc-components/Link/FunctionLive.js +16 -0
  420. package/lib/lowcode/view/lc-components/Link/index.js +28 -0
  421. package/lib/lowcode/view/lc-components/Link/meta.json +112 -0
  422. package/lib/lowcode/view/lc-components/Section/FunctionDesign.js +16 -0
  423. package/lib/lowcode/view/lc-components/Section/FunctionLive.js +16 -0
  424. package/lib/lowcode/view/lc-components/Section/index.js +42 -0
  425. package/lib/lowcode/view/lc-components/Section/meta.json +108 -0
  426. package/lib/lowcode/view/lc-components/Split/FunctionDesign.js +16 -0
  427. package/lib/lowcode/view/lc-components/Split/FunctionLive.js +16 -0
  428. package/lib/lowcode/view/lc-components/Split/index.js +29 -0
  429. package/lib/lowcode/view/lc-components/Split/meta.json +72 -0
  430. package/lib/lowcode/view/lc-components/Table/FunctionDesign.js +23 -0
  431. package/lib/lowcode/view/lc-components/Table/FunctionLive.js +16 -0
  432. package/lib/lowcode/view/lc-components/Table/index.js +161 -0
  433. package/lib/lowcode/view/lc-components/Table/meta.json +174 -0
  434. package/lib/lowcode/view/lc-components/Tabs/FunctionDesign.js +16 -0
  435. package/lib/lowcode/view/lc-components/Tabs/FunctionLive.js +16 -0
  436. package/lib/lowcode/view/lc-components/Tabs/index.js +29 -0
  437. package/lib/lowcode/view/lc-components/Tabs/meta.json +141 -0
  438. package/lib/lowcode/view/lc-components/Text/FunctionDesign.js +16 -0
  439. package/lib/lowcode/view/lc-components/Text/FunctionLive.js +16 -0
  440. package/lib/lowcode/view/lc-components/Text/index.js +31 -0
  441. package/lib/lowcode/view/lc-components/Text/meta.json +66 -0
  442. package/lib/lowcode/view/lc-components/Tree/FunctionDesign.js +16 -0
  443. package/lib/lowcode/view/lc-components/Tree/FunctionLive.js +16 -0
  444. package/lib/lowcode/view/lc-components/Tree/index.js +28 -0
  445. package/lib/lowcode/view/lc-components/Tree/meta.json +157 -0
  446. package/lib/lowcode/view/lc-components/Wrapper.js +61 -0
  447. package/lib/lowcode/view/style/canvas.less +5 -0
  448. package/lib/lowcode/view/style/loading.less +84 -0
  449. package/lib/lowcode/view/style/page.less +5 -0
  450. package/lib/services.js +0 -0
  451. package/lib/upload/Form/gridForm.js +28 -7
  452. package/lib/upload/Form/index.js +1 -2
  453. package/lib/upload/Form/index.less +7 -7
  454. package/lib/upload/FormItem/index.js +30 -19
  455. package/lib/upload/GridCell/index.js +1 -2
  456. package/lib/upload/index.js +0 -0
  457. package/lib/utils/action.js +0 -0
  458. package/lib/utils/form.js +26 -29
  459. package/lib/utils/grid.js +22 -26
  460. package/lib/utils/index.js +0 -0
  461. package/lowcode.js +1 -0
  462. package/package.json +164 -78
  463. package/upload.js +1 -1
  464. package/utils.js +1 -1
  465. package/README.zh-CN.md +0 -51
@@ -0,0 +1,141 @@
1
+ {
2
+ "component": "Tabs",
3
+ "name": "选项卡",
4
+ "icon": "icon-tabs",
5
+ "group": "container",
6
+ "groupName": "布局",
7
+ "desc": "用于显示多个相关内容并提供切换功能。它包含了标签项、形态、大小等配置选项,使用户能够创建具有选项卡切换功能的界面,并根据需要自定义选项卡的外观和尺寸。",
8
+ "order": 1,
9
+ "props": [
10
+ {
11
+ "key": "fieldId",
12
+ "name": "唯一标识",
13
+ "desc": "组件的唯一标识符,不能够与其它组件重名,不能够为空,且只能够使用以字母开头的,下划线以及数字的组合",
14
+ "type": "string",
15
+ "disabled": true
16
+ },
17
+ {
18
+ "key": "items",
19
+ "name": "标签项",
20
+ "desc": "表示标签项或选项卡的集合",
21
+ "type": "_TabsItems",
22
+ "default": []
23
+ },
24
+ {
25
+ "key": "shape",
26
+ "name": "形态",
27
+ "desc": "表示选项卡的形态或外观样式",
28
+ "type": "radio",
29
+ "options": [
30
+ {
31
+ "label": "普通型",
32
+ "value": "pure"
33
+ },
34
+ {
35
+ "label": "包裹型",
36
+ "value": "wrapped"
37
+ },
38
+ {
39
+ "label": "文本型",
40
+ "value": "text"
41
+ },
42
+ {
43
+ "label": "胶囊型",
44
+ "value": "capsule"
45
+ }
46
+ ],
47
+ "default": "pure"
48
+ },
49
+ {
50
+ "key": "size",
51
+ "name": "大小",
52
+ "desc": "表示选项卡的形态或外观样式",
53
+ "type": "radio",
54
+ "options": [
55
+ {
56
+ "label": "小",
57
+ "value": "small"
58
+ },
59
+ {
60
+ "label": "中",
61
+ "value": "default"
62
+ }
63
+ ],
64
+ "default": "default"
65
+ },
66
+ {
67
+ "key": "contentPadding",
68
+ "name": "内容间距",
69
+ "desc": "设定内容区的内间距,请输入合理的CSS padding值",
70
+ "type": "string",
71
+ "default": "20px 20px"
72
+ },
73
+ {
74
+ "key": "excessMode",
75
+ "name": "选项卡过多时的滑动模式",
76
+ "desc": "表示选项卡过多时的滑动模式",
77
+ "type": "radio",
78
+ "options": [
79
+ {
80
+ "label": "滑动",
81
+ "value": "slide"
82
+ },
83
+ {
84
+ "label": "下拉",
85
+ "value": "dropdown"
86
+ }
87
+ ],
88
+ "default": "slide"
89
+ },
90
+ {
91
+ "key": "unmountInactiveTabs",
92
+ "name": "切换销毁",
93
+ "desc": "表示选项卡切换时是否销毁非活动选项卡的内容",
94
+ "type": "boolean",
95
+ "default": false
96
+ },
97
+ {
98
+ "key": "lazyLoad",
99
+ "name": "延迟加载",
100
+ "desc": "表示选项卡的延迟加载行为",
101
+ "type": "boolean",
102
+ "default": false
103
+ },
104
+ {
105
+ "key": "needBadge",
106
+ "name": "开启徽标",
107
+ "desc": "表示选项卡是否开启徽标",
108
+ "type": "boolean",
109
+ "default": false
110
+ }
111
+ ],
112
+ "style": {},
113
+ "advance": {
114
+ "events": [
115
+ {
116
+ "key": "onMount",
117
+ "name": "组件首次渲染时",
118
+ "desc": "在组件首次渲染时,执行方法",
119
+ "func": "(params)=>{\n\t\n}"
120
+ },
121
+ {
122
+ "key": "onUnmount",
123
+ "name": "组件卸载时",
124
+ "desc": "在组件卸载时,执行方法。",
125
+ "func": "(params)=>{\n\t\n}"
126
+ },
127
+ {
128
+ "key": "renderBadge",
129
+ "name": "徽标渲染",
130
+ "desc": "当needBadge为true时可配置。徽标渲染方法",
131
+ "func": "(tabItem)=>{\n\t\n}"
132
+ },
133
+ {
134
+ "key": "onExtraRender",
135
+ "name": "渲染导航栏附加内容",
136
+ "desc": "渲染导航栏附加内容方法",
137
+ "func": "(activeTab)=>{\n\t\n}"
138
+ }
139
+ ]
140
+ }
141
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "component": "Text",
3
+ "name": "文本",
4
+ "icon": "icon-text",
5
+ "group": "basic",
6
+ "groupName": "基础",
7
+ "desc": "文本组件用于显示文本内容。",
8
+ "order": 1,
9
+ "style": {},
10
+ "showTitle": false,
11
+ "maxLine": 0
12
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "component": "Text",
3
+ "name": "文本",
4
+ "icon": "icon-text",
5
+ "group": "basic",
6
+ "groupName": "基础",
7
+ "desc": "文本组件用于显示文本内容。",
8
+ "order": 1,
9
+ "props": [
10
+ {
11
+ "key": "id",
12
+ "desc": "唯一标识",
13
+ "type": "string",
14
+ "disabled": true
15
+ },
16
+ {
17
+ "key": "content",
18
+ "name": "内容",
19
+ "desc": "文本内容设置",
20
+ "type": "string"
21
+ },
22
+ {
23
+ "key": "showTitle",
24
+ "name": "显示标题",
25
+ "desc": "是否显示标题",
26
+ "type": "boolean",
27
+ "default": false
28
+ },
29
+ {
30
+ "key": "title",
31
+ "name": "自定义标题",
32
+ "desc": "显示标题时配置。自定义标题内容",
33
+ "type": "string"
34
+ },
35
+ {
36
+ "key": "maxLine",
37
+ "name": "最大行数",
38
+ "desc": "超出时自动省略号展示",
39
+ "type": "number",
40
+ "default": 0
41
+ }
42
+ ],
43
+ "style": {},
44
+ "advance": {
45
+ "events": [
46
+ {
47
+ "key": "onMount",
48
+ "name": "组件首次渲染时",
49
+ "desc": "在组件首次渲染时,执行方法",
50
+ "func": "(params)=>{\n\t\n}"
51
+ },
52
+ {
53
+ "key": "onUnmount",
54
+ "name": "组件卸载时",
55
+ "desc": "在组件卸载时,执行方法。",
56
+ "func": "(params)=>{\n\t\n}"
57
+ },
58
+ {
59
+ "key": "onClick",
60
+ "name": "点击事件",
61
+ "desc": "点击文本时,执行方法",
62
+ "func": "(e)=>{\n\t\n}"
63
+ }
64
+ ]
65
+ }
66
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "component": "Tree",
3
+ "name": "树",
4
+ "desc": "用于展示和管理具有层级结构的数据。它提供了层级结构、节点展开/折叠、节点选择、节点操作和展示样式等功能和配置选项,使用户能够轻松创建和管理树结构。",
5
+ "icon": "icon-tree",
6
+ "group": "advance",
7
+ "groupName": "高级",
8
+ "order": 1,
9
+ "style": {},
10
+ "showLine": false,
11
+ "lazyLoad": false,
12
+ "editable": false,
13
+ "draggable": false,
14
+ "defaultExpandDeep": 1,
15
+ "doubleClick": true,
16
+ "multiple": false
17
+ }
@@ -0,0 +1,157 @@
1
+ {
2
+ "component": "Tree",
3
+ "name": "树",
4
+ "desc": "用于展示和管理具有层级结构的数据。它提供了层级结构、节点展开/折叠、节点选择、节点操作和展示样式等功能和配置选项,使用户能够轻松创建和管理树结构。",
5
+ "icon": "icon-tree",
6
+ "group": "advance",
7
+ "groupName": "高级",
8
+ "order": 1,
9
+ "props": [
10
+ {
11
+ "key": "id",
12
+ "desc": "唯一标识",
13
+ "type": "string",
14
+ "disabled": true
15
+ },
16
+ {
17
+ "key": "dateset",
18
+ "name": "数据集",
19
+ "desc": "选择系统中的可用树形数据集",
20
+ "type": "_DataSetSelector"
21
+ },
22
+ {
23
+ "key": "showLine",
24
+ "name": "显示线",
25
+ "desc": "是否显示树组件的连接线",
26
+ "type": "boolean",
27
+ "default": false
28
+ },
29
+ {
30
+ "key": "lazyLoad",
31
+ "name": "懒加载",
32
+ "desc": "是否树形组件懒加载",
33
+ "type": "boolean",
34
+ "default": false
35
+ },
36
+ {
37
+ "key": "editable",
38
+ "name": "支持编辑",
39
+ "desc": "是否支持编辑树",
40
+ "type": "boolean",
41
+ "default": false
42
+ },
43
+ {
44
+ "key": "draggable",
45
+ "name": "支持拖拽",
46
+ "desc": "是否支持拖拽",
47
+ "type": "boolean",
48
+ "default": false
49
+ },
50
+ {
51
+ "key": "defaultExpandDeep",
52
+ "name": "默认展开层级",
53
+ "desc": "默认展开多少层级",
54
+ "type": "select",
55
+ "options": [
56
+ {
57
+ "label": "1",
58
+ "value": "1"
59
+ },
60
+ {
61
+ "label": "2",
62
+ "value": "2"
63
+ },
64
+ {
65
+ "label": "3",
66
+ "value": "3"
67
+ },
68
+ {
69
+ "label": "4",
70
+ "value": "4"
71
+ },
72
+ {
73
+ "label": "5",
74
+ "value": "5"
75
+ },
76
+ {
77
+ "label": "全部",
78
+ "value": "all"
79
+ }
80
+ ],
81
+ "default": 1
82
+ },
83
+ {
84
+ "key": "rowKey",
85
+ "name": "数据主键key",
86
+ "desc": "数据主键",
87
+ "type": "string"
88
+ },
89
+ {
90
+ "key": "actions",
91
+ "name": "操作项",
92
+ "desc": "单行操作项",
93
+ "type": "_ActionSelector"
94
+ },
95
+ {
96
+ "key": "doubleClick",
97
+ "name": "开启双击事件",
98
+ "desc": "是否开启双击事件(默认双击收缩节点)",
99
+ "type": "boolean",
100
+ "default": true
101
+ },
102
+ {
103
+ "key": "multiple",
104
+ "name": "多选",
105
+ "desc": "是否支持多选",
106
+ "type": "boolean",
107
+ "default": false
108
+ }
109
+ ],
110
+ "style": {},
111
+ "advance": {
112
+ "events": [
113
+ {
114
+ "key": "onMount",
115
+ "name": "组件首次渲染时",
116
+ "desc": "在组件首次渲染时,执行方法",
117
+ "func": "(params)=>{\n\t\n}"
118
+ },
119
+ {
120
+ "key": "onUnmount",
121
+ "name": "组件卸载时",
122
+ "desc": "在组件卸载时,执行方法。",
123
+ "func": "(params)=>{\n\t\n}"
124
+ },
125
+ {
126
+ "key": "processDataSource",
127
+ "name": "数据预处理",
128
+ "desc": "数据渲染前预处理",
129
+ "func": "(data)=>{\n\t\n}"
130
+ },
131
+ {
132
+ "key": "onTreeNodeRender",
133
+ "name": "定制渲染",
134
+ "desc": "单行树节点渲染",
135
+ "func": "(title, rowData)=>{\n\t\n}"
136
+ },
137
+ {
138
+ "key": "unSelectableNodes",
139
+ "name": "失活节点",
140
+ "desc": "不可选择的节点",
141
+ "func": "(data)=>{\n\t\n}"
142
+ },
143
+ {
144
+ "key": "onRightMenus",
145
+ "name": "定制渲染",
146
+ "desc": "返回为false时,该操作不可见",
147
+ "func": "(title, rowData)=>{\n\t\n}"
148
+ },
149
+ {
150
+ "key": "onDoubleClick",
151
+ "name": "自定义双击事件",
152
+ "desc": "自定义双击事件,默认为收缩节点",
153
+ "func": "(rowData)=>{\n\t\n}"
154
+ }
155
+ ]
156
+ }
157
+ }
@@ -0,0 +1,157 @@
1
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import React, { createContext, useContext, useRef } from 'react';
4
+ import { history } from 'umi';
5
+ import { useMemoizedFn, useSafeState } from 'ahooks';
6
+ import { useLDEventBus } from "./EventBusProvider";
7
+ import usePromiseState from "../tools/usePromiseState";
8
+ import * as topics from "../../constants/event-topics";
9
+ export var Context = /*#__PURE__*/createContext(null);
10
+ export var useLDContext = function useLDContext() {
11
+ return useContext(Context);
12
+ };
13
+ var PRIVATE_KEYS = ['pageCode', 'moduleCode', 'componentList', 'componentMap'];
14
+ export default (function (_ref) {
15
+ var children = _ref.children;
16
+ var eventBus = useLDEventBus();
17
+
18
+ /**
19
+ * 页面码
20
+ */
21
+ var _pageCode = useRef(void 0);
22
+
23
+ /**
24
+ * 模块码
25
+ */
26
+ var _moduleCode = useRef(void 0);
27
+
28
+ /**
29
+ * 页面数据
30
+ */
31
+ var _usePromiseState = usePromiseState(null),
32
+ _usePromiseState2 = _slicedToArray(_usePromiseState, 2),
33
+ pageData = _usePromiseState2[0],
34
+ _setPageData = _usePromiseState2[1];
35
+
36
+ /**
37
+ * 组件列表
38
+ */
39
+ var _componentList = useRef([]);
40
+ var _privateGetter = useRef({
41
+ pageCode: function pageCode() {
42
+ return _pageCode.current;
43
+ },
44
+ moduleCode: function moduleCode() {
45
+ return _moduleCode.current;
46
+ },
47
+ componentList: function componentList() {
48
+ return _componentList.current;
49
+ },
50
+ componentMap: function componentMap() {
51
+ return new Map(_componentList.current);
52
+ }
53
+ });
54
+
55
+ /**
56
+ * 注册组件
57
+ * id:string 组件id
58
+ * component:ReactNode 组件
59
+ */
60
+ var register = useMemoizedFn(function (id, component) {
61
+ _componentList.current.push([id, component]);
62
+ });
63
+
64
+ /**
65
+ * 注销组件
66
+ * id:string 组件id
67
+ */
68
+ var unregister = useMemoizedFn(function (id) {
69
+ _componentList.current = _componentList.current.filter(function (_ref2) {
70
+ var _ref3 = _slicedToArray(_ref2, 1),
71
+ _id = _ref3[0];
72
+ return _id !== id;
73
+ });
74
+ });
75
+
76
+ /**
77
+ * 根据组件id获取组件
78
+ * compId:string 组件id
79
+ * return:ReactNode
80
+ */
81
+ var getElementById = useMemoizedFn(function (compId) {});
82
+
83
+ /**
84
+ * 根据组件id获取父组件
85
+ * compId:string 组件id
86
+ * return:ReactNode
87
+ */
88
+ var getParentElement = useMemoizedFn(function (compId) {});
89
+
90
+ /**
91
+ * 根据组件id获取组件路径
92
+ * compId:string 组件id
93
+ * return:ReactNode
94
+ */
95
+ var getElementPathById = useMemoizedFn(function (compId) {});
96
+
97
+ /**
98
+ * 获取当前模块数据
99
+ * return:Object
100
+ */
101
+ var getModule = useMemoizedFn(function () {});
102
+
103
+ /**
104
+ * 根据datasetId获取数据集
105
+ * datasetId:string 数据集id
106
+ * return:Object
107
+ */
108
+ var getDataSetById = useMemoizedFn(function (datasetId) {});
109
+
110
+ /**
111
+ * 执行actionKey对应的行为
112
+ * actionKey:string 行为key
113
+ * return:Promise
114
+ */
115
+ var doAction = useMemoizedFn(function (actionKey) {});
116
+
117
+ /**
118
+ * 获取url参数
119
+ * return:object
120
+ */
121
+ var getUrlParams = useMemoizedFn(function () {});
122
+ return /*#__PURE__*/React.createElement(Context.Provider, {
123
+ value: new Proxy(_objectSpread({
124
+ _pageCode: _pageCode,
125
+ _moduleCode: _moduleCode,
126
+ _setPageData: _setPageData,
127
+ pageData: pageData,
128
+ history: history,
129
+ topics: topics,
130
+ register: register,
131
+ unregister: unregister,
132
+ getElementById: getElementById,
133
+ getParentElement: getParentElement,
134
+ getElementPathById: getElementPathById,
135
+ getModule: getModule,
136
+ getDataSetById: getDataSetById,
137
+ doAction: doAction,
138
+ getUrlParams: getUrlParams
139
+ }, eventBus), {
140
+ get: function get(target, property, receiver) {
141
+ if (PRIVATE_KEYS.includes(property)) {
142
+ var _privateGetter$curren;
143
+ return (_privateGetter$curren = _privateGetter.current) === null || _privateGetter$curren === void 0 ? void 0 : _privateGetter$curren[property]();
144
+ }
145
+ return Reflect.get(target, property, receiver);
146
+ },
147
+ set: function set(target, property, receiver) {
148
+ console.log('set', target, property, receiver);
149
+ if (PRIVATE_KEYS.includes(property)) {
150
+ throw new Error("\u5C5E\u6027 \"".concat(property, "\" \u662F\u53EA\u8BFB\u7684"));
151
+ } else {
152
+ return Reflect.set(target, property, receiver);
153
+ }
154
+ }
155
+ })
156
+ }, children);
157
+ });
@@ -0,0 +1,120 @@
1
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
+ var _excluded = ["topic"];
5
+ import React, { createContext, useContext } from 'react';
6
+ import { useEventEmitter, useCreation, useMemoizedFn } from 'ahooks';
7
+ import { suid } from '@luck-design-biz/base/utils';
8
+ import { isPromise } from "../tools/helper";
9
+ export var EventBus = /*#__PURE__*/createContext(null);
10
+ export var useLDEventBus = function useLDEventBus() {
11
+ return useContext(EventBus);
12
+ };
13
+ function Subscriber(id) {
14
+ function on(hook) {
15
+ this._on = hook;
16
+ return this;
17
+ }
18
+ function once(hook) {
19
+ this._once = hook;
20
+ return this;
21
+ }
22
+ function before(hook) {
23
+ this._before = hook;
24
+ return this;
25
+ }
26
+ function after(hook) {
27
+ this._after = hook;
28
+ return this;
29
+ }
30
+ function off(hook) {
31
+ this._off = hook;
32
+ return this;
33
+ }
34
+ function watch() {
35
+ return id;
36
+ }
37
+ return {
38
+ on: on,
39
+ once: once,
40
+ before: before,
41
+ after: after,
42
+ off: off,
43
+ watch: watch
44
+ };
45
+ }
46
+ export default (function (_ref) {
47
+ var children = _ref.children,
48
+ runtime = _ref.runtime;
49
+ var event$ = useEventEmitter();
50
+ var subscriberPool = useCreation(function () {
51
+ return new Map();
52
+ }, []);
53
+ event$.useSubscription(function (_ref2) {
54
+ var topic = _ref2.topic,
55
+ payload = _objectWithoutProperties(_ref2, _excluded);
56
+ if (!subscriberPool.has(topic)) return;
57
+ subscriberPool.get(topic).forEach(function (_ref3) {
58
+ var _ref4 = _slicedToArray(_ref3, 2),
59
+ _id = _ref4[0],
60
+ _subscriber = _ref4[1];
61
+ var temp = _subscriber._before ? _subscriber._before(payload) : null;
62
+ if (_subscriber._before && !isPromise(temp)) {
63
+ console.error('before hook must return a promise');
64
+ return;
65
+ }
66
+ var _before = temp || Promise.resolve(true);
67
+ _before.then(function (flag) {
68
+ if (!flag) return flag;
69
+ var func = _subscriber._once || _subscriber._on;
70
+ if (!func) return;
71
+ return func(payload);
72
+ }).then(function (flag) {
73
+ if (flag === false || !_subscriber._after) return;
74
+ return _subscriber._after(payload);
75
+ }).finally(function () {
76
+ if (_subscriber._once) {
77
+ $unsubscriber(topic, _id);
78
+ }
79
+ });
80
+ });
81
+ });
82
+ var $publisher = useMemoizedFn(function (topic, payload) {
83
+ event$.emit(_objectSpread({
84
+ topic: topic,
85
+ runtime: runtime
86
+ }, payload));
87
+ });
88
+ var $subscriber = useMemoizedFn(function (topic) {
89
+ if (!subscriberPool.has(topic)) subscriberPool.set(topic, []);
90
+ var id = suid();
91
+ var _subscriber = Subscriber(id);
92
+ subscriberPool.get(topic).push([id, _subscriber]);
93
+ return _subscriber;
94
+ });
95
+ var $unsubscriber = useMemoizedFn(function (topic, id) {
96
+ if (!subscriberPool.has(topic)) return;
97
+ subscriberPool.get(topic).forEach(function (_ref5, index) {
98
+ var _ref6 = _slicedToArray(_ref5, 2),
99
+ _id = _ref6[0],
100
+ _subscriber = _ref6[1];
101
+ if (_id === id) {
102
+ var _subscriber$_off, _subscriber2;
103
+ subscriberPool.get(topic).splice(index, 1);
104
+ if (!subscriberPool.get(topic).length) {
105
+ subscriberPool.delete(topic);
106
+ }
107
+ (_subscriber$_off = (_subscriber2 = _subscriber)._off) === null || _subscriber$_off === void 0 || _subscriber$_off.call(_subscriber2);
108
+ _subscriber = null;
109
+ }
110
+ });
111
+ });
112
+ return /*#__PURE__*/React.createElement(EventBus.Provider, {
113
+ value: {
114
+ runtime: runtime,
115
+ $publisher: $publisher,
116
+ $subscriber: $subscriber,
117
+ $unsubscriber: $unsubscriber
118
+ }
119
+ }, children);
120
+ });