@luck-design-biz/luckda 0.0.23 → 0.0.24-2

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 (433) hide show
  1. package/es/components/Builder/index.js +6 -4
  2. package/es/components/LdFormList/index.js +1 -4
  3. package/es/components/LdGrid/index.js +12 -3
  4. package/es/lowcode/constants/api-url.js +292 -1
  5. package/es/lowcode/constants/event-topics.js +14 -1
  6. package/es/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +60 -0
  7. package/es/lowcode/engine/factory/panel-item-factory/GroupStrategy.js +32 -0
  8. package/es/lowcode/engine/factory/panel-item-factory/NumberStrategy.js +32 -0
  9. package/es/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +32 -0
  10. package/es/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +53 -0
  11. package/es/lowcode/engine/factory/panel-item-factory/Strategy.js +21 -0
  12. package/es/lowcode/engine/factory/panel-item-factory/StringStrategy.js +51 -0
  13. package/es/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +42 -0
  14. package/es/lowcode/engine/factory/panel-item-factory/index.js +44 -0
  15. package/es/lowcode/engine/meta/box.props.default.json +12 -0
  16. package/es/lowcode/engine/meta/box.props.json +42 -0
  17. package/es/lowcode/engine/meta/button.props.default.json +15 -7
  18. package/es/lowcode/engine/meta/{components/button.json → button.props.json} +126 -103
  19. package/es/lowcode/engine/meta/cardlist.props.default.json +17 -9
  20. package/es/lowcode/engine/meta/{components/card-list.json → cardlist.props.json} +143 -142
  21. package/es/lowcode/engine/meta/components-list.json +127 -121
  22. package/es/lowcode/engine/meta/dialog.props.default.json +19 -0
  23. package/{lib/lowcode/engine/meta/components/modal.json → es/lowcode/engine/meta/dialog.props.json} +120 -119
  24. package/es/lowcode/engine/meta/drawer.props.default.json +17 -9
  25. package/{lib/lowcode/engine/meta/components/drawer.json → es/lowcode/engine/meta/drawer.props.json} +143 -142
  26. package/es/lowcode/engine/meta/form.props.default.json +12 -4
  27. package/{lib/lowcode/engine/meta/components/form.json → es/lowcode/engine/meta/form.props.json} +116 -115
  28. package/es/lowcode/engine/meta/iframe.props.default.json +10 -2
  29. package/es/lowcode/engine/meta/{components/iframe.json → iframe.props.json} +31 -30
  30. package/es/lowcode/engine/meta/image.props.default.json +15 -7
  31. package/es/lowcode/engine/meta/{components/image.json → image.props.json} +113 -112
  32. package/es/lowcode/engine/meta/imex.props.default.json +11 -3
  33. package/{lib/lowcode/engine/meta/components/imex.json → es/lowcode/engine/meta/imex.props.json} +81 -80
  34. package/es/lowcode/engine/meta/js-editor/auto-complete.json +29 -0
  35. package/es/lowcode/engine/meta/jsx.props.default.json +10 -1
  36. package/es/lowcode/engine/meta/{components/jsx.json → jsx.props.json} +24 -23
  37. package/es/lowcode/engine/meta/layout.props.default.json +12 -4
  38. package/{lib/lowcode/engine/meta/components/layout.json → es/lowcode/engine/meta/layout.props.json} +107 -106
  39. package/es/lowcode/engine/meta/link.props.default.json +13 -5
  40. package/{lib/lowcode/engine/meta/components/link.json → es/lowcode/engine/meta/link.props.json} +111 -110
  41. package/es/lowcode/engine/meta/section.props.default.json +16 -8
  42. package/{lib/lowcode/engine/meta/components/section.json → es/lowcode/engine/meta/section.props.json} +107 -106
  43. package/es/lowcode/engine/meta/split.props.default.json +12 -4
  44. package/es/lowcode/engine/meta/{components/split.json → split.props.json} +71 -70
  45. package/es/lowcode/engine/meta/table.props.default.json +29 -9
  46. package/es/lowcode/engine/meta/table.props.json +236 -0
  47. package/es/lowcode/engine/meta/tabs.props.default.json +17 -9
  48. package/es/lowcode/engine/meta/{components/tabs.json → tabs.props.json} +140 -139
  49. package/es/lowcode/engine/meta/text.props.default.json +11 -3
  50. package/{lib/lowcode/engine/meta/components/text.json → es/lowcode/engine/meta/text.props.json} +65 -64
  51. package/es/lowcode/engine/meta/tree.props.default.json +16 -8
  52. package/es/lowcode/engine/meta/{components/tree.json → tree.props.json} +156 -155
  53. package/es/lowcode/engine/provider/ContextProvider.js +46 -41
  54. package/es/lowcode/engine/provider/EventBusProvider.js +2 -2
  55. package/es/lowcode/engine/tools/dataProcess.js +85 -8
  56. package/es/lowcode/engine/tools/helper.js +68 -0
  57. package/es/lowcode/engine/tools/usePromiseState.js +24 -0
  58. package/es/lowcode/index.js +3 -1
  59. package/es/lowcode/painter/Design.js +40 -85
  60. package/es/lowcode/painter/DesignOperator.js +271 -0
  61. package/es/lowcode/painter/DesignToolbar.js +91 -0
  62. package/es/lowcode/painter/I18n.js +202 -2
  63. package/es/lowcode/painter/Outline.js +63 -54
  64. package/es/lowcode/painter/Panel.js +239 -2
  65. package/es/lowcode/painter/Ribbon.js +61 -55
  66. package/es/lowcode/painter/components/Collapse.js +90 -0
  67. package/es/lowcode/painter/components/ColorInput.js +125 -0
  68. package/es/lowcode/painter/components/ListEditor.js +89 -0
  69. package/es/lowcode/painter/components/NumberInput.js +148 -0
  70. package/es/lowcode/painter/components/PanelItem.js +83 -11
  71. package/es/lowcode/painter/components/PopConfirm.js +23 -0
  72. package/es/lowcode/painter/components/PopForm.js +71 -0
  73. package/es/lowcode/painter/components/RuleInput.js +9 -7
  74. package/es/lowcode/painter/components/SortBox.js +92 -0
  75. package/es/lowcode/painter/components/actions-editor/ActionEditor.js +147 -0
  76. package/es/lowcode/painter/components/actions-editor/index.js +170 -0
  77. package/es/lowcode/painter/components/code-editor/BaseEditor.js +96 -0
  78. package/es/lowcode/painter/components/code-editor/CssEditor.js +41 -0
  79. package/es/lowcode/painter/components/code-editor/FullScreenEditor.js +87 -0
  80. package/es/lowcode/painter/components/code-editor/JSEditor.js +106 -0
  81. package/es/lowcode/painter/components/code-editor/index.js +2 -0
  82. package/es/lowcode/painter/index.js +33 -3
  83. package/es/lowcode/painter/panel-section/ButtonType.js +39 -0
  84. package/es/lowcode/painter/panel-section/DataSetSelector.js +61 -0
  85. package/es/lowcode/painter/panel-section/Icon.js +48 -0
  86. package/es/lowcode/painter/panel-section/IconSelector.js +134 -0
  87. package/es/lowcode/painter/panel-section/LayoutRatio.js +57 -49
  88. package/es/lowcode/painter/panel-section/StylePanel/BackGround.js +61 -0
  89. package/es/lowcode/painter/panel-section/StylePanel/Border.js +150 -0
  90. package/es/lowcode/painter/panel-section/StylePanel/BorderRadius.js +87 -0
  91. package/es/lowcode/painter/panel-section/StylePanel/BorderRadiusSelector.js +66 -0
  92. package/es/lowcode/painter/panel-section/StylePanel/BorderSelector.js +66 -0
  93. package/es/lowcode/painter/panel-section/StylePanel/Display.js +296 -0
  94. package/es/lowcode/painter/panel-section/StylePanel/DisplaySvg.js +543 -0
  95. package/es/lowcode/painter/panel-section/StylePanel/Font.js +162 -0
  96. package/es/lowcode/painter/panel-section/StylePanel/FontEditor.js +386 -0
  97. package/es/lowcode/painter/panel-section/StylePanel/GapSelector.js +78 -0
  98. package/es/lowcode/painter/panel-section/StylePanel/HighLightPanel.js +23 -0
  99. package/es/lowcode/painter/panel-section/StylePanel/HighLigthtSpan.js +20 -0
  100. package/es/lowcode/painter/panel-section/StylePanel/HightLightSvg.js +23 -0
  101. package/es/lowcode/painter/panel-section/StylePanel/MainPanel.js +96 -0
  102. package/es/lowcode/painter/panel-section/StylePanel/Margin.js +60 -0
  103. package/es/lowcode/painter/panel-section/StylePanel/Opacity.js +50 -0
  104. package/es/lowcode/painter/panel-section/StylePanel/Padding.js +61 -0
  105. package/es/lowcode/painter/panel-section/StylePanel/Pointer.js +41 -0
  106. package/es/lowcode/painter/panel-section/StylePanel/Shadow.js +216 -0
  107. package/es/lowcode/painter/panel-section/StylePanel/Size.js +53 -0
  108. package/es/lowcode/painter/panel-section/StylePanel/StyleContext.js +148 -0
  109. package/es/lowcode/painter/panel-section/StylePanel/StyleRow.js +16 -0
  110. package/es/lowcode/painter/panel-section/StylePanel/WidthHeight.js +51 -0
  111. package/es/lowcode/painter/panel-section/StylePanel/index.js +29 -0
  112. package/es/lowcode/painter/panel-section/TabItems.js +207 -0
  113. package/es/lowcode/painter/panel-section/TableActions.js +19 -0
  114. package/es/lowcode/painter/panel-section/TableZebra.js +14 -0
  115. package/es/lowcode/painter/panel-section/WidthHeight.js +39 -0
  116. package/es/lowcode/painter/services/I18n.js +85 -0
  117. package/es/lowcode/painter/style/actions-editor.less +16 -0
  118. package/es/lowcode/painter/style/border-editor.less +36 -0
  119. package/es/lowcode/painter/style/border-radius-selector.less +43 -0
  120. package/es/lowcode/painter/style/border-selector.less +40 -0
  121. package/es/lowcode/painter/style/button-type.less +5 -0
  122. package/es/lowcode/painter/style/collapse.less +22 -0
  123. package/es/lowcode/painter/style/color-input.less +19 -0
  124. package/es/lowcode/painter/style/design.less +116 -5
  125. package/es/lowcode/painter/style/display.less +17 -0
  126. package/es/lowcode/painter/style/font-editor.less +9 -0
  127. package/es/lowcode/painter/style/fullscreen-editor.less +17 -0
  128. package/es/lowcode/painter/style/icon-selector.less +22 -0
  129. package/es/lowcode/painter/style/icon.less +11 -0
  130. package/es/lowcode/painter/style/index.less +0 -1
  131. package/es/lowcode/painter/style/layout-ratio.less +1 -1
  132. package/es/lowcode/painter/style/list-editor.less +59 -0
  133. package/es/lowcode/painter/style/number-input.less +17 -0
  134. package/es/lowcode/painter/style/outline.less +2 -0
  135. package/es/lowcode/painter/style/panel-item.less +45 -12
  136. package/es/lowcode/painter/style/panel.less +124 -0
  137. package/es/lowcode/painter/style/pop-confirm.less +10 -0
  138. package/es/lowcode/painter/style/pop-form.less +20 -0
  139. package/es/lowcode/painter/style/ribbon.less +1 -0
  140. package/es/lowcode/painter/style/style-panel.less +37 -0
  141. package/es/lowcode/painter/style/tabitems.less +90 -0
  142. package/es/lowcode/view/Canvas.js +79 -70
  143. package/es/lowcode/view/Page.js +10 -28
  144. package/es/lowcode/view/index.js +5 -6
  145. package/es/lowcode/view/lc-components/Box/FunctionDesign.js +20 -0
  146. package/es/lowcode/view/lc-components/Box/FunctionLive.js +9 -0
  147. package/es/lowcode/view/lc-components/Box/index.js +22 -5
  148. package/es/lowcode/view/lc-components/Box/index.less +15 -0
  149. package/es/lowcode/view/lc-components/Box/meta.json +42 -0
  150. package/es/lowcode/view/lc-components/Button/FunctionDesign.js +21 -0
  151. package/es/lowcode/view/lc-components/Button/FunctionLive.js +9 -0
  152. package/es/lowcode/view/lc-components/Button/index.js +75 -7
  153. package/es/lowcode/view/lc-components/Button/meta.json +127 -0
  154. package/es/lowcode/view/lc-components/Button/style.less +3 -0
  155. package/es/lowcode/view/lc-components/CardList/FunctionDesign.js +9 -0
  156. package/es/lowcode/view/lc-components/CardList/FunctionLive.js +9 -0
  157. package/{lib/lowcode/engine/meta/components/table.json → es/lowcode/view/lc-components/CardList/meta.json} +11 -28
  158. package/es/lowcode/view/lc-components/Dialog/FunctionDesign.js +54 -0
  159. package/es/lowcode/view/lc-components/Dialog/FunctionLive.js +9 -0
  160. package/es/lowcode/view/lc-components/Dialog/index.js +20 -11
  161. package/es/lowcode/view/lc-components/Dialog/index.less +1 -1
  162. package/es/lowcode/view/lc-components/Dialog/meta.json +121 -0
  163. package/es/lowcode/view/lc-components/Drawer/FunctionDesign.js +20 -0
  164. package/es/lowcode/view/lc-components/Drawer/FunctionLive.js +9 -0
  165. package/es/lowcode/view/lc-components/Drawer/index.js +22 -9
  166. package/es/lowcode/view/lc-components/Drawer/index.less +7 -0
  167. package/es/lowcode/view/lc-components/Drawer/meta.json +144 -0
  168. package/es/lowcode/view/lc-components/Form/FunctionDesign.js +9 -0
  169. package/es/lowcode/view/lc-components/Form/FunctionLive.js +9 -0
  170. package/es/lowcode/view/lc-components/Form/meta.json +117 -0
  171. package/es/lowcode/view/lc-components/Iframe/FunctionDesign.js +9 -0
  172. package/es/lowcode/view/lc-components/Iframe/FunctionLive.js +9 -0
  173. package/es/lowcode/view/lc-components/Iframe/meta.json +32 -0
  174. package/es/lowcode/view/lc-components/ImEx/FunctionDesign.js +9 -0
  175. package/es/lowcode/view/lc-components/ImEx/FunctionLive.js +9 -0
  176. package/es/lowcode/view/lc-components/ImEx/meta.json +82 -0
  177. package/es/lowcode/view/lc-components/Image/FunctionDesign.js +9 -0
  178. package/es/lowcode/view/lc-components/Image/FunctionLive.js +9 -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/meta.json +25 -0
  183. package/es/lowcode/view/lc-components/Layout/FunctionDesign.js +75 -0
  184. package/es/lowcode/view/lc-components/Layout/FunctionLive.js +15 -0
  185. package/es/lowcode/view/lc-components/Layout/index.js +40 -7
  186. package/es/lowcode/view/lc-components/Layout/index.less +5 -0
  187. package/es/lowcode/view/lc-components/Layout/meta.json +108 -0
  188. package/es/lowcode/view/lc-components/Link/FunctionDesign.js +9 -0
  189. package/es/lowcode/view/lc-components/Link/FunctionLive.js +9 -0
  190. package/es/lowcode/view/lc-components/Link/meta.json +112 -0
  191. package/es/lowcode/view/lc-components/Section/FunctionDesign.js +9 -0
  192. package/es/lowcode/view/lc-components/Section/FunctionLive.js +9 -0
  193. package/es/lowcode/view/lc-components/Section/meta.json +108 -0
  194. package/es/lowcode/view/lc-components/Split/FunctionDesign.js +9 -0
  195. package/es/lowcode/view/lc-components/Split/FunctionLive.js +9 -0
  196. package/es/lowcode/view/lc-components/Split/meta.json +72 -0
  197. package/es/lowcode/view/lc-components/Table/FunctionDesign.js +18 -0
  198. package/es/lowcode/view/lc-components/Table/FunctionLive.js +9 -0
  199. package/es/lowcode/view/lc-components/Table/index.js +229 -9
  200. package/es/lowcode/view/lc-components/Table/meta.json +225 -0
  201. package/es/lowcode/view/lc-components/Tabs/FunctionDesign.js +9 -0
  202. package/es/lowcode/view/lc-components/Tabs/FunctionLive.js +9 -0
  203. package/es/lowcode/view/lc-components/Tabs/meta.json +141 -0
  204. package/es/lowcode/view/lc-components/Text/FunctionDesign.js +9 -0
  205. package/es/lowcode/view/lc-components/Text/FunctionLive.js +9 -0
  206. package/es/lowcode/view/lc-components/Text/meta.json +66 -0
  207. package/es/lowcode/view/lc-components/Tree/FunctionDesign.js +9 -0
  208. package/es/lowcode/view/lc-components/Tree/FunctionLive.js +9 -0
  209. package/es/lowcode/view/lc-components/Tree/meta.json +157 -0
  210. package/es/lowcode/view/lc-components/Wrapper.js +32 -23
  211. package/es/lowcode/view/style/page.less +0 -1
  212. package/es/upload/Form/gridForm.js +1 -1
  213. package/es/utils/grid.js +4 -3
  214. package/lib/components/Builder/index.js +5 -3
  215. package/lib/components/LdFormList/index.js +1 -5
  216. package/lib/components/LdGrid/index.js +12 -3
  217. package/lib/lowcode/constants/api-url.js +294 -2
  218. package/lib/lowcode/constants/event-topics.js +15 -2
  219. package/lib/lowcode/engine/factory/panel-item-factory/DynamicStrategy.js +73 -0
  220. package/lib/lowcode/engine/factory/panel-item-factory/GroupStrategy.js +38 -0
  221. package/lib/lowcode/engine/factory/panel-item-factory/NumberStrategy.js +38 -0
  222. package/lib/lowcode/engine/factory/panel-item-factory/SegmentedStrategy.js +38 -0
  223. package/lib/lowcode/engine/factory/panel-item-factory/SelectStrategy.js +59 -0
  224. package/lib/lowcode/engine/factory/panel-item-factory/Strategy.js +27 -0
  225. package/lib/lowcode/engine/factory/panel-item-factory/StringStrategy.js +57 -0
  226. package/lib/lowcode/engine/factory/panel-item-factory/SwitchStrategy.js +48 -0
  227. package/lib/lowcode/engine/factory/panel-item-factory/index.js +50 -0
  228. package/lib/lowcode/engine/meta/box.props.default.json +12 -0
  229. package/lib/lowcode/engine/meta/box.props.json +42 -0
  230. package/lib/lowcode/engine/meta/button.props.default.json +15 -7
  231. package/lib/lowcode/engine/meta/{components/button.json → button.props.json} +126 -103
  232. package/lib/lowcode/engine/meta/cardlist.props.default.json +17 -9
  233. package/lib/lowcode/engine/meta/{components/card-list.json → cardlist.props.json} +143 -142
  234. package/lib/lowcode/engine/meta/components-list.json +127 -121
  235. package/lib/lowcode/engine/meta/dialog.props.default.json +19 -0
  236. package/{es/lowcode/engine/meta/components/modal.json → lib/lowcode/engine/meta/dialog.props.json} +120 -119
  237. package/lib/lowcode/engine/meta/drawer.props.default.json +17 -9
  238. package/{es/lowcode/engine/meta/components/drawer.json → lib/lowcode/engine/meta/drawer.props.json} +143 -142
  239. package/lib/lowcode/engine/meta/form.props.default.json +12 -4
  240. package/{es/lowcode/engine/meta/components/form.json → lib/lowcode/engine/meta/form.props.json} +116 -115
  241. package/lib/lowcode/engine/meta/iframe.props.default.json +10 -2
  242. package/lib/lowcode/engine/meta/{components/iframe.json → iframe.props.json} +31 -30
  243. package/lib/lowcode/engine/meta/image.props.default.json +15 -7
  244. package/lib/lowcode/engine/meta/{components/image.json → image.props.json} +113 -112
  245. package/lib/lowcode/engine/meta/imex.props.default.json +11 -3
  246. package/{es/lowcode/engine/meta/components/imex.json → lib/lowcode/engine/meta/imex.props.json} +81 -80
  247. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +29 -0
  248. package/lib/lowcode/engine/meta/jsx.props.default.json +10 -1
  249. package/lib/lowcode/engine/meta/{components/jsx.json → jsx.props.json} +24 -23
  250. package/lib/lowcode/engine/meta/layout.props.default.json +12 -4
  251. package/{es/lowcode/engine/meta/components/layout.json → lib/lowcode/engine/meta/layout.props.json} +107 -106
  252. package/lib/lowcode/engine/meta/link.props.default.json +13 -5
  253. package/{es/lowcode/engine/meta/components/link.json → lib/lowcode/engine/meta/link.props.json} +111 -110
  254. package/lib/lowcode/engine/meta/section.props.default.json +16 -8
  255. package/{es/lowcode/engine/meta/components/section.json → lib/lowcode/engine/meta/section.props.json} +107 -106
  256. package/lib/lowcode/engine/meta/split.props.default.json +12 -4
  257. package/lib/lowcode/engine/meta/{components/split.json → split.props.json} +71 -70
  258. package/lib/lowcode/engine/meta/table.props.default.json +29 -9
  259. package/lib/lowcode/engine/meta/table.props.json +236 -0
  260. package/lib/lowcode/engine/meta/tabs.props.default.json +17 -9
  261. package/lib/lowcode/engine/meta/{components/tabs.json → tabs.props.json} +140 -139
  262. package/lib/lowcode/engine/meta/text.props.default.json +11 -3
  263. package/{es/lowcode/engine/meta/components/text.json → lib/lowcode/engine/meta/text.props.json} +65 -64
  264. package/lib/lowcode/engine/meta/tree.props.default.json +16 -8
  265. package/lib/lowcode/engine/meta/{components/tree.json → tree.props.json} +156 -155
  266. package/lib/lowcode/engine/provider/ContextProvider.js +46 -41
  267. package/lib/lowcode/engine/provider/EventBusProvider.js +2 -2
  268. package/lib/lowcode/engine/tools/dataProcess.js +86 -8
  269. package/lib/lowcode/engine/tools/helper.js +70 -0
  270. package/lib/lowcode/engine/tools/usePromiseState.js +31 -0
  271. package/lib/lowcode/index.js +5 -1
  272. package/lib/lowcode/painter/Design.js +39 -84
  273. package/lib/lowcode/painter/DesignOperator.js +278 -0
  274. package/lib/lowcode/painter/DesignToolbar.js +99 -0
  275. package/lib/lowcode/painter/I18n.js +203 -2
  276. package/lib/lowcode/painter/Outline.js +62 -53
  277. package/lib/lowcode/painter/Panel.js +238 -1
  278. package/lib/lowcode/painter/Ribbon.js +63 -64
  279. package/lib/lowcode/painter/components/Collapse.js +97 -0
  280. package/lib/lowcode/painter/components/ColorInput.js +132 -0
  281. package/lib/lowcode/painter/components/ListEditor.js +95 -0
  282. package/lib/lowcode/painter/components/NumberInput.js +155 -0
  283. package/lib/lowcode/painter/components/PanelItem.js +84 -11
  284. package/lib/lowcode/painter/components/PopConfirm.js +29 -0
  285. package/lib/lowcode/painter/components/PopForm.js +77 -0
  286. package/lib/lowcode/painter/components/RuleInput.js +9 -7
  287. package/lib/lowcode/painter/components/SortBox.js +99 -0
  288. package/lib/lowcode/painter/components/actions-editor/ActionEditor.js +155 -0
  289. package/lib/lowcode/painter/components/actions-editor/index.js +178 -0
  290. package/lib/lowcode/painter/components/code-editor/BaseEditor.js +103 -0
  291. package/lib/lowcode/painter/components/code-editor/CssEditor.js +48 -0
  292. package/lib/lowcode/painter/components/code-editor/FullScreenEditor.js +94 -0
  293. package/lib/lowcode/painter/components/code-editor/JSEditor.js +117 -0
  294. package/lib/lowcode/painter/components/code-editor/index.js +20 -0
  295. package/lib/lowcode/painter/index.js +35 -3
  296. package/lib/lowcode/painter/panel-section/ButtonType.js +46 -0
  297. package/lib/lowcode/painter/panel-section/DataSetSelector.js +69 -0
  298. package/lib/lowcode/painter/panel-section/Icon.js +54 -0
  299. package/lib/lowcode/painter/panel-section/IconSelector.js +141 -0
  300. package/lib/lowcode/painter/panel-section/LayoutRatio.js +56 -48
  301. package/lib/lowcode/painter/panel-section/StylePanel/BackGround.js +68 -0
  302. package/lib/lowcode/painter/panel-section/StylePanel/Border.js +158 -0
  303. package/lib/lowcode/painter/panel-section/StylePanel/BorderRadius.js +95 -0
  304. package/lib/lowcode/painter/panel-section/StylePanel/BorderRadiusSelector.js +73 -0
  305. package/lib/lowcode/painter/panel-section/StylePanel/BorderSelector.js +73 -0
  306. package/lib/lowcode/painter/panel-section/StylePanel/Display.js +303 -0
  307. package/lib/lowcode/painter/panel-section/StylePanel/DisplaySvg.js +550 -0
  308. package/lib/lowcode/painter/panel-section/StylePanel/Font.js +170 -0
  309. package/lib/lowcode/painter/panel-section/StylePanel/FontEditor.js +392 -0
  310. package/lib/lowcode/painter/panel-section/StylePanel/GapSelector.js +85 -0
  311. package/lib/lowcode/painter/panel-section/StylePanel/HighLightPanel.js +29 -0
  312. package/lib/lowcode/painter/panel-section/StylePanel/HighLigthtSpan.js +26 -0
  313. package/lib/lowcode/painter/panel-section/StylePanel/HightLightSvg.js +29 -0
  314. package/lib/lowcode/painter/panel-section/StylePanel/MainPanel.js +103 -0
  315. package/lib/lowcode/painter/panel-section/StylePanel/Margin.js +67 -0
  316. package/lib/lowcode/painter/panel-section/StylePanel/Opacity.js +57 -0
  317. package/lib/lowcode/painter/panel-section/StylePanel/Padding.js +68 -0
  318. package/lib/lowcode/painter/panel-section/StylePanel/Pointer.js +48 -0
  319. package/lib/lowcode/painter/panel-section/StylePanel/Shadow.js +224 -0
  320. package/lib/lowcode/painter/panel-section/StylePanel/Size.js +59 -0
  321. package/lib/lowcode/painter/panel-section/StylePanel/StyleContext.js +159 -0
  322. package/lib/lowcode/painter/panel-section/StylePanel/StyleRow.js +22 -0
  323. package/lib/lowcode/painter/panel-section/StylePanel/WidthHeight.js +58 -0
  324. package/lib/lowcode/painter/panel-section/StylePanel/index.js +35 -0
  325. package/lib/lowcode/painter/panel-section/TabItems.js +215 -0
  326. package/lib/lowcode/painter/panel-section/TableActions.js +26 -0
  327. package/lib/lowcode/painter/panel-section/TableZebra.js +21 -0
  328. package/lib/lowcode/painter/panel-section/WidthHeight.js +46 -0
  329. package/lib/lowcode/painter/services/I18n.js +95 -0
  330. package/lib/lowcode/painter/style/actions-editor.less +16 -0
  331. package/lib/lowcode/painter/style/border-editor.less +36 -0
  332. package/lib/lowcode/painter/style/border-radius-selector.less +43 -0
  333. package/lib/lowcode/painter/style/border-selector.less +40 -0
  334. package/lib/lowcode/painter/style/button-type.less +5 -0
  335. package/lib/lowcode/painter/style/collapse.less +22 -0
  336. package/lib/lowcode/painter/style/color-input.less +19 -0
  337. package/lib/lowcode/painter/style/design.less +116 -5
  338. package/lib/lowcode/painter/style/display.less +17 -0
  339. package/lib/lowcode/painter/style/font-editor.less +9 -0
  340. package/lib/lowcode/painter/style/fullscreen-editor.less +17 -0
  341. package/lib/lowcode/painter/style/icon-selector.less +22 -0
  342. package/lib/lowcode/painter/style/icon.less +11 -0
  343. package/lib/lowcode/painter/style/index.less +0 -1
  344. package/lib/lowcode/painter/style/layout-ratio.less +1 -1
  345. package/lib/lowcode/painter/style/list-editor.less +59 -0
  346. package/lib/lowcode/painter/style/number-input.less +17 -0
  347. package/lib/lowcode/painter/style/outline.less +2 -0
  348. package/lib/lowcode/painter/style/panel-item.less +45 -12
  349. package/lib/lowcode/painter/style/panel.less +124 -0
  350. package/lib/lowcode/painter/style/pop-confirm.less +10 -0
  351. package/lib/lowcode/painter/style/pop-form.less +20 -0
  352. package/lib/lowcode/painter/style/ribbon.less +1 -0
  353. package/lib/lowcode/painter/style/style-panel.less +37 -0
  354. package/lib/lowcode/painter/style/tabitems.less +90 -0
  355. package/lib/lowcode/view/Canvas.js +84 -75
  356. package/lib/lowcode/view/Page.js +9 -27
  357. package/lib/lowcode/view/index.js +5 -6
  358. package/lib/lowcode/view/lc-components/Box/FunctionDesign.js +27 -0
  359. package/lib/lowcode/view/lc-components/Box/FunctionLive.js +16 -0
  360. package/lib/lowcode/view/lc-components/Box/index.js +23 -6
  361. package/lib/lowcode/view/lc-components/Box/index.less +15 -0
  362. package/lib/lowcode/view/lc-components/Box/meta.json +42 -0
  363. package/lib/lowcode/view/lc-components/Button/FunctionDesign.js +28 -0
  364. package/lib/lowcode/view/lc-components/Button/FunctionLive.js +16 -0
  365. package/lib/lowcode/view/lc-components/Button/index.js +76 -8
  366. package/lib/lowcode/view/lc-components/Button/meta.json +127 -0
  367. package/lib/lowcode/view/lc-components/Button/style.less +3 -0
  368. package/lib/lowcode/view/lc-components/CardList/FunctionDesign.js +16 -0
  369. package/lib/lowcode/view/lc-components/CardList/FunctionLive.js +16 -0
  370. package/{es/lowcode/engine/meta/components/table.json → lib/lowcode/view/lc-components/CardList/meta.json} +11 -28
  371. package/lib/lowcode/view/lc-components/Dialog/FunctionDesign.js +62 -0
  372. package/lib/lowcode/view/lc-components/Dialog/FunctionLive.js +16 -0
  373. package/lib/lowcode/view/lc-components/Dialog/index.js +20 -11
  374. package/lib/lowcode/view/lc-components/Dialog/index.less +1 -1
  375. package/lib/lowcode/view/lc-components/Dialog/meta.json +121 -0
  376. package/lib/lowcode/view/lc-components/Drawer/FunctionDesign.js +27 -0
  377. package/lib/lowcode/view/lc-components/Drawer/FunctionLive.js +16 -0
  378. package/lib/lowcode/view/lc-components/Drawer/index.js +22 -9
  379. package/lib/lowcode/view/lc-components/Drawer/index.less +7 -0
  380. package/lib/lowcode/view/lc-components/Drawer/meta.json +144 -0
  381. package/lib/lowcode/view/lc-components/Form/FunctionDesign.js +16 -0
  382. package/lib/lowcode/view/lc-components/Form/FunctionLive.js +16 -0
  383. package/lib/lowcode/view/lc-components/Form/meta.json +117 -0
  384. package/lib/lowcode/view/lc-components/Iframe/FunctionDesign.js +16 -0
  385. package/lib/lowcode/view/lc-components/Iframe/FunctionLive.js +16 -0
  386. package/lib/lowcode/view/lc-components/Iframe/meta.json +32 -0
  387. package/lib/lowcode/view/lc-components/ImEx/FunctionDesign.js +16 -0
  388. package/lib/lowcode/view/lc-components/ImEx/FunctionLive.js +16 -0
  389. package/lib/lowcode/view/lc-components/ImEx/meta.json +82 -0
  390. package/lib/lowcode/view/lc-components/Image/FunctionDesign.js +16 -0
  391. package/lib/lowcode/view/lc-components/Image/FunctionLive.js +16 -0
  392. package/lib/lowcode/view/lc-components/Image/meta.json +114 -0
  393. package/lib/lowcode/view/lc-components/JSX/FunctionDesign.js +16 -0
  394. package/lib/lowcode/view/lc-components/JSX/FunctionLive.js +16 -0
  395. package/lib/lowcode/view/lc-components/JSX/meta.json +25 -0
  396. package/lib/lowcode/view/lc-components/Layout/FunctionDesign.js +82 -0
  397. package/lib/lowcode/view/lc-components/Layout/FunctionLive.js +22 -0
  398. package/lib/lowcode/view/lc-components/Layout/index.js +41 -8
  399. package/lib/lowcode/view/lc-components/Layout/index.less +5 -0
  400. package/lib/lowcode/view/lc-components/Layout/meta.json +108 -0
  401. package/lib/lowcode/view/lc-components/Link/FunctionDesign.js +16 -0
  402. package/lib/lowcode/view/lc-components/Link/FunctionLive.js +16 -0
  403. package/lib/lowcode/view/lc-components/Link/meta.json +112 -0
  404. package/lib/lowcode/view/lc-components/Section/FunctionDesign.js +16 -0
  405. package/lib/lowcode/view/lc-components/Section/FunctionLive.js +16 -0
  406. package/lib/lowcode/view/lc-components/Section/meta.json +108 -0
  407. package/lib/lowcode/view/lc-components/Split/FunctionDesign.js +16 -0
  408. package/lib/lowcode/view/lc-components/Split/FunctionLive.js +16 -0
  409. package/lib/lowcode/view/lc-components/Split/meta.json +72 -0
  410. package/lib/lowcode/view/lc-components/Table/FunctionDesign.js +25 -0
  411. package/lib/lowcode/view/lc-components/Table/FunctionLive.js +16 -0
  412. package/lib/lowcode/view/lc-components/Table/index.js +228 -8
  413. package/lib/lowcode/view/lc-components/Table/meta.json +225 -0
  414. package/lib/lowcode/view/lc-components/Tabs/FunctionDesign.js +16 -0
  415. package/lib/lowcode/view/lc-components/Tabs/FunctionLive.js +16 -0
  416. package/lib/lowcode/view/lc-components/Tabs/meta.json +141 -0
  417. package/lib/lowcode/view/lc-components/Text/FunctionDesign.js +16 -0
  418. package/lib/lowcode/view/lc-components/Text/FunctionLive.js +16 -0
  419. package/lib/lowcode/view/lc-components/Text/meta.json +66 -0
  420. package/lib/lowcode/view/lc-components/Tree/FunctionDesign.js +16 -0
  421. package/lib/lowcode/view/lc-components/Tree/FunctionLive.js +16 -0
  422. package/lib/lowcode/view/lc-components/Tree/meta.json +157 -0
  423. package/lib/lowcode/view/lc-components/Wrapper.js +30 -21
  424. package/lib/lowcode/view/style/page.less +0 -1
  425. package/lib/upload/Form/gridForm.js +1 -1
  426. package/lib/utils/grid.js +6 -5
  427. package/package.json +15 -6
  428. package/es/lowcode/engine/meta/modal.props.default.json +0 -11
  429. package/es/lowcode/engine/tools/lcid.js +0 -16
  430. package/es/lowcode/painter/panel-section/Radio.js +0 -58
  431. package/lib/lowcode/engine/meta/modal.props.default.json +0 -11
  432. package/lib/lowcode/engine/tools/lcid.js +0 -22
  433. package/lib/lowcode/painter/panel-section/Radio.js +0 -65
@@ -0,0 +1,224 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = _default;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _StyleContext = require("./StyleContext");
12
+ var _utils = require("@luck-design-biz/base/utils");
13
+ var _antd = require("luck-design/antd");
14
+ var _ColorInput = _interopRequireDefault(require("../../components/ColorInput"));
15
+ var _Size = _interopRequireDefault(require("./Size"));
16
+ var _HighLightPanel = _interopRequireDefault(require("./HighLightPanel"));
17
+ var Option = _antd.Select.Option;
18
+ var field = 'box-shadow';
19
+ var textRelatedStyles = [field];
20
+ var presetsShadowStyle = [{
21
+ id: 'big',
22
+ value: 'rgba(31, 56, 88, 0.2) 4px 4px 15px 0px'
23
+ }, {
24
+ id: 'middle',
25
+ value: 'rgba(31, 56, 88, 0.2) 2px 2px 10px 0px'
26
+ }, {
27
+ id: 'small',
28
+ value: 'rgba(31, 56, 88, 0.2) 1px 1px 4px 0px'
29
+ }];
30
+
31
+ /**
32
+ * 阴影样式设置组件
33
+ */
34
+ function _default() {
35
+ var style = (0, _StyleContext.useStyle)();
36
+ var dispatch = (0, _StyleContext.useStyleDispatch)();
37
+ var _useState = (0, _react.useState)(true),
38
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
39
+ collapsed = _useState2[0],
40
+ setCollapsed = _useState2[1];
41
+ var boxShadow = style[field];
42
+ var handleChange = function handleChange(value) {
43
+ if (value) {
44
+ if (value == 'custom') {
45
+ setCollapsed(false);
46
+ value = 'rgba(31, 56, 88, 0.2) 0px 0px 0px 0px';
47
+ } else {
48
+ var matchPreset = presetsShadowStyle.find(function (preset) {
49
+ return preset.id === value;
50
+ });
51
+ if (matchPreset) {
52
+ value = matchPreset.value;
53
+ }
54
+ }
55
+ }
56
+ dispatch({
57
+ type: 'edit',
58
+ payload: {
59
+ id: field,
60
+ value: value
61
+ }
62
+ });
63
+ };
64
+ var selectValue = null;
65
+ if (boxShadow) {
66
+ var matchingPreset = presetsShadowStyle.find(function (preset) {
67
+ return preset.value === boxShadow;
68
+ });
69
+ // 如果找到匹配项,使用其 id,否则设置为 "custom"
70
+ selectValue = matchingPreset ? matchingPreset.id : 'custom';
71
+ }
72
+ return /*#__PURE__*/_react.default.createElement(_HighLightPanel.default, {
73
+ highLightFields: textRelatedStyles,
74
+ addon: /*#__PURE__*/_react.default.createElement(ShowdowDetail, null),
75
+ collapsed: collapsed,
76
+ label: (0, _utils.formatMessage)({
77
+ id: "luckda.lowcode.painter.panel-section.style-panel.box-shadow",
78
+ label: '阴影'
79
+ })
80
+ }, /*#__PURE__*/_react.default.createElement(_antd.Select, {
81
+ size: "small",
82
+ onChange: handleChange,
83
+ value: selectValue
84
+ }, /*#__PURE__*/_react.default.createElement(Option, {
85
+ value: "big"
86
+ }, (0, _utils.formatMessage)({
87
+ id: 'luckda.lowcode.painter.panel-section.style-panel.box-shadow.big',
88
+ label: '大'
89
+ })), /*#__PURE__*/_react.default.createElement(Option, {
90
+ value: "middle"
91
+ }, (0, _utils.formatMessage)({
92
+ id: 'luckda.lowcode.painter.panel-section.style-panel.box-shadow.middle',
93
+ label: '中'
94
+ })), /*#__PURE__*/_react.default.createElement(Option, {
95
+ value: "small"
96
+ }, (0, _utils.formatMessage)({
97
+ id: 'luckda.lowcode.painter.panel-section.style-panel.box-shadow.small',
98
+ label: '小'
99
+ })), /*#__PURE__*/_react.default.createElement(Option, {
100
+ value: null
101
+ }, (0, _utils.formatMessage)({
102
+ id: 'luckda.lowcode.painter.panel-section.style-panel.box-shadow.none',
103
+ label: '无'
104
+ })), /*#__PURE__*/_react.default.createElement(Option, {
105
+ value: "custom"
106
+ }, (0, _utils.formatMessage)({
107
+ id: 'luckda.lowcode.painter.panel-section.style-panel.box-shadow.custom',
108
+ label: '自定义'
109
+ }))));
110
+ }
111
+ var ShowdowDetail = function ShowdowDetail() {
112
+ var style = (0, _StyleContext.useStyle)();
113
+ var dispatch = (0, _StyleContext.useStyleDispatch)();
114
+ var boxShadow = style[field];
115
+ var shadowStyle = parseBoxShadow(boxShadow);
116
+ var handleChange = function handleChange(shadowField, value) {
117
+ shadowStyle[shadowField] = value;
118
+ var shadowValue = composeBoxShadow(shadowStyle);
119
+ dispatch({
120
+ type: 'edit',
121
+ payload: {
122
+ id: field,
123
+ value: shadowValue
124
+ }
125
+ });
126
+ };
127
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_HighLightPanel.default, {
128
+ customStyle: shadowStyle,
129
+ highLightFields: ['color'],
130
+ suppressPadding: true,
131
+ label: (0, _utils.formatMessage)({
132
+ id: 'luckda.lowcode.painter.panel-section.style-panel.box-shadow.detail.color',
133
+ label: '颜色'
134
+ })
135
+ }, /*#__PURE__*/_react.default.createElement(_ColorInput.default, {
136
+ value: shadowStyle['color'],
137
+ onChange: function onChange(value) {
138
+ return handleChange('color', value);
139
+ }
140
+ })), /*#__PURE__*/_react.default.createElement(_HighLightPanel.default, {
141
+ customStyle: shadowStyle,
142
+ highLightFields: ['offsetX'],
143
+ suppressPadding: true,
144
+ label: "X"
145
+ }, /*#__PURE__*/_react.default.createElement(_Size.default, {
146
+ customValue: shadowStyle['offsetX'],
147
+ onChange: function onChange(value) {
148
+ return handleChange('offsetX', value);
149
+ }
150
+ })), /*#__PURE__*/_react.default.createElement(_HighLightPanel.default, {
151
+ customStyle: shadowStyle,
152
+ highLightFields: ['offsetY'],
153
+ suppressPadding: true,
154
+ label: 'Y'
155
+ }, /*#__PURE__*/_react.default.createElement(_Size.default, {
156
+ customValue: shadowStyle['offsetY'],
157
+ onChange: function onChange(value) {
158
+ return handleChange('offsetY', value);
159
+ }
160
+ })), /*#__PURE__*/_react.default.createElement(_HighLightPanel.default, {
161
+ customStyle: shadowStyle,
162
+ highLightFields: ['blurRadius'],
163
+ suppressPadding: true,
164
+ label: 'Blur'
165
+ }, /*#__PURE__*/_react.default.createElement(_Size.default, {
166
+ customValue: shadowStyle['blurRadius'],
167
+ onChange: function onChange(value) {
168
+ return handleChange('blurRadius', value);
169
+ }
170
+ })), /*#__PURE__*/_react.default.createElement(_HighLightPanel.default, {
171
+ customStyle: shadowStyle,
172
+ highLightFields: ['spreadRadius'],
173
+ suppressPadding: true,
174
+ label: 'Spread'
175
+ }, /*#__PURE__*/_react.default.createElement(_Size.default, {
176
+ customValue: shadowStyle['spreadRadius'],
177
+ onChange: function onChange(value) {
178
+ return handleChange('spreadRadius', value);
179
+ }
180
+ })));
181
+ };
182
+ function parseBoxShadow(shadowString) {
183
+ // 检查输入字符串是否为空或仅包含空白字符
184
+ if (!shadowString) {
185
+ return {}; // 或者返回一个空对象或默认值
186
+ }
187
+
188
+ // 移除 "box-shadow:" 前缀和尾部的分号(如果有),然后去除两端空格
189
+ shadowString = shadowString.replace(/^box-shadow:\s*/, '').replace(/;$/, '').trim();
190
+
191
+ // 使用正则表达式匹配 RGBA 颜色值
192
+ var rgbaMatch = shadowString.match(/rgba?\([^)]+\)/);
193
+ var color = rgbaMatch ? rgbaMatch[0] : 'No color found';
194
+
195
+ // 移除颜色值,剩余部分再进行拆分
196
+ var shadowParts = shadowString.replace(color, '').trim().split(/\s+/);
197
+
198
+ // 验证拆分后的部分是否符合预期的数量
199
+ if (shadowParts.length < 4) {
200
+ console.error('Invalid box-shadow format.');
201
+ return {}; // 或者返回一个空对象或默认值
202
+ }
203
+
204
+ // 解析并填充对象
205
+ var shadowObject = {
206
+ color: color,
207
+ offsetX: shadowParts[0],
208
+ offsetY: shadowParts[1],
209
+ blurRadius: shadowParts[2],
210
+ spreadRadius: shadowParts[3]
211
+ };
212
+ return shadowObject;
213
+ }
214
+ function composeBoxShadow(shadowObject) {
215
+ // 从对象中提取各个属性值
216
+ var color = shadowObject.color,
217
+ offsetX = shadowObject.offsetX,
218
+ offsetY = shadowObject.offsetY,
219
+ blurRadius = shadowObject.blurRadius,
220
+ spreadRadius = shadowObject.spreadRadius;
221
+
222
+ // 组合属性值形成 box-shadow 字符串
223
+ return "".concat(color, " ").concat(offsetX !== null && offsetX !== void 0 ? offsetX : 0, " ").concat(offsetY !== null && offsetY !== void 0 ? offsetY : 0, " ").concat(blurRadius !== null && blurRadius !== void 0 ? blurRadius : 0, " ").concat(spreadRadius !== null && spreadRadius !== void 0 ? spreadRadius : 0);
224
+ }
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = _default;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _StyleContext = require("./StyleContext");
12
+ var _NumberInput = _interopRequireDefault(require("../../components/NumberInput"));
13
+ var _excluded = ["field", "onChange", "placeholder", "customValue", "customOption"];
14
+ /**
15
+ * Size设置通用组件
16
+ */
17
+ function _default(_ref) {
18
+ var field = _ref.field,
19
+ _onChange = _ref.onChange,
20
+ placeholder = _ref.placeholder,
21
+ customValue = _ref.customValue,
22
+ customOption = _ref.customOption,
23
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
24
+ var style = (0, _StyleContext.useStyle)();
25
+ var dispatch = (0, _StyleContext.useStyleDispatch)();
26
+ var handleChange = function handleChange(field, value) {
27
+ dispatch({
28
+ type: 'edit',
29
+ payload: {
30
+ id: field,
31
+ value: value
32
+ }
33
+ });
34
+ };
35
+ return /*#__PURE__*/_react.default.createElement(_NumberInput.default, (0, _extends2.default)({
36
+ options: customOption !== null && customOption !== void 0 ? customOption : sizeOptions,
37
+ value: customValue !== null && customValue !== void 0 ? customValue : style[field],
38
+ min: 0,
39
+ max: 10000,
40
+ onChange: function onChange(value) {
41
+ if (_onChange) {
42
+ _onChange(value);
43
+ } else {
44
+ handleChange(field, value);
45
+ }
46
+ },
47
+ placeholder: placeholder
48
+ }, rest));
49
+ }
50
+ var sizeOptions = [{
51
+ label: 'px',
52
+ value: 'px'
53
+ }, {
54
+ label: '%',
55
+ value: '%'
56
+ }, {
57
+ label: 'em',
58
+ value: 'em'
59
+ }];
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.StyleProvider = StyleProvider;
8
+ exports.styleToCSS = exports.isModified = void 0;
9
+ exports.useEditor = useEditor;
10
+ exports.useStyle = useStyle;
11
+ exports.useStyleDispatch = useStyleDispatch;
12
+ var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
13
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
14
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
+ var _react = require("react");
16
+ var _postcss = _interopRequireDefault(require("postcss"));
17
+ var _lodash = require("lodash");
18
+ var _ahooks = require("ahooks");
19
+ var StyleContext = /*#__PURE__*/(0, _react.createContext)(null);
20
+ var StyleDispatchContext = /*#__PURE__*/(0, _react.createContext)(null);
21
+ var EditorContext = /*#__PURE__*/(0, _react.createContext)(null);
22
+
23
+ /**
24
+ * 样式上下文组件
25
+ */
26
+ function StyleProvider(_ref) {
27
+ var onChange = _ref.onChange,
28
+ children = _ref.children,
29
+ value = _ref.value;
30
+ var editorRef = (0, _react.useRef)(null);
31
+ var styleReducer = function styleReducer(state, action) {
32
+ switch (action.type) {
33
+ case 'edit':
34
+ {
35
+ var field = action.payload.id;
36
+ var _value = action.payload.value;
37
+ var newState = (0, _objectSpread2.default)({}, state);
38
+ if (!(0, _lodash.isNil)(_value) && _value !== '') newState[field] = _value;else delete newState[field];
39
+ if (editorRef.current) {
40
+ editorRef.current.editor.setValue(styleToCSS(newState));
41
+ }
42
+ return newState;
43
+ }
44
+ case 'new':
45
+ {
46
+ var _newState = (0, _objectSpread2.default)({}, action.payload);
47
+ if (editorRef.current) {
48
+ editorRef.current.editor.setValue(styleToCSS(_newState));
49
+ }
50
+ return _newState;
51
+ }
52
+ case 'code':
53
+ return parseCSS(action.payload);
54
+ default:
55
+ throw new Error();
56
+ }
57
+ };
58
+ var _useReducer = (0, _react.useReducer)(styleReducer, parseCSS(value)),
59
+ _useReducer2 = (0, _slicedToArray2.default)(_useReducer, 2),
60
+ style = _useReducer2[0],
61
+ dispatch = _useReducer2[1];
62
+ (0, _ahooks.useUpdateEffect)(function () {
63
+ if (style) {
64
+ var css = styleToCSS(style);
65
+ if (onChange) onChange(style, removeRootBrackets(css));
66
+ }
67
+ }, [style]);
68
+ return /*#__PURE__*/React.createElement(StyleContext.Provider, {
69
+ value: style
70
+ }, /*#__PURE__*/React.createElement(EditorContext.Provider, {
71
+ value: editorRef
72
+ }, /*#__PURE__*/React.createElement(StyleDispatchContext.Provider, {
73
+ value: dispatch
74
+ }, children)));
75
+ }
76
+ function useStyle() {
77
+ return (0, _react.useContext)(StyleContext);
78
+ }
79
+ function useStyleDispatch() {
80
+ return (0, _react.useContext)(StyleDispatchContext);
81
+ }
82
+ function useEditor() {
83
+ return (0, _react.useContext)(EditorContext);
84
+ }
85
+ function removeRootBrackets(cssText) {
86
+ // 正则表达式匹配 :root 选择器及其大括号,保留里面的内容
87
+ var rootRegex = /:root\s*\{([^}]*)\}/;
88
+
89
+ // 替换 :root 和大括号,但保留其中的内容
90
+ return cssText.replace(rootRegex, function (match, innerContent) {
91
+ return innerContent.trim();
92
+ });
93
+ }
94
+ var parseCSS = function parseCSS(cssString) {
95
+ // 创建一个空对象来存储解析后的样式
96
+ var parsedStyles = {};
97
+ if (cssString) {
98
+ try {
99
+ // 解析CSS字符串
100
+ var ast = _postcss.default.parse(cssString);
101
+
102
+ // 遍历AST中的每个规则
103
+ ast.walkDecls(function (decl) {
104
+ // 将每个声明的属性和值存储在对象中
105
+ parsedStyles[decl.prop] = decl.value;
106
+ });
107
+ } catch (e) {
108
+ console.error(e);
109
+ }
110
+ }
111
+
112
+ // 返回包含所有样式的对象
113
+ return parsedStyles;
114
+ };
115
+ var styleToCSS = exports.styleToCSS = function styleToCSS(styleObject) {
116
+ // Create a PostCSS root node
117
+ var root = _postcss.default.root();
118
+
119
+ // Create a new rule for the :root selector
120
+ var rule = _postcss.default.rule({
121
+ selector: ':root'
122
+ });
123
+
124
+ // Iterate over the style object and add declarations to the rule
125
+ Object.keys(styleObject).forEach(function (property) {
126
+ var value = styleObject[property];
127
+ var decl = _postcss.default.decl({
128
+ prop: property.replace(/([A-Z])/g, '-$1').toLowerCase(),
129
+ // Convert camelCase to kebab-case
130
+ value: value
131
+ });
132
+ rule.append(decl);
133
+ });
134
+
135
+ // Append the rule to the root
136
+ root.append(rule);
137
+
138
+ // Convert the root to a CSS string
139
+ return root.toString();
140
+ };
141
+ var isModified = exports.isModified = function isModified(style, textRelatedStyles) {
142
+ // 遍历数组中的每个键
143
+ var _iterator = (0, _createForOfIteratorHelper2.default)(textRelatedStyles),
144
+ _step;
145
+ try {
146
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
147
+ var prop = _step.value;
148
+ // 检查style对象中是否有该键,并且该键对应的值不是undefined
149
+ if (style.hasOwnProperty(prop) && style[prop] !== undefined) {
150
+ return true; // 如果找到至少一个键有值,返回true
151
+ }
152
+ }
153
+ } catch (err) {
154
+ _iterator.e(err);
155
+ } finally {
156
+ _iterator.f();
157
+ }
158
+ return false; // 如果没有找到任何一个键有值,返回false
159
+ };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = _default;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _stylePanel = _interopRequireDefault(require("../../style/style-panel.less"));
12
+ var _excluded = ["children"];
13
+ /**
14
+ * 样式行通用组件
15
+ */
16
+ function _default(_ref) {
17
+ var children = _ref.children,
18
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
19
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
20
+ className: _stylePanel.default['row']
21
+ }, rest), children);
22
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = _default;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _NumberInput = _interopRequireDefault(require("../../components/NumberInput"));
12
+ var _StyleContext = require("./StyleContext");
13
+ var _HighLightPanel = _interopRequireDefault(require("./HighLightPanel"));
14
+ var _excluded = ["field", "label", "placeholder"];
15
+ var options = [{
16
+ label: 'px',
17
+ value: 'px'
18
+ }, {
19
+ label: '%',
20
+ value: '%'
21
+ }, {
22
+ label: 'A',
23
+ value: 'auto'
24
+ }];
25
+
26
+ /**
27
+ * 宽高设置控件
28
+ */
29
+ function _default(_ref) {
30
+ var field = _ref.field,
31
+ label = _ref.label,
32
+ placeholder = _ref.placeholder,
33
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
34
+ var style = (0, _StyleContext.useStyle)();
35
+ var dispatch = (0, _StyleContext.useStyleDispatch)();
36
+ var handleChange = function handleChange(field, value) {
37
+ dispatch({
38
+ type: 'edit',
39
+ payload: {
40
+ id: field,
41
+ value: value
42
+ }
43
+ });
44
+ };
45
+ return /*#__PURE__*/_react.default.createElement(_HighLightPanel.default, {
46
+ label: label,
47
+ highLightFields: [field]
48
+ }, /*#__PURE__*/_react.default.createElement(_NumberInput.default, (0, _extends2.default)({
49
+ options: options,
50
+ value: style[field],
51
+ min: 0,
52
+ max: 10000,
53
+ onChange: function onChange(value) {
54
+ return handleChange(field, value);
55
+ },
56
+ placeholder: placeholder
57
+ }, rest)));
58
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _StyleContext = require("./StyleContext");
10
+ var _MainPanel = _interopRequireDefault(require("./MainPanel"));
11
+ /**
12
+ * StylePanel 组件是一个 React 组件,用于提供样式设置主面板。
13
+ * 该组件通过 StyleProvider 将样式变更和当前样式值传递给其子组件。
14
+ *
15
+ * @component
16
+ * @example
17
+ * const handleChange = (newValue) => console.log(newValue);
18
+ * const initialValue = "dark";
19
+ * <StylePanel onChange={handleChange} value={initialValue} />
20
+ *
21
+ * @param {Object} props - 组件的属性。
22
+ * @param {Function} props.onChange - 当样式变更时调用的函数,该函数接受新的样式值作为参数。
23
+ * @param {any} props.value - 样式字符串
24
+ *
25
+ * @returns {ReactElement} 返回一个 React 元素,其中包含了 StyleProvider 和 MainPanel 组件。
26
+ */
27
+ var StylePanel = function StylePanel(_ref) {
28
+ var onChange = _ref.onChange,
29
+ value = _ref.value;
30
+ return /*#__PURE__*/_react.default.createElement(_StyleContext.StyleProvider, {
31
+ onChange: onChange,
32
+ value: value
33
+ }, /*#__PURE__*/_react.default.createElement(_MainPanel.default, null));
34
+ };
35
+ var _default = exports.default = StylePanel;