@luck-design-biz/luckda 0.0.27 → 1.0.0-alpha

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 (841) hide show
  1. package/es/components/Builder/index.js +22 -27
  2. package/es/components/ComplexItem/index.js +92 -0
  3. package/es/components/ComplexItem/service.js +21 -0
  4. package/es/components/IconFont/index.js +5 -0
  5. package/es/components/LDActions/index.js +131 -0
  6. package/es/components/LDActions/index.less +68 -0
  7. package/es/components/LdAutoForm/index.js +60 -25
  8. package/es/components/LdCom/index.js +2 -1
  9. package/es/components/LdFormList/index.js +62 -38
  10. package/es/components/LdGrid/index.js +49 -28
  11. package/es/components/LdGridForm/index.js +41 -23
  12. package/es/components/LdTree/index.js +184 -36
  13. package/es/components/LdTree/index.less +6 -1
  14. package/es/helper/FromItems.js +177 -94
  15. package/es/helper/form.js +55 -20
  16. package/es/helper/ldBuilder.js +29 -16
  17. package/es/helper/ldComBuild.js +29 -14
  18. package/es/helper/props_config.js +17 -0
  19. package/es/index.js +1 -1
  20. package/es/locales/zh-CN.js +236 -0
  21. package/es/lowcode/constants/api-url.js +690 -1
  22. package/es/lowcode/constants/event-topics.js +21 -1
  23. package/es/lowcode/constants/index.js +32 -2
  24. package/es/lowcode/engine/factory/panel-item-factory/CheckboxStrategy.js +32 -0
  25. package/es/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +60 -0
  26. package/es/lowcode/engine/factory/panel-item-factory/GroupStrategy.js +32 -0
  27. package/es/lowcode/engine/factory/panel-item-factory/NumberStrategy.js +32 -0
  28. package/es/lowcode/engine/factory/panel-item-factory/RadioStrategy.js +53 -0
  29. package/es/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +32 -0
  30. package/es/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +56 -0
  31. package/es/lowcode/engine/factory/panel-item-factory/Strategy.js +21 -0
  32. package/es/lowcode/engine/factory/panel-item-factory/StringStrategy.js +51 -0
  33. package/es/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +45 -0
  34. package/es/lowcode/engine/factory/panel-item-factory/index.js +48 -0
  35. package/es/lowcode/engine/launcher.js +39 -0
  36. package/es/lowcode/engine/meta/box.props.default.json +13 -0
  37. package/es/lowcode/engine/meta/box.props.json +40 -0
  38. package/es/lowcode/engine/meta/button.props.default.json +18 -7
  39. package/{lib/lowcode/engine/meta/components/button.json → es/lowcode/engine/meta/button.props.json} +126 -103
  40. package/es/lowcode/engine/meta/cardlist.props.default.json +19 -9
  41. package/es/lowcode/engine/meta/{components/card-list.json → cardlist.props.json} +152 -142
  42. package/es/lowcode/engine/meta/components-list.json +235 -121
  43. package/es/lowcode/engine/meta/dialog.props.default.json +27 -0
  44. package/es/lowcode/engine/meta/dialog.props.json +157 -0
  45. package/es/lowcode/engine/meta/drawer.props.default.json +19 -9
  46. package/{lib/lowcode/engine/meta/components/drawer.json → es/lowcode/engine/meta/drawer.props.json} +130 -142
  47. package/es/lowcode/engine/meta/fieldcolor.props.default.json +19 -0
  48. package/es/lowcode/engine/meta/fieldcolor.props.json +159 -0
  49. package/es/lowcode/engine/meta/fieldcomplex.props.default.json +18 -0
  50. package/es/lowcode/engine/meta/fieldcomplex.props.json +135 -0
  51. package/es/lowcode/engine/meta/fielddate.props.default.json +17 -0
  52. package/es/lowcode/engine/meta/fielddate.props.json +143 -0
  53. package/es/lowcode/engine/meta/fielddict.props.default.json +19 -0
  54. package/es/lowcode/engine/meta/fielddict.props.json +140 -0
  55. package/es/lowcode/engine/meta/fieldeditor.props.default.json +18 -0
  56. package/es/lowcode/engine/meta/fieldeditor.props.json +140 -0
  57. package/es/lowcode/engine/meta/fieldgroup.props.default.json +20 -0
  58. package/es/lowcode/engine/meta/fieldgroup.props.json +169 -0
  59. package/es/lowcode/engine/meta/fieldnumber.props.default.json +19 -0
  60. package/es/lowcode/engine/meta/fieldnumber.props.json +144 -0
  61. package/es/lowcode/engine/meta/fieldradio.props.default.json +17 -0
  62. package/es/lowcode/engine/meta/fieldradio.props.json +117 -0
  63. package/es/lowcode/engine/meta/fieldregion.props.default.json +17 -0
  64. package/es/lowcode/engine/meta/fieldregion.props.json +123 -0
  65. package/es/lowcode/engine/meta/fieldselect.props.default.json +19 -0
  66. package/es/lowcode/engine/meta/fieldselect.props.json +154 -0
  67. package/es/lowcode/engine/meta/fieldstring.props.default.json +17 -0
  68. package/es/lowcode/engine/meta/fieldstring.props.json +154 -0
  69. package/es/lowcode/engine/meta/fieldswitch.props.default.json +17 -0
  70. package/es/lowcode/engine/meta/fieldswitch.props.json +127 -0
  71. package/es/lowcode/engine/meta/fieldtextarea.props.default.json +18 -0
  72. package/es/lowcode/engine/meta/fieldtextarea.props.json +145 -0
  73. package/es/lowcode/engine/meta/fieldupload.props.default.json +20 -0
  74. package/es/lowcode/engine/meta/fieldupload.props.json +167 -0
  75. package/es/lowcode/engine/meta/fielduser.props.default.json +21 -0
  76. package/es/lowcode/engine/meta/fielduser.props.json +178 -0
  77. package/es/lowcode/engine/meta/fieldyear.props.default.json +17 -0
  78. package/es/lowcode/engine/meta/fieldyear.props.json +133 -0
  79. package/es/lowcode/engine/meta/form.props.default.json +60 -4
  80. package/es/lowcode/engine/meta/form.props.json +669 -0
  81. package/es/lowcode/engine/meta/iframe.props.default.json +10 -2
  82. package/es/lowcode/engine/meta/{components/iframe.json → iframe.props.json} +31 -30
  83. package/es/lowcode/engine/meta/image.props.default.json +18 -7
  84. package/es/lowcode/engine/meta/{components/image.json → image.props.json} +113 -112
  85. package/es/lowcode/engine/meta/imex.props.default.json +21 -3
  86. package/{lib/lowcode/engine/meta/components/imex.json → es/lowcode/engine/meta/imex.props.json} +113 -80
  87. package/es/lowcode/engine/meta/js-editor/auto-complete.json +253 -0
  88. package/es/lowcode/engine/meta/jsx.props.default.json +11 -1
  89. package/es/lowcode/engine/meta/jsx.props.json +30 -0
  90. package/es/lowcode/engine/meta/layout.props.default.json +15 -4
  91. package/{lib/lowcode/engine/meta/components/layout.json → es/lowcode/engine/meta/layout.props.json} +106 -106
  92. package/es/lowcode/engine/meta/link.props.default.json +16 -5
  93. package/{lib/lowcode/engine/meta/components/link.json → es/lowcode/engine/meta/link.props.json} +111 -110
  94. package/es/lowcode/engine/meta/page.props.default.json +12 -0
  95. package/es/lowcode/engine/meta/page.props.json +55 -0
  96. package/es/lowcode/engine/meta/pagecontent.props.default.json +6 -0
  97. package/es/lowcode/engine/meta/pagecontent.props.json +7 -0
  98. package/es/lowcode/engine/meta/pagefooter.props.default.json +6 -0
  99. package/es/lowcode/engine/meta/pagefooter.props.json +7 -0
  100. package/es/lowcode/engine/meta/pageheader.props.default.json +6 -0
  101. package/es/lowcode/engine/meta/pageheader.props.json +7 -0
  102. package/es/lowcode/engine/meta/pagelayout.props.default.json +16 -0
  103. package/es/lowcode/engine/meta/pagelayout.props.json +59 -0
  104. package/es/lowcode/engine/meta/section.props.default.json +17 -8
  105. package/es/lowcode/engine/meta/section.props.json +111 -0
  106. package/es/lowcode/engine/meta/split.props.default.json +17 -4
  107. package/es/lowcode/engine/meta/split.props.json +57 -0
  108. package/es/lowcode/engine/meta/table.props.default.json +50 -9
  109. package/es/lowcode/engine/meta/table.props.json +451 -0
  110. package/es/lowcode/engine/meta/tabs.props.default.json +24 -9
  111. package/es/lowcode/engine/meta/tabs.props.json +117 -0
  112. package/es/lowcode/engine/meta/text.props.default.json +14 -3
  113. package/es/lowcode/engine/meta/{components/text.json → text.props.json} +55 -64
  114. package/es/lowcode/engine/meta/tree.props.default.json +31 -8
  115. package/es/lowcode/engine/meta/tree.props.json +360 -0
  116. package/es/lowcode/engine/provider/ContextProvider/index.js +189 -0
  117. package/es/lowcode/engine/provider/ContextProvider/usePageVar.js +38 -0
  118. package/es/lowcode/engine/provider/EventBusProvider.js +2 -2
  119. package/es/lowcode/engine/provider/RemoteSourceProvider.js +232 -0
  120. package/es/lowcode/engine/tools/dataProcess.js +151 -8
  121. package/es/lowcode/engine/tools/diff.js +60 -0
  122. package/es/lowcode/engine/tools/helper.js +235 -0
  123. package/es/lowcode/engine/tools/useCanvasRender.js +81 -0
  124. package/es/lowcode/engine/tools/useCombinedRefs.js +14 -0
  125. package/es/lowcode/engine/tools/usePageDataStore.js +360 -0
  126. package/es/lowcode/engine/tools/usePromiseState.js +24 -0
  127. package/es/lowcode/engine/tools/useTodo.js +88 -0
  128. package/es/lowcode/index.js +1 -1
  129. package/es/lowcode/painter/Components.js +47 -21
  130. package/es/lowcode/painter/Design.js +66 -80
  131. package/es/lowcode/painter/DesignOperator.js +314 -0
  132. package/es/lowcode/painter/DesignToolbar.js +436 -0
  133. package/es/lowcode/painter/I18n.js +202 -2
  134. package/es/lowcode/painter/Outline.js +86 -70
  135. package/es/lowcode/painter/Panel.js +236 -2
  136. package/es/lowcode/painter/Ribbon.js +61 -55
  137. package/es/lowcode/painter/components/ActionBindModal.js +308 -0
  138. package/es/lowcode/painter/components/AdvancePanel.js +217 -0
  139. package/es/lowcode/painter/components/AttrsPanel.js +160 -0
  140. package/es/lowcode/painter/components/Collapse.js +101 -0
  141. package/es/lowcode/painter/components/ColorInput.js +127 -0
  142. package/es/lowcode/painter/components/DragDrop/DragDropContext.js +137 -0
  143. package/es/lowcode/painter/components/DragDrop/DragDropWrapper.js +50 -0
  144. package/es/lowcode/painter/components/DragDrop/Overlay.js +8 -0
  145. package/es/lowcode/painter/components/DragDrop/TreeDragDropWrapper.js +67 -0
  146. package/es/lowcode/painter/components/FieldSelector.js +57 -0
  147. package/es/lowcode/painter/components/ListEditor.js +104 -0
  148. package/es/lowcode/painter/components/NumberInput.js +148 -0
  149. package/es/lowcode/painter/components/PanelItem.js +83 -11
  150. package/es/lowcode/painter/components/PopConfirm.js +30 -0
  151. package/es/lowcode/painter/components/PopForm.js +71 -0
  152. package/es/lowcode/painter/components/PreviewIframe.js +19 -0
  153. package/es/lowcode/painter/components/RuleInput.js +9 -8
  154. package/es/lowcode/painter/components/SortBox.js +99 -0
  155. package/es/lowcode/painter/components/TreeEditor.js +13 -0
  156. package/es/lowcode/painter/components/code-editor/BaseEditor.js +111 -0
  157. package/es/lowcode/painter/components/code-editor/CssEditor.js +41 -0
  158. package/es/lowcode/painter/components/code-editor/FullScreenEditor.js +87 -0
  159. package/es/lowcode/painter/components/code-editor/JSEditor.js +147 -0
  160. package/es/lowcode/painter/components/code-editor/JsonEditor.js +41 -0
  161. package/es/lowcode/painter/components/code-editor/index.js +2 -0
  162. package/es/lowcode/painter/components/field-setting/BatchSetting.js +154 -0
  163. package/es/lowcode/painter/components/field-setting/CheckFrontRules.js +108 -0
  164. package/es/lowcode/painter/components/field-setting/CheckRules.js +101 -0
  165. package/es/lowcode/painter/components/field-setting/FieldAttrs.js +287 -0
  166. package/es/lowcode/painter/components/field-setting/FieldAttrsModal.js +288 -0
  167. package/es/lowcode/painter/components/field-setting/FieldDefaultValue.js +63 -0
  168. package/es/lowcode/painter/components/field-setting/FieldRulesModal.js +135 -0
  169. package/es/lowcode/painter/components/field-setting/SettingUI.js +518 -0
  170. package/es/lowcode/painter/components/field-setting/index.js +340 -0
  171. package/es/lowcode/painter/components/field-setting/meta/frontRules.js +53 -0
  172. package/es/lowcode/painter/index.js +8 -3
  173. package/es/lowcode/painter/panel-section/ActionsColumnWidth.js +25 -0
  174. package/es/lowcode/painter/panel-section/ActionsEditor/ActionEditor.js +101 -0
  175. package/es/lowcode/painter/panel-section/ActionsEditor/index.js +233 -0
  176. package/es/lowcode/painter/panel-section/BlockEditor/index.js +27 -0
  177. package/es/lowcode/painter/panel-section/BlocksEditor/BlockEditorItem.js +45 -0
  178. package/es/lowcode/painter/panel-section/BlocksEditor/index.js +229 -0
  179. package/es/lowcode/painter/panel-section/ButtonType.js +41 -0
  180. package/es/lowcode/painter/panel-section/ComponentSelector.js +36 -0
  181. package/es/lowcode/painter/panel-section/DataSetSelector.js +159 -0
  182. package/es/lowcode/painter/panel-section/FieldState.js +62 -0
  183. package/es/lowcode/painter/panel-section/FieldsSetting.js +346 -0
  184. package/es/lowcode/painter/panel-section/I18nInput.js +34 -0
  185. package/es/lowcode/painter/panel-section/Icon.js +48 -0
  186. package/es/lowcode/painter/panel-section/IconConditionSelector.js +111 -0
  187. package/es/lowcode/painter/panel-section/IconSelector.js +137 -0
  188. package/es/lowcode/painter/panel-section/ImpExp.js +185 -0
  189. package/es/lowcode/painter/panel-section/ImpExpAlone.js +124 -0
  190. package/es/lowcode/painter/panel-section/JSEditor.js +49 -0
  191. package/es/lowcode/painter/panel-section/LayoutRatio.js +61 -54
  192. package/es/lowcode/painter/panel-section/PageLayoutDisplay.js +112 -0
  193. package/es/lowcode/painter/panel-section/SerialsSelector.js +46 -0
  194. package/es/lowcode/painter/panel-section/SplitDisplay.js +164 -0
  195. package/es/lowcode/painter/panel-section/StylePanel/BackGround.js +61 -0
  196. package/es/lowcode/painter/panel-section/StylePanel/Border.js +150 -0
  197. package/es/lowcode/painter/panel-section/StylePanel/BorderRadius.js +87 -0
  198. package/es/lowcode/painter/panel-section/StylePanel/BorderRadiusSelector.js +66 -0
  199. package/es/lowcode/painter/panel-section/StylePanel/BorderSelector.js +66 -0
  200. package/es/lowcode/painter/panel-section/StylePanel/Display.js +296 -0
  201. package/es/lowcode/painter/panel-section/StylePanel/DisplaySvg.js +543 -0
  202. package/es/lowcode/painter/panel-section/StylePanel/Font.js +162 -0
  203. package/es/lowcode/painter/panel-section/StylePanel/FontEditor.js +386 -0
  204. package/es/lowcode/painter/panel-section/StylePanel/GapSelector.js +78 -0
  205. package/es/lowcode/painter/panel-section/StylePanel/HighLightPanel.js +23 -0
  206. package/es/lowcode/painter/panel-section/StylePanel/HighLigthtSpan.js +20 -0
  207. package/es/lowcode/painter/panel-section/StylePanel/HightLightSvg.js +23 -0
  208. package/es/lowcode/painter/panel-section/StylePanel/MainPanel.js +92 -0
  209. package/es/lowcode/painter/panel-section/StylePanel/Margin.js +60 -0
  210. package/es/lowcode/painter/panel-section/StylePanel/Opacity.js +50 -0
  211. package/es/lowcode/painter/panel-section/StylePanel/Padding.js +61 -0
  212. package/es/lowcode/painter/panel-section/StylePanel/Pointer.js +41 -0
  213. package/es/lowcode/painter/panel-section/StylePanel/Shadow.js +216 -0
  214. package/es/lowcode/painter/panel-section/StylePanel/Size.js +53 -0
  215. package/es/lowcode/painter/panel-section/StylePanel/StyleContext.js +207 -0
  216. package/es/lowcode/painter/panel-section/StylePanel/StyleRow.js +16 -0
  217. package/es/lowcode/painter/panel-section/StylePanel/WidthHeight.js +51 -0
  218. package/es/lowcode/painter/panel-section/StylePanel/index.js +35 -0
  219. package/es/lowcode/painter/panel-section/TabItems.js +223 -0
  220. package/es/lowcode/painter/panel-section/TableTopFilter.js +316 -0
  221. package/es/lowcode/painter/panel-section/TableZebra.js +74 -0
  222. package/es/lowcode/painter/panel-section/TreeRootEditor.js +86 -0
  223. package/es/lowcode/painter/panel-section/WidthHeight.js +39 -0
  224. package/es/lowcode/painter/services/I18n.js +85 -0
  225. package/es/lowcode/painter/style/action-bind-modal.less +102 -0
  226. package/es/lowcode/painter/style/actions-editor.less +16 -0
  227. package/es/lowcode/painter/style/border-editor.less +36 -0
  228. package/es/lowcode/painter/style/border-radius-selector.less +43 -0
  229. package/es/lowcode/painter/style/border-selector.less +40 -0
  230. package/es/lowcode/painter/style/button-type.less +5 -0
  231. package/es/lowcode/painter/style/collapse.less +28 -0
  232. package/es/lowcode/painter/style/color-input.less +19 -0
  233. package/es/lowcode/painter/style/components.less +5 -4
  234. package/es/lowcode/painter/style/design.less +128 -6
  235. package/es/lowcode/painter/style/display.less +17 -0
  236. package/es/lowcode/painter/style/dragdrop.less +10 -0
  237. package/es/lowcode/painter/style/fields-setting.less +25 -0
  238. package/es/lowcode/painter/style/font-editor.less +9 -0
  239. package/es/lowcode/painter/style/fullscreen-editor.less +17 -0
  240. package/es/lowcode/painter/style/icon-selector.less +22 -0
  241. package/es/lowcode/painter/style/icon.less +11 -0
  242. package/es/lowcode/painter/style/impexp.less +7 -0
  243. package/es/lowcode/painter/style/index.less +0 -1
  244. package/es/lowcode/painter/style/layout-ratio.less +1 -1
  245. package/es/lowcode/painter/style/list-editor.less +95 -0
  246. package/es/lowcode/painter/style/number-input.less +17 -0
  247. package/es/lowcode/painter/style/outline.less +2 -0
  248. package/es/lowcode/painter/style/page-layout-display.less +28 -0
  249. package/es/lowcode/painter/style/panel-attrs.less +43 -0
  250. package/es/lowcode/painter/style/panel-item.less +45 -12
  251. package/es/lowcode/painter/style/panel.less +93 -0
  252. package/es/lowcode/painter/style/pop-confirm.less +17 -0
  253. package/es/lowcode/painter/style/pop-form.less +20 -0
  254. package/es/lowcode/painter/style/ribbon.less +1 -0
  255. package/es/lowcode/painter/style/split-display.less +19 -0
  256. package/es/lowcode/painter/style/style-panel.less +37 -0
  257. package/es/lowcode/painter/style/tabitems.less +90 -0
  258. package/es/lowcode/painter/style/treedragdrop.less +19 -0
  259. package/es/lowcode/preview/index.js +27 -0
  260. package/es/lowcode/view/Canvas.js +57 -127
  261. package/es/lowcode/view/Loading.js +6 -2
  262. package/es/lowcode/view/Page.js +24 -35
  263. package/es/lowcode/view/errorBoundary.js +61 -0
  264. package/es/lowcode/view/index.js +5 -6
  265. package/es/lowcode/view/lc-components/Box/FunctionDesign.js +26 -0
  266. package/es/lowcode/view/lc-components/Box/FunctionLive.js +10 -0
  267. package/es/lowcode/view/lc-components/Box/FunctionPreview.js +10 -0
  268. package/es/lowcode/view/lc-components/Box/index.js +32 -6
  269. package/es/lowcode/view/lc-components/Box/index.less +14 -0
  270. package/es/lowcode/view/lc-components/Box/meta.json +40 -0
  271. package/es/lowcode/view/lc-components/Button/FunctionDesign.js +19 -0
  272. package/es/lowcode/view/lc-components/Button/FunctionLive.js +6 -0
  273. package/es/lowcode/view/lc-components/Button/FunctionPreview.js +6 -0
  274. package/es/lowcode/view/lc-components/Button/index.js +106 -19
  275. package/es/lowcode/view/lc-components/Button/meta.json +127 -0
  276. package/es/lowcode/view/lc-components/Button/style.less +3 -0
  277. package/es/lowcode/view/lc-components/CardList/FunctionDesign.js +10 -0
  278. package/es/lowcode/view/lc-components/CardList/FunctionLive.js +10 -0
  279. package/es/lowcode/view/lc-components/CardList/FunctionPreview.js +10 -0
  280. package/es/lowcode/view/lc-components/CardList/index.js +1 -0
  281. package/{lib/lowcode/engine/meta/components/table.json → es/lowcode/view/lc-components/CardList/meta.json} +24 -32
  282. package/es/lowcode/view/lc-components/Dialog/FunctionDesign.js +58 -0
  283. package/es/lowcode/view/lc-components/Dialog/FunctionLive.js +10 -0
  284. package/es/lowcode/view/lc-components/Dialog/FunctionPreview.js +10 -0
  285. package/es/lowcode/view/lc-components/Dialog/index.js +165 -29
  286. package/es/lowcode/view/lc-components/Dialog/index.less +7 -2
  287. package/es/lowcode/view/lc-components/Dialog/meta.json +150 -0
  288. package/es/lowcode/view/lc-components/Drawer/FunctionDesign.js +23 -0
  289. package/es/lowcode/view/lc-components/Drawer/FunctionLive.js +10 -0
  290. package/es/lowcode/view/lc-components/Drawer/FunctionPreview.js +10 -0
  291. package/es/lowcode/view/lc-components/Drawer/index.js +42 -9
  292. package/es/lowcode/view/lc-components/Drawer/index.less +10 -0
  293. package/es/lowcode/{engine/meta/components/drawer.json → view/lc-components/Drawer/meta.json} +11 -23
  294. package/es/lowcode/view/lc-components/FieldColor/meta.json +157 -0
  295. package/es/lowcode/view/lc-components/FieldComplex/meta.json +133 -0
  296. package/es/lowcode/view/lc-components/FieldDate/meta.json +139 -0
  297. package/es/lowcode/view/lc-components/FieldDict/meta.json +138 -0
  298. package/es/lowcode/view/lc-components/FieldEditor/meta.json +138 -0
  299. package/es/lowcode/view/lc-components/FieldGroup/meta.json +167 -0
  300. package/es/lowcode/view/lc-components/FieldNumber/meta.json +142 -0
  301. package/es/lowcode/view/lc-components/FieldRadio/meta.json +115 -0
  302. package/es/lowcode/view/lc-components/FieldRegion/meta.json +121 -0
  303. package/es/lowcode/view/lc-components/FieldSelect/meta.json +152 -0
  304. package/es/lowcode/view/lc-components/FieldString/meta.json +152 -0
  305. package/es/lowcode/view/lc-components/FieldSwitch/meta.json +125 -0
  306. package/es/lowcode/view/lc-components/FieldTextarea/meta.json +143 -0
  307. package/es/lowcode/view/lc-components/FieldUpload/meta.json +165 -0
  308. package/es/lowcode/view/lc-components/FieldUser/meta.json +176 -0
  309. package/es/lowcode/view/lc-components/FieldYear/meta.json +129 -0
  310. package/es/lowcode/view/lc-components/Form/FunctionDesign.js +100 -0
  311. package/es/lowcode/view/lc-components/Form/FunctionLive.js +10 -0
  312. package/es/lowcode/view/lc-components/Form/FunctionPreview.js +10 -0
  313. package/es/lowcode/view/lc-components/Form/index.js +577 -13
  314. package/es/lowcode/view/lc-components/Form/index.less +5 -0
  315. package/es/lowcode/view/lc-components/Form/meta.json +610 -0
  316. package/es/lowcode/view/lc-components/Iframe/FunctionDesign.js +10 -0
  317. package/es/lowcode/view/lc-components/Iframe/FunctionLive.js +10 -0
  318. package/es/lowcode/view/lc-components/Iframe/FunctionPreview.js +10 -0
  319. package/es/lowcode/view/lc-components/Iframe/index.js +1 -0
  320. package/es/lowcode/view/lc-components/Iframe/meta.json +32 -0
  321. package/es/lowcode/view/lc-components/ImEx/FunctionDesign.js +15 -0
  322. package/es/lowcode/view/lc-components/ImEx/FunctionLive.js +10 -0
  323. package/es/lowcode/view/lc-components/ImEx/FunctionPreview.js +10 -0
  324. package/es/lowcode/view/lc-components/ImEx/index.js +470 -10
  325. package/es/lowcode/view/lc-components/ImEx/index.less +7 -0
  326. package/es/lowcode/view/lc-components/ImEx/meta.json +114 -0
  327. package/es/lowcode/view/lc-components/Image/FunctionDesign.js +10 -0
  328. package/es/lowcode/view/lc-components/Image/FunctionLive.js +10 -0
  329. package/es/lowcode/view/lc-components/Image/FunctionPreview.js +10 -0
  330. package/es/lowcode/view/lc-components/Image/index.js +1 -0
  331. package/es/lowcode/view/lc-components/Image/meta.json +114 -0
  332. package/es/lowcode/view/lc-components/JSX/FunctionDesign.js +10 -0
  333. package/es/lowcode/view/lc-components/JSX/FunctionLive.js +10 -0
  334. package/es/lowcode/view/lc-components/JSX/FunctionPreview.js +10 -0
  335. package/es/lowcode/view/lc-components/JSX/RuntimeComp.js +44 -0
  336. package/es/lowcode/view/lc-components/JSX/index.js +18 -6
  337. package/es/lowcode/view/lc-components/JSX/meta.json +28 -0
  338. package/es/lowcode/view/lc-components/Layout/FunctionDesign.js +69 -0
  339. package/es/lowcode/view/lc-components/Layout/FunctionLive.js +10 -0
  340. package/es/lowcode/view/lc-components/Layout/FunctionPreview.js +10 -0
  341. package/es/lowcode/view/lc-components/Layout/index.js +43 -7
  342. package/es/lowcode/view/lc-components/Layout/index.less +5 -0
  343. package/es/lowcode/{engine/meta/components/layout.json → view/lc-components/Layout/meta.json} +8 -8
  344. package/es/lowcode/view/lc-components/Link/FunctionDesign.js +10 -0
  345. package/es/lowcode/view/lc-components/Link/FunctionLive.js +10 -0
  346. package/es/lowcode/view/lc-components/Link/FunctionPreview.js +10 -0
  347. package/es/lowcode/view/lc-components/Link/index.js +4 -0
  348. package/es/lowcode/view/lc-components/Link/meta.json +112 -0
  349. package/es/lowcode/view/lc-components/Page/meta.json +55 -0
  350. package/es/lowcode/view/lc-components/PageContent/index.js +55 -0
  351. package/es/lowcode/view/lc-components/PageContent/meta.json +9 -0
  352. package/es/lowcode/view/lc-components/PageFooter/index.js +38 -0
  353. package/es/lowcode/view/lc-components/PageFooter/meta.json +9 -0
  354. package/es/lowcode/view/lc-components/PageHeader/index.js +42 -0
  355. package/es/lowcode/view/lc-components/PageHeader/meta.json +9 -0
  356. package/es/lowcode/view/lc-components/PageLayout/FunctionDesign.js +68 -0
  357. package/es/lowcode/view/lc-components/PageLayout/FunctionLive.js +10 -0
  358. package/es/lowcode/view/lc-components/PageLayout/FunctionPreview.js +10 -0
  359. package/es/lowcode/view/lc-components/PageLayout/index.js +41 -0
  360. package/es/lowcode/view/lc-components/PageLayout/meta.json +59 -0
  361. package/es/lowcode/view/lc-components/PageModal/index.js +20 -0
  362. package/es/lowcode/view/lc-components/Section/FunctionDesign.js +32 -0
  363. package/es/lowcode/view/lc-components/Section/FunctionLive.js +10 -0
  364. package/es/lowcode/view/lc-components/Section/FunctionPreview.js +10 -0
  365. package/es/lowcode/view/lc-components/Section/index.js +118 -24
  366. package/es/lowcode/view/lc-components/Section/index.less +7 -0
  367. package/es/lowcode/view/lc-components/Section/meta.json +107 -0
  368. package/es/lowcode/view/lc-components/Split/FunctionDesign.js +63 -0
  369. package/es/lowcode/view/lc-components/Split/FunctionLive.js +10 -0
  370. package/es/lowcode/view/lc-components/Split/FunctionPreview.js +10 -0
  371. package/es/lowcode/view/lc-components/Split/index.js +45 -7
  372. package/es/lowcode/view/lc-components/Split/meta.json +53 -0
  373. package/es/lowcode/view/lc-components/Table/FunctionDesign.js +55 -0
  374. package/es/lowcode/view/lc-components/Table/FunctionLive.js +10 -0
  375. package/es/lowcode/view/lc-components/Table/FunctionPreview.js +10 -0
  376. package/es/lowcode/view/lc-components/Table/components/TopFilter.js +117 -0
  377. package/es/lowcode/view/lc-components/Table/components/TopImex.js +425 -0
  378. package/es/lowcode/view/lc-components/Table/index.js +792 -15
  379. package/es/lowcode/view/lc-components/Table/meta.json +451 -0
  380. package/es/lowcode/view/lc-components/Tabs/FunctionDesign.js +70 -0
  381. package/es/lowcode/view/lc-components/Tabs/FunctionLive.js +10 -0
  382. package/es/lowcode/view/lc-components/Tabs/FunctionPreview.js +10 -0
  383. package/es/lowcode/view/lc-components/Tabs/index.js +130 -12
  384. package/es/lowcode/view/lc-components/Tabs/meta.json +113 -0
  385. package/es/lowcode/view/lc-components/Text/FunctionDesign.js +10 -0
  386. package/es/lowcode/view/lc-components/Text/FunctionLive.js +10 -0
  387. package/es/lowcode/view/lc-components/Text/FunctionPreview.js +10 -0
  388. package/es/lowcode/view/lc-components/Text/index.js +40 -9
  389. package/{lib/lowcode/engine/meta/components/text.json → es/lowcode/view/lc-components/Text/meta.json} +10 -19
  390. package/es/lowcode/view/lc-components/Tree/FunctionDesign.js +68 -0
  391. package/es/lowcode/view/lc-components/Tree/FunctionLive.js +10 -0
  392. package/es/lowcode/view/lc-components/Tree/FunctionPreview.js +26 -0
  393. package/es/lowcode/view/lc-components/Tree/index.js +377 -8
  394. package/es/lowcode/view/lc-components/Tree/index.less +5 -0
  395. package/es/lowcode/view/lc-components/Tree/meta.json +357 -0
  396. package/es/lowcode/view/lc-components/Wrapper.js +46 -21
  397. package/es/lowcode/view/style/page.less +3 -1
  398. package/es/services.js +4 -43
  399. package/es/upload/FilesWall/file.png +0 -0
  400. package/es/upload/FilesWall/index.js +422 -0
  401. package/es/upload/FilesWall/index.less +74 -0
  402. package/es/upload/Form/gridForm.js +8 -19
  403. package/es/upload/Form/index.js +2 -12
  404. package/es/upload/FormItem/index.js +7 -8
  405. package/es/upload/index.js +2 -1
  406. package/es/utils/action.js +2 -2
  407. package/es/utils/form.js +19 -40
  408. package/es/utils/grid.js +17 -16
  409. package/lib/components/Builder/index.js +19 -23
  410. package/lib/components/ComplexItem/index.js +100 -0
  411. package/lib/components/ComplexItem/service.js +28 -0
  412. package/lib/components/IconFont/index.js +11 -0
  413. package/lib/components/LDActions/index.js +139 -0
  414. package/lib/components/LDActions/index.less +68 -0
  415. package/lib/components/LdAutoForm/index.js +58 -23
  416. package/lib/components/LdCom/index.js +2 -1
  417. package/lib/components/LdFormList/index.js +60 -37
  418. package/lib/components/LdGrid/index.js +48 -27
  419. package/lib/components/LdGridForm/index.js +39 -21
  420. package/lib/components/LdTree/index.js +184 -36
  421. package/lib/components/LdTree/index.less +6 -1
  422. package/lib/helper/FromItems.js +175 -92
  423. package/lib/helper/form.js +53 -19
  424. package/lib/helper/ldBuilder.js +29 -16
  425. package/lib/helper/ldComBuild.js +27 -12
  426. package/lib/helper/props_config.js +23 -0
  427. package/lib/index.js +8 -8
  428. package/lib/locales/zh-CN.js +242 -0
  429. package/lib/lowcode/constants/api-url.js +694 -2
  430. package/lib/lowcode/constants/event-topics.js +22 -2
  431. package/lib/lowcode/constants/index.js +33 -3
  432. package/lib/lowcode/engine/factory/panel-item-factory/CheckboxStrategy.js +38 -0
  433. package/lib/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +73 -0
  434. package/lib/lowcode/engine/factory/panel-item-factory/GroupStrategy.js +38 -0
  435. package/lib/lowcode/engine/factory/panel-item-factory/NumberStrategy.js +38 -0
  436. package/lib/lowcode/engine/factory/panel-item-factory/RadioStrategy.js +59 -0
  437. package/lib/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +38 -0
  438. package/lib/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +62 -0
  439. package/lib/lowcode/engine/factory/panel-item-factory/Strategy.js +27 -0
  440. package/lib/lowcode/engine/factory/panel-item-factory/StringStrategy.js +58 -0
  441. package/lib/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +51 -0
  442. package/lib/lowcode/engine/factory/panel-item-factory/index.js +54 -0
  443. package/lib/lowcode/engine/launcher.js +45 -0
  444. package/lib/lowcode/engine/meta/box.props.default.json +13 -0
  445. package/lib/lowcode/engine/meta/box.props.json +40 -0
  446. package/lib/lowcode/engine/meta/button.props.default.json +18 -7
  447. package/{es/lowcode/engine/meta/components/button.json → lib/lowcode/engine/meta/button.props.json} +126 -103
  448. package/lib/lowcode/engine/meta/cardlist.props.default.json +19 -9
  449. package/lib/lowcode/engine/meta/{components/card-list.json → cardlist.props.json} +152 -142
  450. package/lib/lowcode/engine/meta/components-list.json +235 -121
  451. package/lib/lowcode/engine/meta/dialog.props.default.json +27 -0
  452. package/lib/lowcode/engine/meta/dialog.props.json +157 -0
  453. package/lib/lowcode/engine/meta/drawer.props.default.json +19 -9
  454. package/lib/lowcode/engine/meta/drawer.props.json +131 -0
  455. package/lib/lowcode/engine/meta/fieldcolor.props.default.json +19 -0
  456. package/lib/lowcode/engine/meta/fieldcolor.props.json +159 -0
  457. package/lib/lowcode/engine/meta/fieldcomplex.props.default.json +18 -0
  458. package/lib/lowcode/engine/meta/fieldcomplex.props.json +135 -0
  459. package/lib/lowcode/engine/meta/fielddate.props.default.json +17 -0
  460. package/lib/lowcode/engine/meta/fielddate.props.json +143 -0
  461. package/lib/lowcode/engine/meta/fielddict.props.default.json +19 -0
  462. package/lib/lowcode/engine/meta/fielddict.props.json +140 -0
  463. package/lib/lowcode/engine/meta/fieldeditor.props.default.json +18 -0
  464. package/lib/lowcode/engine/meta/fieldeditor.props.json +140 -0
  465. package/lib/lowcode/engine/meta/fieldgroup.props.default.json +20 -0
  466. package/lib/lowcode/engine/meta/fieldgroup.props.json +169 -0
  467. package/lib/lowcode/engine/meta/fieldnumber.props.default.json +19 -0
  468. package/lib/lowcode/engine/meta/fieldnumber.props.json +144 -0
  469. package/lib/lowcode/engine/meta/fieldradio.props.default.json +17 -0
  470. package/lib/lowcode/engine/meta/fieldradio.props.json +117 -0
  471. package/lib/lowcode/engine/meta/fieldregion.props.default.json +17 -0
  472. package/lib/lowcode/engine/meta/fieldregion.props.json +123 -0
  473. package/lib/lowcode/engine/meta/fieldselect.props.default.json +19 -0
  474. package/lib/lowcode/engine/meta/fieldselect.props.json +154 -0
  475. package/lib/lowcode/engine/meta/fieldstring.props.default.json +17 -0
  476. package/lib/lowcode/engine/meta/fieldstring.props.json +154 -0
  477. package/lib/lowcode/engine/meta/fieldswitch.props.default.json +17 -0
  478. package/lib/lowcode/engine/meta/fieldswitch.props.json +127 -0
  479. package/lib/lowcode/engine/meta/fieldtextarea.props.default.json +18 -0
  480. package/lib/lowcode/engine/meta/fieldtextarea.props.json +145 -0
  481. package/lib/lowcode/engine/meta/fieldupload.props.default.json +20 -0
  482. package/lib/lowcode/engine/meta/fieldupload.props.json +167 -0
  483. package/lib/lowcode/engine/meta/fielduser.props.default.json +21 -0
  484. package/lib/lowcode/engine/meta/fielduser.props.json +178 -0
  485. package/lib/lowcode/engine/meta/fieldyear.props.default.json +17 -0
  486. package/lib/lowcode/engine/meta/fieldyear.props.json +133 -0
  487. package/lib/lowcode/engine/meta/form.props.default.json +60 -4
  488. package/lib/lowcode/engine/meta/form.props.json +669 -0
  489. package/lib/lowcode/engine/meta/iframe.props.default.json +10 -2
  490. package/lib/lowcode/engine/meta/{components/iframe.json → iframe.props.json} +31 -30
  491. package/lib/lowcode/engine/meta/image.props.default.json +18 -7
  492. package/lib/lowcode/engine/meta/{components/image.json → image.props.json} +113 -112
  493. package/lib/lowcode/engine/meta/imex.props.default.json +21 -3
  494. package/{es/lowcode/engine/meta/components/imex.json → lib/lowcode/engine/meta/imex.props.json} +113 -80
  495. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +253 -0
  496. package/lib/lowcode/engine/meta/jsx.props.default.json +11 -1
  497. package/lib/lowcode/engine/meta/jsx.props.json +30 -0
  498. package/lib/lowcode/engine/meta/layout.props.default.json +15 -4
  499. package/lib/lowcode/engine/meta/layout.props.json +107 -0
  500. package/lib/lowcode/engine/meta/link.props.default.json +16 -5
  501. package/{es/lowcode/engine/meta/components/link.json → lib/lowcode/engine/meta/link.props.json} +111 -110
  502. package/lib/lowcode/engine/meta/page.props.default.json +12 -0
  503. package/lib/lowcode/engine/meta/page.props.json +55 -0
  504. package/lib/lowcode/engine/meta/pagecontent.props.default.json +6 -0
  505. package/lib/lowcode/engine/meta/pagecontent.props.json +7 -0
  506. package/lib/lowcode/engine/meta/pagefooter.props.default.json +6 -0
  507. package/lib/lowcode/engine/meta/pagefooter.props.json +7 -0
  508. package/lib/lowcode/engine/meta/pageheader.props.default.json +6 -0
  509. package/lib/lowcode/engine/meta/pageheader.props.json +7 -0
  510. package/lib/lowcode/engine/meta/pagelayout.props.default.json +16 -0
  511. package/lib/lowcode/engine/meta/pagelayout.props.json +59 -0
  512. package/lib/lowcode/engine/meta/section.props.default.json +17 -8
  513. package/lib/lowcode/engine/meta/section.props.json +111 -0
  514. package/lib/lowcode/engine/meta/split.props.default.json +17 -4
  515. package/lib/lowcode/engine/meta/split.props.json +57 -0
  516. package/lib/lowcode/engine/meta/table.props.default.json +50 -9
  517. package/lib/lowcode/engine/meta/table.props.json +451 -0
  518. package/lib/lowcode/engine/meta/tabs.props.default.json +24 -9
  519. package/lib/lowcode/engine/meta/tabs.props.json +117 -0
  520. package/lib/lowcode/engine/meta/text.props.default.json +14 -3
  521. package/lib/lowcode/engine/meta/text.props.json +56 -0
  522. package/lib/lowcode/engine/meta/tree.props.default.json +31 -8
  523. package/lib/lowcode/engine/meta/tree.props.json +360 -0
  524. package/lib/lowcode/engine/provider/ContextProvider/index.js +212 -0
  525. package/lib/lowcode/engine/provider/ContextProvider/usePageVar.js +45 -0
  526. package/lib/lowcode/engine/provider/EventBusProvider.js +2 -2
  527. package/lib/lowcode/engine/provider/RemoteSourceProvider.js +240 -0
  528. package/lib/lowcode/engine/tools/dataProcess.js +153 -8
  529. package/lib/lowcode/engine/tools/diff.js +67 -0
  530. package/lib/lowcode/engine/tools/helper.js +247 -0
  531. package/lib/lowcode/engine/tools/useCanvasRender.js +96 -0
  532. package/lib/lowcode/engine/tools/useCombinedRefs.js +20 -0
  533. package/lib/lowcode/engine/tools/usePageDataStore.js +367 -0
  534. package/lib/lowcode/engine/tools/usePromiseState.js +31 -0
  535. package/lib/lowcode/engine/tools/useTodo.js +95 -0
  536. package/lib/lowcode/index.js +8 -1
  537. package/lib/lowcode/painter/Components.js +46 -20
  538. package/lib/lowcode/painter/Design.js +64 -78
  539. package/lib/lowcode/painter/DesignOperator.js +321 -0
  540. package/lib/lowcode/painter/DesignToolbar.js +444 -0
  541. package/lib/lowcode/painter/I18n.js +203 -2
  542. package/lib/lowcode/painter/Outline.js +82 -66
  543. package/lib/lowcode/painter/Panel.js +236 -2
  544. package/lib/lowcode/painter/Ribbon.js +63 -64
  545. package/lib/lowcode/painter/components/ActionBindModal.js +315 -0
  546. package/lib/lowcode/painter/components/AdvancePanel.js +225 -0
  547. package/lib/lowcode/painter/components/AttrsPanel.js +168 -0
  548. package/lib/lowcode/painter/components/Collapse.js +108 -0
  549. package/lib/lowcode/painter/components/ColorInput.js +134 -0
  550. package/lib/lowcode/painter/components/DragDrop/DragDropContext.js +146 -0
  551. package/lib/lowcode/painter/components/DragDrop/DragDropWrapper.js +57 -0
  552. package/lib/lowcode/painter/components/DragDrop/Overlay.js +15 -0
  553. package/lib/lowcode/painter/components/DragDrop/TreeDragDropWrapper.js +75 -0
  554. package/lib/lowcode/painter/components/FieldSelector.js +65 -0
  555. package/lib/lowcode/painter/components/ListEditor.js +110 -0
  556. package/lib/lowcode/painter/components/NumberInput.js +155 -0
  557. package/lib/lowcode/painter/components/PanelItem.js +84 -11
  558. package/lib/lowcode/painter/components/PopConfirm.js +36 -0
  559. package/lib/lowcode/painter/components/PopForm.js +77 -0
  560. package/lib/lowcode/painter/components/PreviewIframe.js +26 -0
  561. package/lib/lowcode/painter/components/RuleInput.js +9 -8
  562. package/lib/lowcode/painter/components/SortBox.js +106 -0
  563. package/lib/lowcode/painter/components/TreeEditor.js +20 -0
  564. package/lib/lowcode/painter/components/code-editor/BaseEditor.js +118 -0
  565. package/lib/lowcode/painter/components/code-editor/CssEditor.js +48 -0
  566. package/lib/lowcode/painter/components/code-editor/FullScreenEditor.js +94 -0
  567. package/lib/lowcode/painter/components/code-editor/JSEditor.js +158 -0
  568. package/lib/lowcode/painter/components/code-editor/JsonEditor.js +48 -0
  569. package/lib/lowcode/painter/components/code-editor/index.js +20 -0
  570. package/lib/lowcode/painter/components/field-setting/BatchSetting.js +161 -0
  571. package/lib/lowcode/painter/components/field-setting/CheckFrontRules.js +116 -0
  572. package/lib/lowcode/painter/components/field-setting/CheckRules.js +108 -0
  573. package/lib/lowcode/painter/components/field-setting/FieldAttrs.js +295 -0
  574. package/lib/lowcode/painter/components/field-setting/FieldAttrsModal.js +296 -0
  575. package/lib/lowcode/painter/components/field-setting/FieldDefaultValue.js +70 -0
  576. package/lib/lowcode/painter/components/field-setting/FieldRulesModal.js +143 -0
  577. package/lib/lowcode/painter/components/field-setting/SettingUI.js +526 -0
  578. package/lib/lowcode/painter/components/field-setting/index.js +347 -0
  579. package/lib/lowcode/painter/components/field-setting/meta/frontRules.js +59 -0
  580. package/lib/lowcode/painter/index.js +8 -3
  581. package/lib/lowcode/painter/panel-section/ActionsColumnWidth.js +32 -0
  582. package/lib/lowcode/painter/panel-section/ActionsEditor/ActionEditor.js +109 -0
  583. package/lib/lowcode/painter/panel-section/ActionsEditor/index.js +241 -0
  584. package/lib/lowcode/painter/panel-section/BlockEditor/index.js +34 -0
  585. package/lib/lowcode/painter/panel-section/BlocksEditor/BlockEditorItem.js +52 -0
  586. package/lib/lowcode/painter/panel-section/BlocksEditor/index.js +236 -0
  587. package/lib/lowcode/painter/panel-section/ButtonType.js +48 -0
  588. package/lib/lowcode/painter/panel-section/ComponentSelector.js +43 -0
  589. package/lib/lowcode/painter/panel-section/DataSetSelector.js +167 -0
  590. package/lib/lowcode/painter/panel-section/FieldState.js +70 -0
  591. package/lib/lowcode/painter/panel-section/FieldsSetting.js +354 -0
  592. package/lib/lowcode/painter/panel-section/I18nInput.js +41 -0
  593. package/lib/lowcode/painter/panel-section/Icon.js +56 -0
  594. package/lib/lowcode/painter/panel-section/IconConditionSelector.js +119 -0
  595. package/lib/lowcode/painter/panel-section/IconSelector.js +144 -0
  596. package/lib/lowcode/painter/panel-section/ImpExp.js +193 -0
  597. package/lib/lowcode/painter/panel-section/ImpExpAlone.js +130 -0
  598. package/lib/lowcode/painter/panel-section/JSEditor.js +57 -0
  599. package/lib/lowcode/painter/panel-section/LayoutRatio.js +60 -53
  600. package/lib/lowcode/painter/panel-section/PageLayoutDisplay.js +120 -0
  601. package/lib/lowcode/painter/panel-section/SerialsSelector.js +53 -0
  602. package/lib/lowcode/painter/panel-section/SplitDisplay.js +172 -0
  603. package/lib/lowcode/painter/panel-section/StylePanel/BackGround.js +68 -0
  604. package/lib/lowcode/painter/panel-section/StylePanel/Border.js +158 -0
  605. package/lib/lowcode/painter/panel-section/StylePanel/BorderRadius.js +95 -0
  606. package/lib/lowcode/painter/panel-section/StylePanel/BorderRadiusSelector.js +73 -0
  607. package/lib/lowcode/painter/panel-section/StylePanel/BorderSelector.js +73 -0
  608. package/lib/lowcode/painter/panel-section/StylePanel/Display.js +303 -0
  609. package/lib/lowcode/painter/panel-section/StylePanel/DisplaySvg.js +550 -0
  610. package/lib/lowcode/painter/panel-section/StylePanel/Font.js +170 -0
  611. package/lib/lowcode/painter/panel-section/StylePanel/FontEditor.js +392 -0
  612. package/lib/lowcode/painter/panel-section/StylePanel/GapSelector.js +85 -0
  613. package/lib/lowcode/painter/panel-section/StylePanel/HighLightPanel.js +29 -0
  614. package/lib/lowcode/painter/panel-section/StylePanel/HighLigthtSpan.js +26 -0
  615. package/lib/lowcode/painter/panel-section/StylePanel/HightLightSvg.js +29 -0
  616. package/lib/lowcode/painter/panel-section/StylePanel/MainPanel.js +99 -0
  617. package/lib/lowcode/painter/panel-section/StylePanel/Margin.js +67 -0
  618. package/lib/lowcode/painter/panel-section/StylePanel/Opacity.js +57 -0
  619. package/lib/lowcode/painter/panel-section/StylePanel/Padding.js +68 -0
  620. package/lib/lowcode/painter/panel-section/StylePanel/Pointer.js +48 -0
  621. package/lib/lowcode/painter/panel-section/StylePanel/Shadow.js +224 -0
  622. package/lib/lowcode/painter/panel-section/StylePanel/Size.js +59 -0
  623. package/lib/lowcode/painter/panel-section/StylePanel/StyleContext.js +218 -0
  624. package/lib/lowcode/painter/panel-section/StylePanel/StyleRow.js +22 -0
  625. package/lib/lowcode/painter/panel-section/StylePanel/WidthHeight.js +58 -0
  626. package/lib/lowcode/painter/panel-section/StylePanel/index.js +41 -0
  627. package/lib/lowcode/painter/panel-section/TabItems.js +231 -0
  628. package/lib/lowcode/painter/panel-section/TableTopFilter.js +324 -0
  629. package/lib/lowcode/painter/panel-section/TableZebra.js +82 -0
  630. package/lib/lowcode/painter/panel-section/TreeRootEditor.js +94 -0
  631. package/lib/lowcode/painter/panel-section/WidthHeight.js +46 -0
  632. package/lib/lowcode/painter/services/I18n.js +95 -0
  633. package/lib/lowcode/painter/style/action-bind-modal.less +102 -0
  634. package/lib/lowcode/painter/style/actions-editor.less +16 -0
  635. package/lib/lowcode/painter/style/border-editor.less +36 -0
  636. package/lib/lowcode/painter/style/border-radius-selector.less +43 -0
  637. package/lib/lowcode/painter/style/border-selector.less +40 -0
  638. package/lib/lowcode/painter/style/button-type.less +5 -0
  639. package/lib/lowcode/painter/style/collapse.less +28 -0
  640. package/lib/lowcode/painter/style/color-input.less +19 -0
  641. package/lib/lowcode/painter/style/components.less +5 -4
  642. package/lib/lowcode/painter/style/design.less +128 -6
  643. package/lib/lowcode/painter/style/display.less +17 -0
  644. package/lib/lowcode/painter/style/dragdrop.less +10 -0
  645. package/lib/lowcode/painter/style/fields-setting.less +25 -0
  646. package/lib/lowcode/painter/style/font-editor.less +9 -0
  647. package/lib/lowcode/painter/style/fullscreen-editor.less +17 -0
  648. package/lib/lowcode/painter/style/icon-selector.less +22 -0
  649. package/lib/lowcode/painter/style/icon.less +11 -0
  650. package/lib/lowcode/painter/style/impexp.less +7 -0
  651. package/lib/lowcode/painter/style/index.less +0 -1
  652. package/lib/lowcode/painter/style/layout-ratio.less +1 -1
  653. package/lib/lowcode/painter/style/list-editor.less +95 -0
  654. package/lib/lowcode/painter/style/number-input.less +17 -0
  655. package/lib/lowcode/painter/style/outline.less +2 -0
  656. package/lib/lowcode/painter/style/page-layout-display.less +28 -0
  657. package/lib/lowcode/painter/style/panel-attrs.less +43 -0
  658. package/lib/lowcode/painter/style/panel-item.less +45 -12
  659. package/lib/lowcode/painter/style/panel.less +93 -0
  660. package/lib/lowcode/painter/style/pop-confirm.less +17 -0
  661. package/lib/lowcode/painter/style/pop-form.less +20 -0
  662. package/lib/lowcode/painter/style/ribbon.less +1 -0
  663. package/lib/lowcode/painter/style/split-display.less +19 -0
  664. package/lib/lowcode/painter/style/style-panel.less +37 -0
  665. package/lib/lowcode/painter/style/tabitems.less +90 -0
  666. package/lib/lowcode/painter/style/treedragdrop.less +19 -0
  667. package/lib/lowcode/preview/index.js +35 -0
  668. package/lib/lowcode/view/Canvas.js +56 -133
  669. package/lib/lowcode/view/Loading.js +6 -2
  670. package/lib/lowcode/view/Page.js +20 -31
  671. package/lib/lowcode/view/errorBoundary.js +69 -0
  672. package/lib/lowcode/view/index.js +5 -6
  673. package/lib/lowcode/view/lc-components/Box/FunctionDesign.js +33 -0
  674. package/lib/lowcode/view/lc-components/Box/FunctionLive.js +17 -0
  675. package/lib/lowcode/view/lc-components/Box/FunctionPreview.js +17 -0
  676. package/lib/lowcode/view/lc-components/Box/index.js +33 -7
  677. package/lib/lowcode/view/lc-components/Box/index.less +14 -0
  678. package/lib/lowcode/view/lc-components/Box/meta.json +40 -0
  679. package/lib/lowcode/view/lc-components/Button/FunctionDesign.js +26 -0
  680. package/lib/lowcode/view/lc-components/Button/FunctionLive.js +13 -0
  681. package/lib/lowcode/view/lc-components/Button/FunctionPreview.js +13 -0
  682. package/lib/lowcode/view/lc-components/Button/index.js +105 -18
  683. package/lib/lowcode/view/lc-components/Button/meta.json +127 -0
  684. package/lib/lowcode/view/lc-components/Button/style.less +3 -0
  685. package/lib/lowcode/view/lc-components/CardList/FunctionDesign.js +17 -0
  686. package/lib/lowcode/view/lc-components/CardList/FunctionLive.js +17 -0
  687. package/lib/lowcode/view/lc-components/CardList/FunctionPreview.js +17 -0
  688. package/lib/lowcode/view/lc-components/CardList/index.js +1 -0
  689. package/{es/lowcode/engine/meta/components/table.json → lib/lowcode/view/lc-components/CardList/meta.json} +24 -32
  690. package/lib/lowcode/view/lc-components/Dialog/FunctionDesign.js +66 -0
  691. package/lib/lowcode/view/lc-components/Dialog/FunctionLive.js +17 -0
  692. package/lib/lowcode/view/lc-components/Dialog/FunctionPreview.js +17 -0
  693. package/lib/lowcode/view/lc-components/Dialog/index.js +163 -27
  694. package/lib/lowcode/view/lc-components/Dialog/index.less +7 -2
  695. package/lib/lowcode/view/lc-components/Dialog/meta.json +150 -0
  696. package/lib/lowcode/view/lc-components/Drawer/FunctionDesign.js +30 -0
  697. package/lib/lowcode/view/lc-components/Drawer/FunctionLive.js +17 -0
  698. package/lib/lowcode/view/lc-components/Drawer/FunctionPreview.js +17 -0
  699. package/lib/lowcode/view/lc-components/Drawer/index.js +42 -9
  700. package/lib/lowcode/view/lc-components/Drawer/index.less +10 -0
  701. package/lib/lowcode/view/lc-components/Drawer/meta.json +131 -0
  702. package/lib/lowcode/view/lc-components/FieldColor/meta.json +157 -0
  703. package/lib/lowcode/view/lc-components/FieldComplex/meta.json +133 -0
  704. package/lib/lowcode/view/lc-components/FieldDate/meta.json +139 -0
  705. package/lib/lowcode/view/lc-components/FieldDict/meta.json +138 -0
  706. package/lib/lowcode/view/lc-components/FieldEditor/meta.json +138 -0
  707. package/lib/lowcode/view/lc-components/FieldGroup/meta.json +167 -0
  708. package/lib/lowcode/view/lc-components/FieldNumber/meta.json +142 -0
  709. package/lib/lowcode/view/lc-components/FieldRadio/meta.json +115 -0
  710. package/lib/lowcode/view/lc-components/FieldRegion/meta.json +121 -0
  711. package/lib/lowcode/view/lc-components/FieldSelect/meta.json +152 -0
  712. package/lib/lowcode/view/lc-components/FieldString/meta.json +152 -0
  713. package/lib/lowcode/view/lc-components/FieldSwitch/meta.json +125 -0
  714. package/lib/lowcode/view/lc-components/FieldTextarea/meta.json +143 -0
  715. package/lib/lowcode/view/lc-components/FieldUpload/meta.json +165 -0
  716. package/lib/lowcode/view/lc-components/FieldUser/meta.json +176 -0
  717. package/lib/lowcode/view/lc-components/FieldYear/meta.json +129 -0
  718. package/lib/lowcode/view/lc-components/Form/FunctionDesign.js +107 -0
  719. package/lib/lowcode/view/lc-components/Form/FunctionLive.js +17 -0
  720. package/lib/lowcode/view/lc-components/Form/FunctionPreview.js +17 -0
  721. package/lib/lowcode/view/lc-components/Form/index.js +575 -11
  722. package/lib/lowcode/view/lc-components/Form/index.less +5 -0
  723. package/lib/lowcode/view/lc-components/Form/meta.json +610 -0
  724. package/lib/lowcode/view/lc-components/Iframe/FunctionDesign.js +17 -0
  725. package/lib/lowcode/view/lc-components/Iframe/FunctionLive.js +17 -0
  726. package/lib/lowcode/view/lc-components/Iframe/FunctionPreview.js +17 -0
  727. package/lib/lowcode/view/lc-components/Iframe/index.js +1 -0
  728. package/lib/lowcode/view/lc-components/Iframe/meta.json +32 -0
  729. package/lib/lowcode/view/lc-components/ImEx/FunctionDesign.js +22 -0
  730. package/lib/lowcode/view/lc-components/ImEx/FunctionLive.js +17 -0
  731. package/lib/lowcode/view/lc-components/ImEx/FunctionPreview.js +17 -0
  732. package/lib/lowcode/view/lc-components/ImEx/index.js +468 -8
  733. package/lib/lowcode/view/lc-components/ImEx/index.less +7 -0
  734. package/lib/lowcode/view/lc-components/ImEx/meta.json +114 -0
  735. package/lib/lowcode/view/lc-components/Image/FunctionDesign.js +17 -0
  736. package/lib/lowcode/view/lc-components/Image/FunctionLive.js +17 -0
  737. package/lib/lowcode/view/lc-components/Image/FunctionPreview.js +17 -0
  738. package/lib/lowcode/view/lc-components/Image/index.js +1 -0
  739. package/lib/lowcode/view/lc-components/Image/meta.json +114 -0
  740. package/lib/lowcode/view/lc-components/JSX/FunctionDesign.js +17 -0
  741. package/lib/lowcode/view/lc-components/JSX/FunctionLive.js +17 -0
  742. package/lib/lowcode/view/lc-components/JSX/FunctionPreview.js +17 -0
  743. package/lib/lowcode/view/lc-components/JSX/RuntimeComp.js +51 -0
  744. package/lib/lowcode/view/lc-components/JSX/index.js +18 -6
  745. package/lib/lowcode/view/lc-components/JSX/meta.json +28 -0
  746. package/lib/lowcode/view/lc-components/Layout/FunctionDesign.js +77 -0
  747. package/lib/lowcode/view/lc-components/Layout/FunctionLive.js +17 -0
  748. package/lib/lowcode/view/lc-components/Layout/FunctionPreview.js +17 -0
  749. package/lib/lowcode/view/lc-components/Layout/index.js +44 -8
  750. package/lib/lowcode/view/lc-components/Layout/index.less +5 -0
  751. package/lib/lowcode/view/lc-components/Layout/meta.json +107 -0
  752. package/lib/lowcode/view/lc-components/Link/FunctionDesign.js +17 -0
  753. package/lib/lowcode/view/lc-components/Link/FunctionLive.js +17 -0
  754. package/lib/lowcode/view/lc-components/Link/FunctionPreview.js +17 -0
  755. package/lib/lowcode/view/lc-components/Link/index.js +4 -0
  756. package/lib/lowcode/view/lc-components/Link/meta.json +112 -0
  757. package/lib/lowcode/view/lc-components/Page/meta.json +55 -0
  758. package/lib/lowcode/view/lc-components/PageContent/index.js +63 -0
  759. package/lib/lowcode/view/lc-components/PageContent/meta.json +9 -0
  760. package/lib/lowcode/view/lc-components/PageFooter/index.js +46 -0
  761. package/lib/lowcode/view/lc-components/PageFooter/meta.json +9 -0
  762. package/lib/lowcode/view/lc-components/PageHeader/index.js +50 -0
  763. package/lib/lowcode/view/lc-components/PageHeader/meta.json +9 -0
  764. package/lib/lowcode/view/lc-components/PageLayout/FunctionDesign.js +76 -0
  765. package/lib/lowcode/view/lc-components/PageLayout/FunctionLive.js +17 -0
  766. package/lib/lowcode/view/lc-components/PageLayout/FunctionPreview.js +17 -0
  767. package/lib/lowcode/view/lc-components/PageLayout/index.js +49 -0
  768. package/lib/lowcode/view/lc-components/PageLayout/meta.json +59 -0
  769. package/lib/lowcode/view/lc-components/PageModal/index.js +27 -0
  770. package/lib/lowcode/view/lc-components/Section/FunctionDesign.js +39 -0
  771. package/lib/lowcode/view/lc-components/Section/FunctionLive.js +17 -0
  772. package/lib/lowcode/view/lc-components/Section/FunctionPreview.js +17 -0
  773. package/lib/lowcode/view/lc-components/Section/index.js +117 -23
  774. package/lib/lowcode/view/lc-components/Section/index.less +7 -0
  775. package/lib/lowcode/view/lc-components/Section/meta.json +107 -0
  776. package/lib/lowcode/view/lc-components/Split/FunctionDesign.js +71 -0
  777. package/lib/lowcode/view/lc-components/Split/FunctionLive.js +17 -0
  778. package/lib/lowcode/view/lc-components/Split/FunctionPreview.js +17 -0
  779. package/lib/lowcode/view/lc-components/Split/index.js +44 -6
  780. package/lib/lowcode/view/lc-components/Split/meta.json +53 -0
  781. package/lib/lowcode/view/lc-components/Table/FunctionDesign.js +63 -0
  782. package/lib/lowcode/view/lc-components/Table/FunctionLive.js +17 -0
  783. package/lib/lowcode/view/lc-components/Table/FunctionPreview.js +17 -0
  784. package/lib/lowcode/view/lc-components/Table/components/TopFilter.js +124 -0
  785. package/lib/lowcode/view/lc-components/Table/components/TopImex.js +433 -0
  786. package/lib/lowcode/view/lc-components/Table/index.js +791 -14
  787. package/lib/lowcode/view/lc-components/Table/meta.json +451 -0
  788. package/lib/lowcode/view/lc-components/Tabs/FunctionDesign.js +78 -0
  789. package/lib/lowcode/view/lc-components/Tabs/FunctionLive.js +17 -0
  790. package/lib/lowcode/view/lc-components/Tabs/FunctionPreview.js +17 -0
  791. package/lib/lowcode/view/lc-components/Tabs/index.js +129 -11
  792. package/lib/lowcode/view/lc-components/Tabs/meta.json +113 -0
  793. package/lib/lowcode/view/lc-components/Text/FunctionDesign.js +17 -0
  794. package/lib/lowcode/view/lc-components/Text/FunctionLive.js +17 -0
  795. package/lib/lowcode/view/lc-components/Text/FunctionPreview.js +17 -0
  796. package/lib/lowcode/view/lc-components/Text/index.js +39 -8
  797. package/lib/lowcode/view/lc-components/Text/meta.json +56 -0
  798. package/lib/lowcode/view/lc-components/Tree/FunctionDesign.js +76 -0
  799. package/lib/lowcode/view/lc-components/Tree/FunctionLive.js +17 -0
  800. package/lib/lowcode/view/lc-components/Tree/FunctionPreview.js +33 -0
  801. package/lib/lowcode/view/lc-components/Tree/index.js +375 -6
  802. package/lib/lowcode/view/lc-components/Tree/index.less +5 -0
  803. package/lib/lowcode/view/lc-components/Tree/meta.json +357 -0
  804. package/lib/lowcode/view/lc-components/Wrapper.js +43 -18
  805. package/lib/lowcode/view/style/page.less +3 -1
  806. package/lib/services.js +4 -45
  807. package/lib/upload/FilesWall/file.png +0 -0
  808. package/lib/upload/FilesWall/index.js +429 -0
  809. package/lib/upload/FilesWall/index.less +74 -0
  810. package/lib/upload/Form/gridForm.js +8 -19
  811. package/lib/upload/Form/index.js +2 -12
  812. package/lib/upload/FormItem/index.js +7 -8
  813. package/lib/upload/index.js +8 -1
  814. package/lib/utils/action.js +2 -2
  815. package/lib/utils/form.js +19 -41
  816. package/lib/utils/grid.js +16 -15
  817. package/package.json +30 -12
  818. package/es/components/LdRuntimeCom/index.js +0 -42
  819. package/es/lowcode/engine/meta/components/form.json +0 -116
  820. package/es/lowcode/engine/meta/components/jsx.json +0 -24
  821. package/es/lowcode/engine/meta/components/modal.json +0 -120
  822. package/es/lowcode/engine/meta/components/section.json +0 -107
  823. package/es/lowcode/engine/meta/components/split.json +0 -71
  824. package/es/lowcode/engine/meta/components/tabs.json +0 -140
  825. package/es/lowcode/engine/meta/components/tree.json +0 -156
  826. package/es/lowcode/engine/meta/modal.props.default.json +0 -11
  827. package/es/lowcode/engine/provider/ContextProvider.js +0 -164
  828. package/es/lowcode/engine/tools/lcid.js +0 -16
  829. package/es/lowcode/painter/panel-section/Radio.js +0 -58
  830. package/lib/components/LdRuntimeCom/index.js +0 -49
  831. package/lib/lowcode/engine/meta/components/form.json +0 -116
  832. package/lib/lowcode/engine/meta/components/jsx.json +0 -24
  833. package/lib/lowcode/engine/meta/components/modal.json +0 -120
  834. package/lib/lowcode/engine/meta/components/section.json +0 -107
  835. package/lib/lowcode/engine/meta/components/split.json +0 -71
  836. package/lib/lowcode/engine/meta/components/tabs.json +0 -140
  837. package/lib/lowcode/engine/meta/components/tree.json +0 -156
  838. package/lib/lowcode/engine/meta/modal.props.default.json +0 -11
  839. package/lib/lowcode/engine/provider/ContextProvider.js +0 -172
  840. package/lib/lowcode/engine/tools/lcid.js +0 -22
  841. package/lib/lowcode/painter/panel-section/Radio.js +0 -65
@@ -0,0 +1,148 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
+ var _excluded = ["value", "options", "onChange", "defaultValue", "allowNull", "convertInt"];
5
+ import React, { useState } from 'react';
6
+ import { useUpdateEffect } from 'ahooks';
7
+ import styles from "../style/number-input.less";
8
+ import { InputNumber, Dropdown, Menu } from 'luck-design/antd';
9
+ import { isNil } from 'lodash';
10
+
11
+ /**
12
+ * NumberInput 组件是一个带单位选择的数字输入框组件,允许用户输入一个数值并从预定义的选项中选择一个单位。
13
+ * 它支持默认值、空值、自动类型转换以及自定义更改处理逻辑。
14
+ * 组件内部通过 Dropdown 组件提供一个单位的下拉选择菜单,并通过 InputNumber 接收数值输入。
15
+ * 该组件也支持将输入值转换为整数或保持为原始格式,并允许通过 options 定制可选单位。
16
+ *
17
+ * @component
18
+ * @example
19
+ * const options = [{ value: 'px', label: '像素' }, { value: '%', label: '百分比' }];
20
+ * <NumberInput
21
+ * value={100}
22
+ * options={options}
23
+ * onChange={(newValue) => console.log('New value:', newValue)}
24
+ * defaultValue={0}
25
+ * allowNull={true}
26
+ * convertInt={false}
27
+ * />
28
+ *
29
+ * @param {Object} props - 组件的属性。
30
+ * @param {number|string} props.value - 初始化输入框的值。
31
+ * @param {Object[]} props.options - 可选单位的数组,每个对象包含 value(单位的值)和 label(显示在下拉菜单中的标签)。
32
+ * @param {Function} props.onChange - 当输入值或单位改变时触发的回调函数。传递新的值作为参数。
33
+ * @param {number|string} [props.defaultValue] - 未指定 value 时的默认值。
34
+ * @param {boolean} [props.allowNull=true] - 是否允许空值。
35
+ * @param {boolean} [props.convertInt=false] - 是否将输入值转换为整数。
36
+ * @param {Object} rest - 传递给 InputNumber 组件的其他属性。
37
+ *
38
+ * @returns {ReactElement} 返回一个 React 元素,表示一个带单位选择的数字输入框组件。
39
+ */
40
+ export default function (_ref) {
41
+ var value = _ref.value,
42
+ options = _ref.options,
43
+ onChange = _ref.onChange,
44
+ defaultValue = _ref.defaultValue,
45
+ _ref$allowNull = _ref.allowNull,
46
+ allowNull = _ref$allowNull === void 0 ? true : _ref$allowNull,
47
+ _ref$convertInt = _ref.convertInt,
48
+ convertInt = _ref$convertInt === void 0 ? false : _ref$convertInt,
49
+ rest = _objectWithoutProperties(_ref, _excluded);
50
+ var _useState = useState(value !== null && value !== void 0 ? value : defaultValue),
51
+ _useState2 = _slicedToArray(_useState, 2),
52
+ val = _useState2[0],
53
+ setVal = _useState2[1];
54
+ useUpdateEffect(function () {
55
+ setVal(value);
56
+ }, [value]);
57
+ var _parseValue = parseValue(val, options),
58
+ number = _parseValue.number,
59
+ unit = _parseValue.unit;
60
+ var handleSelect = function handleSelect(item) {
61
+ var newValue;
62
+ if (item.key == 'auto') newValue = item.key;else if (isNaN(number)) {
63
+ var defaultNumber = defaultValue !== null && defaultValue !== void 0 ? defaultValue : 0;
64
+ if (isNaN(defaultNumber)) {
65
+ var match = defaultNumber.match(/[\d\.]+/);
66
+ defaultNumber = match ? parseFloat(match[0]) : 0;
67
+ }
68
+ newValue = defaultNumber + item.key;
69
+ } else {
70
+ newValue = number + item.key;
71
+ }
72
+ changeValue(newValue);
73
+ };
74
+ var handleChange = function handleChange(value) {
75
+ if (!isNil(value)) changeValue(value + (unit !== null && unit !== void 0 ? unit : options[0].value));else changeValue(null);
76
+ };
77
+ var changeValue = function changeValue(value) {
78
+ // 分离需要数字前缀的值和不需要数字前缀的值(如auto)
79
+ var numericValues = options.filter(function (option) {
80
+ return option.value !== 'auto';
81
+ }).map(function (option) {
82
+ return option.value.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
83
+ }).join('|');
84
+
85
+ // 构建正则表达式
86
+ var regex = new RegExp("^(\\d*(?:".concat(numericValues, ")|auto)$"));
87
+ var isValid = regex.test(value);
88
+ if (isValid || allowNull && (value === '' || value == null)) {
89
+ // 如果value符合要求,执行以下代码
90
+ if (onChange) onChange(convertInt ? parseInt(value) : value);
91
+ setVal(value);
92
+ }
93
+ };
94
+ var optionName = options[0].label;
95
+ var menu = /*#__PURE__*/React.createElement(Menu, {
96
+ onClick: handleSelect
97
+ }, options.map(function (item) {
98
+ if (item.value == unit) optionName = item.label;
99
+ return /*#__PURE__*/React.createElement(Menu.Item, {
100
+ key: item.value
101
+ }, item.label);
102
+ }));
103
+ return /*#__PURE__*/React.createElement("div", _extends({
104
+ className: styles['lc-painter-panel-section-components-number-input']
105
+ }, rest), /*#__PURE__*/React.createElement("div", {
106
+ className: styles['num-input-wrap']
107
+ }, /*#__PURE__*/React.createElement(InputNumber, _extends({
108
+ className: styles['num-input'],
109
+ size: "small"
110
+ }, rest, {
111
+ value: number,
112
+ onChange: handleChange
113
+ })), /*#__PURE__*/React.createElement("div", {
114
+ className: styles['num-option']
115
+ }, /*#__PURE__*/React.createElement(Dropdown, {
116
+ overlay: menu,
117
+ value: unit,
118
+ disabled: options.length === 1,
119
+ getPopupContainer: function getPopupContainer() {
120
+ return document.getElementById('lc-design-workspace');
121
+ }
122
+ }, /*#__PURE__*/React.createElement("span", null, optionName)))));
123
+ }
124
+
125
+ // 解析value,分离数字和单位
126
+ var parseValue = function parseValue(value, options) {
127
+ if (value === null || typeof value === 'undefined' || value === '') {
128
+ return {
129
+ number: null,
130
+ unit: null
131
+ };
132
+ }
133
+ value = String(value);
134
+
135
+ // 调整正则表达式以匹配数字后跟任意非数字字符
136
+ var result = value.match(/^(\d+)(\D*)$/); // \D 匹配任意非数字字符
137
+ if (result) {
138
+ return {
139
+ number: result[1],
140
+ unit: result[2] ? result[2] : options[0].value // 如果有非数字字符,则返回该字符,否则返回默认单位的第一项
141
+ };
142
+ } else {
143
+ return {
144
+ number: value,
145
+ unit: value
146
+ }; // 当没有数字时,比如 "auto",这里的逻辑可能需要调整,因为你的描述有点矛盾
147
+ }
148
+ };
@@ -1,20 +1,92 @@
1
- import React from 'react';
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import React, { useState, useEffect } from 'react';
4
+ import { useMemoizedFn, useCreation } from 'ahooks';
5
+ import { Tooltip, Icon } from 'luck-design/antd';
6
+ import { startsWith } from 'lodash';
7
+ import classNames from 'classnames';
2
8
  import styles from "../style/panel-item.less";
3
9
 
4
10
  /**
5
- * 属性面板属性行组件
6
- * @param {string} label 属性名
7
- * @param {React.ReactNode} component 属性组件
8
- * @returns
11
+ * `PanelItem` 组件用于展示属性面板中的单个属性项。
12
+ * 它支持展示一个标签(属性名称)及对应的组件(例如输入框、选择器等),并可通过传入的 `addon` 属性添加额外的内容。
13
+ * 此组件支持折叠功能,可以通过 `collapsed` 属性控制初始折叠状态。
14
+ *
15
+ * @component
16
+ * @example
17
+ * ```jsx
18
+ * <PanelItem
19
+ * label="属性名称"
20
+ * collapsed={false}
21
+ * addon={<div>额外内容</div>}
22
+ * >
23
+ * <input type="text" />
24
+ * </PanelItem>
25
+ * ```
26
+ *
27
+ * @param {Object} props 组件接收的参数。
28
+ * @param {string} props.label 显示的属性名称。如果标签以 `#` 开头,则不显示。
29
+ * @param {boolean} [props.collapsed=true] 初始是否折叠。默认为 `true`。
30
+ * @param {React.ReactNode} props.addon 当属性项展开时,可以在下方显示额外内容。
31
+ * @param {React.ReactNode} props.children 对应于属性名称的组件,可以是输入框、下拉菜单等 React 节点。
32
+ *
33
+ * @returns {React.Element} 渲染属性名称、对应的组件以及可选的额外内容。
9
34
  */
10
35
  export default function (_ref) {
11
- var label = _ref.label,
12
- component = _ref.component;
36
+ var field = _ref.field,
37
+ label = _ref.label,
38
+ desc = _ref.desc,
39
+ _ref$collapsed = _ref.collapsed,
40
+ collapsed = _ref$collapsed === void 0 ? true : _ref$collapsed,
41
+ addon = _ref.addon,
42
+ suppressPadding = _ref.suppressPadding,
43
+ children = _ref.children;
44
+ var _useState = useState(collapsed),
45
+ _useState2 = _slicedToArray(_useState, 2),
46
+ curClps = _useState2[0],
47
+ setCurClps = _useState2[1];
48
+ var HandleClick = useMemoizedFn(function () {
49
+ if (!addon) return;
50
+ setCurClps(!curClps);
51
+ });
52
+ var tip = useCreation(function () {
53
+ var str = void 0;
54
+ if (field) {
55
+ str = "\u5C5E\u6027\uFF1A".concat(field);
56
+ }
57
+ if (desc) {
58
+ str = "".concat(str ? "".concat(str, " | ") : '', "\u8BF4\u660E\uFF1A").concat(desc);
59
+ }
60
+ return str;
61
+ }, [field, desc]);
62
+ useEffect(function () {
63
+ setCurClps(collapsed);
64
+ }, [collapsed]);
13
65
  return /*#__PURE__*/React.createElement("div", {
14
- className: styles['lc-painter-components-panelitem']
66
+ className: classNames(styles['lc-painter-components-panelitem'], _defineProperty({}, styles['no-padding'], !!suppressPadding))
67
+ }, /*#__PURE__*/React.createElement("div", {
68
+ className: styles['panelrow']
69
+ }, label && !startsWith(label, '#') && /*#__PURE__*/React.createElement("div", {
70
+ className: "".concat(styles['item-label']).concat(addon ? ' panel-pointer' : ''),
71
+ onClick: HandleClick
72
+ }, addon && /*#__PURE__*/React.createElement(Icon, {
73
+ className: styles['item-icon'],
74
+ type: !curClps ? 'down' : 'right'
75
+ }), /*#__PURE__*/React.createElement(Tooltip, {
76
+ overlayStyle: {
77
+ fontSize: '12px'
78
+ },
79
+ title: tip,
80
+ getPopupContainer: function getPopupContainer() {
81
+ return document.getElementById('lc-design-workspace');
82
+ }
15
83
  }, /*#__PURE__*/React.createElement("span", {
16
- className: styles['item-label']
17
- }, label), /*#__PURE__*/React.createElement("span", {
84
+ style: desc ? {
85
+ cursor: 'help'
86
+ } : null
87
+ }, label))), /*#__PURE__*/React.createElement("span", {
18
88
  className: styles['item-component']
19
- }, component));
89
+ }, children)), !curClps && addon && /*#__PURE__*/React.createElement("div", {
90
+ className: styles['addon']
91
+ }, addon));
20
92
  }
@@ -0,0 +1,30 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
+ var _excluded = ["showBtn"];
5
+ import React from 'react';
6
+ import { Popconfirm } from 'luck-design/antd';
7
+ import classNames from 'classnames';
8
+ import styles from "../style/pop-confirm.less";
9
+
10
+ /**
11
+ * 这个组件是对 luck-design/antd 的 Popconfirm 组件的封装。
12
+ * 它提供了一个带有自定义样式的弹出确认框,用于在用户尝试执行重要操作前提示确认信息。
13
+ * 通过传入的 props 可以自定义 Popconfirm 组件的行为和外观。
14
+ *
15
+ * @param {Object} props - 传递给 Popconfirm 组件的属性。这包括所有标准的 Popconfirm 属性,
16
+ * 以及任何额外的属性,如事件处理器或自定义内容。
17
+ * @returns {ReactNode} 返回一个配置了自定义样式和指定属性的 Popconfirm 组件实例。
18
+ */
19
+ export default function (_ref) {
20
+ var _ref$showBtn = _ref.showBtn,
21
+ showBtn = _ref$showBtn === void 0 ? false : _ref$showBtn,
22
+ props = _objectWithoutProperties(_ref, _excluded);
23
+ return /*#__PURE__*/React.createElement(Popconfirm, _extends({
24
+ overlayClassName: classNames(styles['lc-painter-panel-section-components-popconfirm'], _defineProperty({}, styles['show-btn'], showBtn)),
25
+ icon: null,
26
+ getPopupContainer: function getPopupContainer() {
27
+ return document.getElementById('lc-design-workspace');
28
+ }
29
+ }, props));
30
+ }
@@ -0,0 +1,71 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
+ var _excluded = ["children"],
4
+ _excluded2 = ["children"],
5
+ _excluded3 = ["children"],
6
+ _excluded4 = ["children"];
7
+ import React from 'react';
8
+ import styles from "../style/pop-form.less";
9
+
10
+ /**
11
+ * PopForm 是一个为弹出式表单布局提供容器的组件,它使用特定的样式来组织表单内容。
12
+ *
13
+ * @param {Object} props - 组件的 props。
14
+ * @param {ReactNode} props.children - 组件内包含的子元素。
15
+ * @param {Object} rest - 传递给组件的其余属性,这些属性将直接传递给根 div 元素。
16
+ */
17
+ export var PopForm = function PopForm(_ref) {
18
+ var children = _ref.children,
19
+ rest = _objectWithoutProperties(_ref, _excluded);
20
+ return /*#__PURE__*/React.createElement("div", _extends({
21
+ className: styles['lc-painter-panel-section-components-popform']
22
+ }, rest), children);
23
+ };
24
+
25
+ /**
26
+ * PopFormItem 是 PopForm 组件的一个子项,用于包装表单的每个独立字段。
27
+ * 它提供了一致的布局和样式封装,用于表单项的展示。
28
+ *
29
+ * @param {Object} props - 组件的 props。
30
+ * @param {ReactNode} props.children - 组件内包含的子元素。
31
+ * @param {Object} rest - 传递给组件的其余属性,这些属性将直接传递给根 div 元素。
32
+ */
33
+ export var PopFormItem = function PopFormItem(_ref2) {
34
+ var children = _ref2.children,
35
+ rest = _objectWithoutProperties(_ref2, _excluded2);
36
+ return /*#__PURE__*/React.createElement("div", _extends({
37
+ className: styles['item']
38
+ }, rest), children);
39
+ };
40
+
41
+ /**
42
+ * PopFormItemLeft 是 PopFormItem 的子组件,用于展示表单项的标签或标题部分。
43
+ * 它通常用于放置字段名或说明性文本。
44
+ *
45
+ * @param {Object} props - 组件的 props。
46
+ * @param {ReactNode} props.children - 组件内包含的子元素。
47
+ * @param {Object} rest - 传递给组件的其余属性,这些属性将直接传递给根 div 元素。
48
+ */
49
+ export var PopFormItemLeft = function PopFormItemLeft(_ref3) {
50
+ var children = _ref3.children,
51
+ rest = _objectWithoutProperties(_ref3, _excluded3);
52
+ return /*#__PURE__*/React.createElement("div", _extends({
53
+ className: styles['left']
54
+ }, rest), children);
55
+ };
56
+
57
+ /**
58
+ * PopFormItemRight 是 PopFormItem 的子组件,用于包含表单项的输入字段。
59
+ * 它是表单项布局中用于用户输入的部分,可以容纳各种类型的输入控件。
60
+ *
61
+ * @param {Object} props - 组件的 props。
62
+ * @param {ReactNode} props.children - 组件内包含的子元素。
63
+ * @param {Object} rest - 传递给组件的其余属性,这些属性将直接传递给根 div 元素。
64
+ */
65
+ export var PopFormItemRight = function PopFormItemRight(_ref4) {
66
+ var children = _ref4.children,
67
+ rest = _objectWithoutProperties(_ref4, _excluded4);
68
+ return /*#__PURE__*/React.createElement("div", _extends({
69
+ className: styles['right']
70
+ }, rest), children);
71
+ };
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import { getCreateHistoryOptions } from 'umi';
3
+ import styled from 'styled-components';
4
+ import { useCreation } from 'ahooks';
5
+ var Iframe = styled.iframe.withConfig({
6
+ displayName: "Iframe",
7
+ componentId: "luckda-6530__sc-cyloc5-0"
8
+ })(["width:100%;height:100%;border:none;"]);
9
+ var PreviewIframe = function PreviewIframe(_ref) {
10
+ var code = _ref.code,
11
+ userId = _ref.userId;
12
+ var basename = useCreation(function () {
13
+ return getCreateHistoryOptions().basename;
14
+ });
15
+ return /*#__PURE__*/React.createElement(Iframe, {
16
+ src: "".concat(basename === '/' ? '' : basename, "/byteman/preview/").concat(code, "?_user=").concat(userId, "&pure=1")
17
+ });
18
+ };
19
+ export default PreviewIframe;
@@ -1,10 +1,13 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
3
  import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIteratorHelper";
3
4
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
4
5
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
- var _excluded = ["onValueChange", "rules", "value"];
6
+ var _excluded = ["onValueChange", "rules", "value", "defaultValue"];
6
7
  import React, { forwardRef, useState, useEffect } from 'react';
8
+ import { useUpdateEffect } from 'ahooks';
7
9
  import { Input, Tooltip } from 'luck-design/antd';
10
+ import classNames from 'classnames';
8
11
  import styles from "../style/rule-input.less";
9
12
 
10
13
  /**
@@ -42,8 +45,9 @@ export default /*#__PURE__*/forwardRef(function (_ref, ref) {
42
45
  var onValueChange = _ref.onValueChange,
43
46
  rules = _ref.rules,
44
47
  value = _ref.value,
48
+ defaultValue = _ref.defaultValue,
45
49
  rest = _objectWithoutProperties(_ref, _excluded);
46
- var _useState = useState(value),
50
+ var _useState = useState(value || defaultValue),
47
51
  _useState2 = _slicedToArray(_useState, 2),
48
52
  inputValue = _useState2[0],
49
53
  setInputValue = _useState2[1]; // 托管输入值的状态
@@ -53,7 +57,7 @@ export default /*#__PURE__*/forwardRef(function (_ref, ref) {
53
57
  setErr = _useState4[1];
54
58
 
55
59
  // 使用useEffect钩子监听value的变化
56
- useEffect(function () {
60
+ useUpdateEffect(function () {
57
61
  setInputValue(value);
58
62
  setErr(null);
59
63
  }, [value]);
@@ -61,7 +65,6 @@ export default /*#__PURE__*/forwardRef(function (_ref, ref) {
61
65
  var value = e.target.value;
62
66
  setInputValue(value); // 更新托管的输入值
63
67
 
64
- if (value == '') onValueChange(e, value);
65
68
  var error = null;
66
69
 
67
70
  // 遍历rules,检查输入值是否满足条件
@@ -85,16 +88,14 @@ export default /*#__PURE__*/forwardRef(function (_ref, ref) {
85
88
  onValueChange(e, value);
86
89
  } else {
87
90
  setErr(error);
88
- console.log('err', error);
91
+ console.error(error);
89
92
  }
90
93
  };
91
- var className = styles['lc-painter-components-ruleinput'];
92
- if (err) className += ' ' + styles['err'];
93
94
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Tooltip, {
94
95
  title: err,
95
96
  visible: err
96
97
  }, /*#__PURE__*/React.createElement(Input, _extends({
97
- className: className,
98
+ className: classNames(styles['lc-painter-components-ruleinput'], _defineProperty({}, styles.err, !!err)),
98
99
  size: "small",
99
100
  value: inputValue // 绑定输入值
100
101
  ,
@@ -0,0 +1,99 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
+ var _excluded = ["datas", "children", "onChange", "strategy", "onDragEnd"];
5
+ import React, { useState, useEffect } from 'react';
6
+ import { DndContext } from '@dnd-kit/core';
7
+ import { SortableContext, arrayMove, useSortable, verticalListSortingStrategy } from '@dnd-kit/sortable';
8
+ import { CSS } from '@dnd-kit/utilities';
9
+
10
+ /**
11
+ * SortBox 是一个使用 dnd-kit 实现拖拽排序的组件。
12
+ * 它允许子元素通过拖拽操作来重新排序,并在排序操作完成后通过 onChange 回调传递新的排序结果。
13
+ *
14
+ * @param {Object} props 组件的 props。
15
+ * @param {Array} props.datas 初始排序的数据数组,通常包含用于排序的唯一标识符。
16
+ * @param {ReactNode} props.children 组件的子元素,通常是需要进行排序的元素集合。
17
+ * @param {Function} props.onChange 当排序操作完成时触发的回调函数,参数为重新排序后的数据数组。
18
+ * @param {Function} [props.strategy=verticalListSortingStrategy] 用于排序的策略。默认为垂直列表排序策略。
19
+ *
20
+ * @returns {ReactNode} 返回一个配置了 DndContext 和 SortableContext 的 React 组件结构。
21
+ */
22
+ export var SortBox = function SortBox(_ref) {
23
+ var datas = _ref.datas,
24
+ children = _ref.children,
25
+ onChange = _ref.onChange,
26
+ strategy = _ref.strategy,
27
+ onDragEnd = _ref.onDragEnd,
28
+ rest = _objectWithoutProperties(_ref, _excluded);
29
+ var _useState = useState(datas),
30
+ _useState2 = _slicedToArray(_useState, 2),
31
+ items = _useState2[0],
32
+ setItems = _useState2[1];
33
+ var sortStrategy = strategy !== null && strategy !== void 0 ? strategy : verticalListSortingStrategy;
34
+ useEffect(function () {
35
+ setItems(datas);
36
+ }, [datas]);
37
+ function handleDragEnd(event) {
38
+ onDragEnd && onDragEnd(event);
39
+ var active = event.active,
40
+ over = event.over;
41
+ if (!active || !over) return;
42
+ if (active.id !== over.id) {
43
+ setItems(function (items) {
44
+ var oldIndex = items.indexOf(active.id);
45
+ var newIndex = items.indexOf(over.id);
46
+ var newSortItem = arrayMove(items, oldIndex, newIndex);
47
+ if (onChange) onChange(newSortItem, oldIndex, newIndex);
48
+ return newSortItem;
49
+ });
50
+ }
51
+ }
52
+ return /*#__PURE__*/React.createElement(DndContext, _extends({}, rest, {
53
+ onDragEnd: handleDragEnd
54
+ }), /*#__PURE__*/React.createElement(SortableContext, {
55
+ strategy: sortStrategy,
56
+ items: items
57
+ }, children));
58
+ };
59
+
60
+ /**
61
+ * SortItem 组件是一个使用 dnd-kit 实现的可排序项。它通过 useSortable 钩子来提供拖拽功能,
62
+ * 并将必要的属性和监听器传递给其子元素,使得子元素可拖拽。
63
+ *
64
+ * @param {Object} props - 组件的 props。
65
+ * @param {string} props.id - 该排序项的唯一标识符,用于识别不同的可排序元素。
66
+ * @param {ReactNode} props.children - 该组件的子元素。通常是你希望使之可拖拽的元素。
67
+ * SortItem 会将拖拽相关的 props 注入到这个子元素中。
68
+ *
69
+ * @returns {ReactNode} 返回一个增强后的 React 元素,此元素集成了拖拽功能。
70
+ * 它基于原 children 元素,附加了用于拖拽的属性和样式。
71
+ */
72
+ export var SortItem = function SortItem(_ref2) {
73
+ var id = _ref2.id,
74
+ children = _ref2.children;
75
+ var _useSortable = useSortable({
76
+ id: id
77
+ }),
78
+ attributes = _useSortable.attributes,
79
+ listeners = _useSortable.listeners,
80
+ setNodeRef = _useSortable.setNodeRef,
81
+ transform = _useSortable.transform,
82
+ transition = _useSortable.transition,
83
+ setActivatorNodeRef = _useSortable.setActivatorNodeRef;
84
+ var style = {
85
+ transform: CSS.Transform.toString(transform),
86
+ transition: transition
87
+ };
88
+ var childWithProps = /*#__PURE__*/React.cloneElement(children, {
89
+ key: id,
90
+ attributes: attributes,
91
+ listeners: listeners,
92
+ setNodeRef: setNodeRef,
93
+ transform: transform,
94
+ transition: transition,
95
+ setActivatorNodeRef: setActivatorNodeRef,
96
+ style: style
97
+ });
98
+ return childWithProps;
99
+ };
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import TreeDragDropWrapper from "./DragDrop/TreeDragDropWrapper";
3
+ export default function (_ref) {
4
+ var item = _ref.item;
5
+ var EditorNode = function EditorNode() {
6
+ return /*#__PURE__*/React.createElement("div", {
7
+ className: "item"
8
+ }, item.name);
9
+ };
10
+ return /*#__PURE__*/React.createElement(TreeDragDropWrapper, {
11
+ item: item
12
+ }, /*#__PURE__*/React.createElement(EditorNode, null));
13
+ }
@@ -0,0 +1,111 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
+ var _excluded = ["onChange", "isFullscreen", "style"],
5
+ _excluded2 = ["children", "language", "options"];
6
+ import React, { useEffect, useRef, useImperativeHandle, forwardRef } from 'react';
7
+ import * as monaco from 'monaco-editor';
8
+
9
+ /**
10
+ * BaseEditor 组件是一个封装了 monaco 编辑器的 React 组件,支持前向 ref 引用。
11
+ * 该组件允许用户编辑代码,并在代码发生变更时触发回调函数。
12
+ * 它还支持通过 props 控制编辑器的语言、选项以及是否全屏显示。
13
+ *
14
+ * @component
15
+ * @example
16
+ * const handleEditorChange = (newValue, event) => {
17
+ * console.log('Editor content changed: ', newValue);
18
+ * };
19
+ * <BaseEditor
20
+ * language="javascript"
21
+ * onChange={handleEditorChange}
22
+ * isFullscreen={false}
23
+ * width="600px"
24
+ * height="400px"
25
+ * >
26
+ * {`function sayHello() {\n console.log('Hello, World!');\n}`}
27
+ * </BaseEditor>
28
+ *
29
+ * @param {Object} props - 组件的属性。
30
+ * @param {Function} props.onChange - 当编辑器内容变更时调用的函数。接收最新的编辑器内容和事件对象作为参数。
31
+ * @param {boolean} props.isFullscreen - 控制编辑器是否全屏显示。
32
+ * @param {string} [props.language='javascript'] - 设置编辑器的编程语言,默认为 'javascript'。
33
+ * @param {Object} [props.options={}] - 用于自定义编辑器的选项。
34
+ * @param {React.ReactNode} children - 子组件,通常是编辑器的初始代码。
35
+ * @param {string} [props.width] - 编辑器的宽度,默认为 '100%'。
36
+ * @param {string} [props.height] - 编辑器的高度,默认为 '100%'。
37
+ * @param {Object} rest - 传递给 div 容器的其它属性。
38
+ * @param {React.Ref} ref - React ref 引用,用于外部组件调用编辑器实例的方法。
39
+ *
40
+ * @returns {ReactElement} 返回一个 React 元素,其中包含了一个配置好的 monaco 编辑器实例。
41
+ */
42
+ var BaseEditor = /*#__PURE__*/forwardRef(function (_ref, ref) {
43
+ var onChange = _ref.onChange,
44
+ isFullscreen = _ref.isFullscreen,
45
+ style = _ref.style,
46
+ props = _objectWithoutProperties(_ref, _excluded);
47
+ var children = props.children,
48
+ _props$language = props.language,
49
+ language = _props$language === void 0 ? 'javascript' : _props$language,
50
+ _props$options = props.options,
51
+ options = _props$options === void 0 ? {} : _props$options,
52
+ rest = _objectWithoutProperties(props, _excluded2);
53
+ var editorRef = useRef(null);
54
+ var editorInstance = useRef(null);
55
+
56
+ // 初始化编辑器实例
57
+ useEffect(function () {
58
+ if (editorRef.current) {
59
+ var code = React.Children.toArray(children).join('').trim();
60
+ editorInstance.current = monaco.editor.create(editorRef.current, _objectSpread({
61
+ value: code,
62
+ language: language,
63
+ automaticLayout: true,
64
+ autoIndent: true,
65
+ tabSize: 2
66
+ }, options), {
67
+ storageService: {
68
+ get: function get() {},
69
+ getBoolean: function getBoolean(key) {
70
+ if (key === 'expandSuggestionDocs') return true;
71
+ return false;
72
+ },
73
+ remove: function remove() {},
74
+ store: function store() {},
75
+ onWillSaveState: function onWillSaveState() {},
76
+ onDidChangeStorage: function onDidChangeStorage() {}
77
+ }
78
+ });
79
+ editorInstance.current.onDidChangeModelContent(function (event) {
80
+ if (onChange) onChange(editorInstance.current.getValue(), event);
81
+ });
82
+ }
83
+ return function () {
84
+ var _editorInstance$curre;
85
+ return (_editorInstance$curre = editorInstance.current) === null || _editorInstance$curre === void 0 ? void 0 : _editorInstance$curre.dispose();
86
+ };
87
+ }, [children, language, options]);
88
+
89
+ // 使用 ref 暴露组件方法
90
+ useImperativeHandle(ref, function () {
91
+ return {
92
+ get editor() {
93
+ return editorInstance.current;
94
+ }
95
+ };
96
+ }, []);
97
+
98
+ // 根据是否全屏来设置编辑器的样式
99
+ var editorStyle = isFullscreen ? {
100
+ width: '100vw',
101
+ height: '100vh'
102
+ } : {
103
+ width: props.width || '100%',
104
+ height: props.height || '100%'
105
+ };
106
+ return /*#__PURE__*/React.createElement("div", _extends({
107
+ ref: editorRef,
108
+ style: _objectSpread(_objectSpread({}, editorStyle), style)
109
+ }, rest));
110
+ });
111
+ export default /*#__PURE__*/React.memo(BaseEditor);