@gct-paas/design 0.1.4-dev.9 → 0.1.5-dev.0

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 (538) hide show
  1. package/dist/index.min.css +2 -1
  2. package/dist/loader.esm.min.js +1 -0
  3. package/es/_virtual/_plugin-vue_export-helper.mjs +7 -8
  4. package/es/_virtual/_rolldown/runtime.mjs +13 -0
  5. package/es/components/design-icon-button/design-icon-button.d.ts +2 -2
  6. package/es/components/design-icon-button/design-icon-button.mjs +95 -147
  7. package/es/components/design-save-tip/design-save-tip.mjs +76 -102
  8. package/es/components/design-step-check/design-step-check.mjs +92 -118
  9. package/es/components/design-view-layout/design-view-layout.css +11 -11
  10. package/es/components/design-view-layout/design-view-layout.mjs +134 -204
  11. package/es/components/editor/index.mjs +13 -15
  12. package/es/components/editor/style/border-editor/border-box.vue.mjs +7 -0
  13. package/es/components/editor/style/border-editor/border-box.vue_vue_type_script_setup_true_name_border-box_lang.mjs +245 -0
  14. package/es/components/editor/style/border-editor/border-editor.vue.mjs +7 -0
  15. package/es/components/editor/style/border-editor/border-editor.vue_vue_type_script_setup_true_lang.mjs +57 -0
  16. package/es/components/editor/style/border-editor/border-radius.vue.mjs +7 -0
  17. package/es/components/editor/style/border-editor/border-radius.vue_vue_type_script_setup_true_lang.mjs +177 -0
  18. package/es/components/editor/style/border-editor/util.mjs +48 -70
  19. package/es/components/editor/style/font-editor/align-group.vue.mjs +7 -0
  20. package/es/components/editor/style/font-editor/align-group.vue_vue_type_script_setup_true_name_align-group_lang.mjs +54 -0
  21. package/es/components/editor/style/font-editor/font-editor.vue.mjs +5 -72
  22. package/es/components/editor/style/font-editor/font-editor.vue_vue_type_script_setup_true_name_font-editor_lang.mjs +61 -0
  23. package/es/components/editor/style/font-editor/font-style-group.vue.mjs +7 -0
  24. package/es/components/editor/style/font-editor/font-style-group.vue_vue_type_script_setup_true_lang.mjs +72 -0
  25. package/es/components/editor/style/font-editor/util.mjs +10 -10
  26. package/es/components/editor/style/position-editor/position-editor.vue.mjs +7 -0
  27. package/es/components/editor/style/position-editor/position-editor.vue_vue_type_script_setup_true_name_position-editor_lang.mjs +193 -0
  28. package/es/components/editor/style/spacing-editor/spacing-editor.vue.mjs +7 -0
  29. package/es/components/editor/style/spacing-editor/spacing-editor.vue_vue_type_script_setup_true_lang.mjs +262 -0
  30. package/es/components/field-cascader/index.d.ts +2 -0
  31. package/es/components/field-cascader/index.mjs +1 -0
  32. package/es/components/field-cascader/src/FieldCascader.vue.d.ts +87 -0
  33. package/es/components/field-cascader/src/FieldCascader.vue.mjs +6 -0
  34. package/es/components/field-cascader/src/FieldCascader.vue_vue_type_script_setup_true_lang.mjs +115 -0
  35. package/es/components/field-cascader/src/FieldCascader.vue_vue_type_style_index_0_lang.css +69 -0
  36. package/es/components/field-cascader/src/SearchInput.vue.d.ts +11 -0
  37. package/es/components/field-cascader/src/SearchInput.vue.mjs +7 -0
  38. package/es/components/field-cascader/src/SearchInput.vue_vue_type_script_setup_true_lang.mjs +38 -0
  39. package/es/components/field-cascader/src/SearchInput.vue_vue_type_style_index_0_scoped_512c4b38_lang.css +9 -0
  40. package/es/components/field-cascader/src/hooks.d.ts +129 -0
  41. package/es/components/field-cascader/src/hooks.mjs +163 -0
  42. package/es/components/field-transfer/components/Cascader/FieldCascader.d.ts +25 -0
  43. package/es/components/field-transfer/components/Cascader/FieldCascader.mjs +150 -0
  44. package/es/components/field-transfer/components/Transfer/AdvancedColumnSetting.d.ts +46 -0
  45. package/es/components/field-transfer/components/Transfer/AdvancedColumnSetting.mjs +45 -0
  46. package/es/components/field-transfer/components/Transfer/AdvancedTransfer.d.ts +39 -0
  47. package/es/components/field-transfer/components/Transfer/AdvancedTransfer.mjs +124 -0
  48. package/es/components/field-transfer/components/Transfer/FieldTransfer.d.ts +83 -0
  49. package/es/components/field-transfer/components/Transfer/FieldTransfer.mjs +112 -0
  50. package/es/components/field-transfer/components/Transfer/TransferTree.d.ts +62 -0
  51. package/es/components/field-transfer/components/Transfer/TransferTree.mjs +84 -0
  52. package/es/components/field-transfer/components/Transfer/TreeItem.d.ts +17 -0
  53. package/es/components/field-transfer/components/Transfer/TreeItem.mjs +25 -0
  54. package/es/components/field-transfer/components/field-transfer-modal.vue.d.ts +43 -0
  55. package/es/components/field-transfer/components/field-transfer-modal.vue.mjs +7 -0
  56. package/es/components/field-transfer/components/field-transfer-modal.vue_vue_type_script_setup_true_name_field-transfer-modal_lang.mjs +166 -0
  57. package/es/components/field-transfer/components/field-transfer-modal.vue_vue_type_style_index_0_scoped_0c9dd8a1_lang.css +5 -0
  58. package/es/components/field-transfer/components/modal-wrapper.vue.d.ts +19 -0
  59. package/es/components/field-transfer/components/modal-wrapper.vue.mjs +5 -0
  60. package/es/components/field-transfer/components/modal-wrapper.vue_vue_type_script_setup_true_name_modal-wrapper_lang.mjs +27 -0
  61. package/es/components/field-transfer/hooks/useTreeData.d.ts +139 -0
  62. package/es/components/field-transfer/hooks/useTreeData.mjs +136 -0
  63. package/es/components/field-transfer/index.d.ts +21 -0
  64. package/es/components/field-transfer/index.mjs +1 -0
  65. package/es/components/field-transfer/less/AdvancedTransfer.css +60 -0
  66. package/es/components/field-transfer/less/FieldCascader.css +57 -0
  67. package/es/components/field-transfer/less/TransferTree.css +86 -0
  68. package/es/components/field-transfer/less/TreeItem.css +29 -0
  69. package/es/components/field-transfer/useFieldTransfer.d.ts +47 -0
  70. package/es/components/field-transfer/useFieldTransfer.mjs +48 -0
  71. package/es/components/field-transfer/utils/tree-tool.d.ts +6 -0
  72. package/es/components/field-transfer/utils/tree-tool.mjs +62 -0
  73. package/es/components/icon/downleft-icon.vue.mjs +23 -11
  74. package/es/components/icon/downleft-icon.vue_vue_type_script_lang.mjs +9 -0
  75. package/es/components/icon/downright-icon.vue.mjs +23 -11
  76. package/es/components/icon/downright-icon.vue_vue_type_script_lang.mjs +9 -0
  77. package/es/components/icon/upleft-icon.vue.mjs +23 -11
  78. package/es/components/icon/upleft-icon.vue_vue_type_script_lang.mjs +9 -0
  79. package/es/components/icon/upright-icon.vue.mjs +23 -11
  80. package/es/components/icon/upright-icon.vue_vue_type_script_lang.mjs +9 -0
  81. package/es/components/index.d.ts +3 -0
  82. package/es/components/index.mjs +23 -26
  83. package/es/components/mobile-container/mobile-container.d.ts +3 -0
  84. package/es/components/mobile-container/mobile-container.mjs +39 -78
  85. package/es/components/modal-name-editor/modal-name-editor.d.ts +2 -2
  86. package/es/components/modal-name-editor/modal-name-editor.mjs +132 -171
  87. package/es/components/user-occupy/index.d.ts +4 -0
  88. package/es/components/user-occupy/index.mjs +3 -0
  89. package/es/components/user-occupy/occupy.const.d.ts +4 -0
  90. package/es/components/user-occupy/occupy.const.mjs +7 -0
  91. package/es/components/user-occupy/useUserOccupy.d.ts +38 -0
  92. package/es/components/user-occupy/useUserOccupy.mjs +162 -0
  93. package/es/components/user-occupy/user-lock.vue.d.ts +2 -0
  94. package/es/components/user-occupy/user-lock.vue.mjs +7 -0
  95. package/es/components/user-occupy/user-lock.vue_vue_type_script_setup_true_lang.mjs +16 -0
  96. package/es/components/user-occupy/user-lock.vue_vue_type_style_index_0_scoped_b40d46ff_lang.css +29 -0
  97. package/es/components/user-occupy/user-occupy.vue.d.ts +2 -0
  98. package/es/components/user-occupy/user-occupy.vue.mjs +7 -0
  99. package/es/components/user-occupy/user-occupy.vue_vue_type_script_setup_true_lang.mjs +34 -0
  100. package/es/components/user-occupy/user-occupy.vue_vue_type_style_index_0_scoped_24cb9749_lang.css +25 -0
  101. package/es/constant/design-editor-type.mjs +53 -14
  102. package/es/constant/index.d.ts +0 -26
  103. package/es/constant/index.mjs +241 -72
  104. package/es/constant/page-designer.d.ts +1 -12
  105. package/es/constant/page-designer.mjs +58 -51
  106. package/es/create-app-vue.mjs +10 -8
  107. package/es/data/design-container-node/design-container-node.d.ts +1 -1
  108. package/es/data/design-container-node/design-container-node.mjs +15 -5
  109. package/es/data/design-editor-node/design-editor-node.d.ts +1 -1
  110. package/es/data/design-editor-node/design-editor-node.mjs +18 -7
  111. package/es/data/design-node/design-node.d.ts +1 -1
  112. package/es/data/design-node/design-node.mjs +60 -65
  113. package/es/data/index.mjs +3 -0
  114. package/es/hooks/design-view/constants/style-editor.const.mjs +60 -50
  115. package/es/hooks/design-view/design-state.d.ts +291 -132
  116. package/es/hooks/design-view/design-state.mjs +98 -81
  117. package/es/hooks/design-view/designer/useDesignCache.mjs +45 -24
  118. package/es/hooks/design-view/designer/useDesignHistory.mjs +107 -99
  119. package/es/hooks/design-view/designer/useDesignModal.d.ts +1382 -106
  120. package/es/hooks/design-view/designer/useDesignModal.mjs +106 -77
  121. package/es/hooks/design-view/designer/useDesignPreview.mjs +114 -140
  122. package/es/hooks/design-view/designer/useDesignSave.d.ts +3 -3
  123. package/es/hooks/design-view/designer/useDesignSave.mjs +219 -233
  124. package/es/hooks/design-view/editor/usePropEditor.d.ts +2 -2
  125. package/es/hooks/design-view/editor/usePropEditor.mjs +89 -95
  126. package/es/hooks/design-view/editor/useStyle.mjs +36 -27
  127. package/es/hooks/design-view/editor/useStyleEditor.mjs +80 -73
  128. package/es/hooks/design-view/global/useGlobal.d.ts +154 -68
  129. package/es/hooks/design-view/global/useGlobal.mjs +74 -71
  130. package/es/hooks/design-view/layout/useScope.d.ts +3 -3
  131. package/es/hooks/design-view/layout/useScope.mjs +80 -103
  132. package/es/hooks/design-view/layout/useToolkit.d.ts +50 -22
  133. package/es/hooks/design-view/layout/useToolkit.mjs +301 -312
  134. package/es/hooks/design-view/page/usePage.d.ts +1 -1
  135. package/es/hooks/design-view/page/usePage.mjs +149 -142
  136. package/es/hooks/design-view/page/usePageOccupy.mjs +82 -61
  137. package/es/hooks/design-view/useDesigner.d.ts +1500 -156
  138. package/es/hooks/design-view/useDesigner.mjs +122 -104
  139. package/es/hooks/design-view/utils/color.util.mjs +52 -32
  140. package/es/hooks/design-view/utils/field-schema.util.mjs +90 -93
  141. package/es/hooks/design-view/widget/useSelectedWidget.d.ts +5 -5
  142. package/es/hooks/design-view/widget/useSelectedWidget.mjs +225 -216
  143. package/es/hooks/design-view/widget/useWidget.d.ts +0 -5
  144. package/es/hooks/design-view/widget/useWidget.mjs +91 -118
  145. package/es/hooks/design-view/widget/useWidgetQuery.mjs +103 -85
  146. package/es/hooks/design-view/widget/useWidgetRegistry.d.ts +2 -2
  147. package/es/hooks/design-view/widget/useWidgetRegistry.mjs +86 -56
  148. package/es/hooks/designer.hooks.mjs +17 -11
  149. package/es/hooks/develop/useCacheHistory.mjs +129 -152
  150. package/es/hooks/develop/useKeyParser.mjs +76 -64
  151. package/es/hooks/index.d.ts +3 -2
  152. package/es/hooks/index.mjs +28 -0
  153. package/es/hooks/use-model-field/use-model-field.mjs +262 -337
  154. package/es/hooks/widgets/useAsyncFields.d.ts +17 -0
  155. package/es/hooks/widgets/useAsyncFields.mjs +143 -0
  156. package/es/hooks/widgets/useFileAttrsHooks.d.ts +28 -0
  157. package/es/hooks/widgets/useFileAttrsHooks.mjs +37 -0
  158. package/es/index.d.ts +1 -3
  159. package/es/index.mjs +92 -114
  160. package/es/interface/actions/i-design-view.actions.d.ts +1 -1
  161. package/es/interface/controller/i-design-view.controller.d.ts +1 -1
  162. package/es/interface/design/i-model-field-node-data/i-model-field-node-data.d.ts +1 -1
  163. package/es/interface/design/index.d.ts +0 -8
  164. package/es/interface/i-drag-item/i-drag-item.d.ts +1 -1
  165. package/es/interface/index.d.ts +0 -2
  166. package/es/interface/state/i-design-view.state.d.ts +1 -1
  167. package/es/loader.d.ts +1 -0
  168. package/es/props/index.d.ts +1 -1
  169. package/es/props/index.mjs +55 -52
  170. package/es/register/designer-register/designer-register.mjs +111 -101
  171. package/es/register/index.d.ts +0 -1
  172. package/es/register/index.mjs +2 -0
  173. package/es/register/material/material.register.mjs +131 -133
  174. package/es/schema/begin-drag/begin-drag.d.ts +13 -0
  175. package/es/schema/begin-drag/begin-drag.mjs +108 -0
  176. package/es/schema/common-config/autofill-editor-config.d.ts +5 -0
  177. package/es/schema/common-config/autofill-editor-config.mjs +34 -0
  178. package/es/schema/common-config/base-button-config.d.ts +3 -0
  179. package/es/schema/common-config/base-button-config.mjs +76 -0
  180. package/es/schema/common-config/button-editor-config.d.ts +4 -0
  181. package/es/schema/common-config/button-editor-config.mjs +134 -0
  182. package/es/schema/common-config/button-props-func.d.ts +5 -0
  183. package/es/schema/common-config/button-props-func.mjs +11 -0
  184. package/es/schema/common-config/column-editor-config.d.ts +6 -0
  185. package/es/schema/common-config/column-editor-config.mjs +28 -0
  186. package/es/schema/common-config/common-event-config.d.ts +6 -0
  187. package/es/schema/common-config/common-event-config.mjs +16 -0
  188. package/es/schema/common-config/common-field-editor-config.d.ts +49 -0
  189. package/es/schema/common-config/common-field-editor-config.mjs +292 -0
  190. package/es/schema/common-config/common-style.d.ts +3 -0
  191. package/es/schema/common-config/common-style.mjs +85 -0
  192. package/es/schema/common-config/display-editor-config.d.ts +3 -0
  193. package/es/schema/common-config/display-editor-config.mjs +70 -0
  194. package/es/schema/common-config/formItem-editor-config.d.ts +2 -0
  195. package/es/schema/common-config/formItem-editor-config.mjs +20 -0
  196. package/es/schema/common-config/permission-editor-config.d.ts +2 -0
  197. package/es/schema/common-config/permission-editor-config.mjs +13 -0
  198. package/es/schema/field/card-list-field.d.ts +4 -0
  199. package/es/schema/field/card-list-field.mjs +269 -0
  200. package/es/schema/field/data-table-column.d.ts +81 -0
  201. package/es/schema/field/data-table-column.mjs +269 -0
  202. package/es/schema/field/descriptions-field.d.ts +3 -0
  203. package/es/schema/field/index.d.ts +14 -0
  204. package/es/schema/field/index.mjs +65 -0
  205. package/es/schema/index.d.ts +18 -0
  206. package/es/schema/index.mjs +17 -0
  207. package/es/schema/modal/modal-body.d.ts +2 -0
  208. package/es/schema/modal/modal-body.mjs +9 -0
  209. package/es/schema/modal/modal-footer.d.ts +2 -0
  210. package/es/schema/modal/modal-footer.mjs +9 -0
  211. package/es/schema/modal/modal.d.ts +8 -0
  212. package/es/schema/modal/modal.mjs +173 -0
  213. package/es/schema/search/BaseDate.d.ts +143 -0
  214. package/es/schema/search/BaseDate.mjs +114 -0
  215. package/es/schema/search/BaseSearch.d.ts +141 -0
  216. package/es/schema/search/BaseSearch.mjs +155 -0
  217. package/es/schema/utils.d.ts +8 -0
  218. package/es/schema/utils.mjs +76 -0
  219. package/es/setup-app.mjs +8 -15
  220. package/es/utils/design-interceptors/design-interceptors.mjs +20 -17
  221. package/es/utils/design-plugin-pkg-util/design-plugin-pkg-util.d.ts +28 -0
  222. package/es/utils/design-plugin-pkg-util/design-plugin-pkg-util.mjs +57 -0
  223. package/es/utils/design-view/index.d.ts +9 -0
  224. package/es/utils/design-view/index.mjs +20 -0
  225. package/es/utils/field-attrs/basicAttrs.mjs +577 -721
  226. package/es/utils/field-attrs/index.mjs +10 -6
  227. package/es/utils/field-filter/index.mjs +63 -53
  228. package/es/utils/find-deep-types/find-deep-types.mjs +34 -24
  229. package/es/utils/flatten.d.ts +12 -0
  230. package/es/utils/flatten.mjs +32 -0
  231. package/es/utils/formula-editor-design/formula-editor-design.d.ts +9 -0
  232. package/es/utils/formula-editor-design/formula-editor-design.mjs +31 -0
  233. package/es/utils/index.d.ts +5 -3
  234. package/es/utils/index.mjs +13 -0
  235. package/es/utils/init-widget-info/init-widget-info.mjs +48 -35
  236. package/es/utils/schema/index.d.ts +10 -0
  237. package/es/utils/schema/index.mjs +18 -0
  238. package/es/utils/transform-js/index.mjs +1 -0
  239. package/es/utils/transform-js/transform-js.d.ts +7 -6
  240. package/es/utils/transform-js/transform-js.mjs +71 -43
  241. package/package.json +21 -18
  242. package/dist/assets/transform-js.worker-BtVTa-PT.js +0 -666
  243. package/dist/index.esm.min.mjs +0 -25878
  244. package/dist/index.min.cjs +0 -70
  245. package/dist/index.system.min.js +0 -70
  246. package/es/assets/transform-js.worker-DdeZQ5i-.js +0 -296567
  247. package/es/components/design/design-content/design-content.css +0 -76
  248. package/es/components/design/design-content/design-content.d.ts +0 -191
  249. package/es/components/design/design-content/design-content.mjs +0 -363
  250. package/es/components/design/design-drag-item/design-drag-item.css +0 -179
  251. package/es/components/design/design-drag-item/design-drag-item.d.ts +0 -55
  252. package/es/components/design/design-drag-item/design-drag-item.mjs +0 -296
  253. package/es/components/design/design-drop-container/design-drop-container.css +0 -103
  254. package/es/components/design/design-drop-container/design-drop-container.d.ts +0 -91
  255. package/es/components/design/design-drop-container/design-drop-container.mjs +0 -220
  256. package/es/components/design/design-drop-line/design-drop-line.css +0 -165
  257. package/es/components/design/design-drop-line/design-drop-line.d.ts +0 -72
  258. package/es/components/design/design-drop-line/design-drop-line.mjs +0 -178
  259. package/es/components/design/design-item-actions/design-item-actions.css +0 -97
  260. package/es/components/design/design-item-actions/design-item-actions.d.ts +0 -42
  261. package/es/components/design/design-item-actions/design-item-actions.mjs +0 -196
  262. package/es/components/design/design-item-highlighter/design-item-highlighter.css +0 -70
  263. package/es/components/design/design-item-highlighter/design-item-highlighter.d.ts +0 -168
  264. package/es/components/design/design-item-highlighter/design-item-highlighter.mjs +0 -167
  265. package/es/components/design/design-item-highlighter-container/design-item-highlighter-container.css +0 -85
  266. package/es/components/design/design-item-highlighter-container/design-item-highlighter-container.d.ts +0 -53
  267. package/es/components/design/design-item-highlighter-container/design-item-highlighter-container.mjs +0 -224
  268. package/es/components/design/design-item-hover-title/design-item-hover-title.css +0 -12
  269. package/es/components/design/design-item-hover-title/design-item-hover-title.d.ts +0 -60
  270. package/es/components/design/design-item-hover-title/design-item-hover-title.mjs +0 -74
  271. package/es/components/design/design-item-preview/design-item-preview.css +0 -91
  272. package/es/components/design/design-item-preview/design-item-preview.d.ts +0 -1
  273. package/es/components/design/design-item-preview/design-item-preview.mjs +0 -50
  274. package/es/components/design/design-not-drag-item/design-not-drag-item.css +0 -67
  275. package/es/components/design/design-not-drag-item/design-not-drag-item.d.ts +0 -49
  276. package/es/components/design/design-not-drag-item/design-not-drag-item.mjs +0 -87
  277. package/es/components/design/design-not-found/design-not-found.css +0 -68
  278. package/es/components/design/design-not-found/design-not-found.d.ts +0 -14
  279. package/es/components/design/design-not-found/design-not-found.mjs +0 -26
  280. package/es/components/design/index.d.ts +0 -6
  281. package/es/components/design/index.mjs +0 -22
  282. package/es/components/editor/style/border-editor/border-box.vue2.mjs +0 -7
  283. package/es/components/editor/style/border-editor/border-box.vue3.mjs +0 -305
  284. package/es/components/editor/style/border-editor/border-editor.vue2.mjs +0 -7
  285. package/es/components/editor/style/border-editor/border-editor.vue3.mjs +0 -60
  286. package/es/components/editor/style/border-editor/border-radius.vue2.mjs +0 -7
  287. package/es/components/editor/style/border-editor/border-radius.vue3.mjs +0 -212
  288. package/es/components/editor/style/font-editor/align-group.vue2.mjs +0 -7
  289. package/es/components/editor/style/font-editor/align-group.vue3.mjs +0 -66
  290. package/es/components/editor/style/font-editor/font-editor.vue2.mjs +0 -5
  291. package/es/components/editor/style/font-editor/font-style-group.vue2.mjs +0 -7
  292. package/es/components/editor/style/font-editor/font-style-group.vue3.mjs +0 -105
  293. package/es/components/editor/style/position-editor/position-editor.vue2.mjs +0 -7
  294. package/es/components/editor/style/position-editor/position-editor.vue3.mjs +0 -242
  295. package/es/components/editor/style/spacing-editor/spacing-editor.vue2.mjs +0 -7
  296. package/es/components/editor/style/spacing-editor/spacing-editor.vue3.mjs +0 -311
  297. package/es/components/icon/downleft-icon.vue2.mjs +0 -27
  298. package/es/components/icon/downright-icon.vue2.mjs +0 -27
  299. package/es/components/icon/upleft-icon.vue2.mjs +0 -27
  300. package/es/components/icon/upright-icon.vue2.mjs +0 -27
  301. package/es/components/material/index.d.ts +0 -5
  302. package/es/components/material/index.mjs +0 -9
  303. package/es/components/material/material-content/material-content.css +0 -86
  304. package/es/components/material/material-content/material-content.d.ts +0 -187
  305. package/es/components/material/material-content/material-content.mjs +0 -59
  306. package/es/components/material/material-module/material-module.css +0 -104
  307. package/es/components/material/material-module/material-module.d.ts +0 -72
  308. package/es/components/material/material-module/material-module.mjs +0 -111
  309. package/es/components/material/material-module-drag-container/material-module-drag-container.css +0 -69
  310. package/es/components/material/material-module-drag-container/material-module-drag-container.d.ts +0 -62
  311. package/es/components/material/material-module-drag-container/material-module-drag-container.mjs +0 -32
  312. package/es/components/material/material-module-drag-item/material-module-drag-item.css +0 -83
  313. package/es/components/material/material-module-drag-item/material-module-drag-item.d.ts +0 -17
  314. package/es/components/material/material-module-drag-item/material-module-drag-item.mjs +0 -103
  315. package/es/components/material/material-outline-tree/material-outline-tree.css +0 -81
  316. package/es/components/material/material-outline-tree/material-outline-tree.d.ts +0 -1
  317. package/es/components/material/material-outline-tree/material-outline-tree.mjs +0 -90
  318. package/es/components/material/material-tab-pane/material-tab-pane.css +0 -68
  319. package/es/components/material/material-tab-pane/material-tab-pane.d.ts +0 -13
  320. package/es/components/material/material-tab-pane/material-tab-pane.mjs +0 -26
  321. package/es/components/material/material-tabs/material-tabs.css +0 -105
  322. package/es/components/material/material-tabs/material-tabs.d.ts +0 -103
  323. package/es/components/material/material-tabs/material-tabs.mjs +0 -69
  324. package/es/components/panel/index.d.ts +0 -5
  325. package/es/components/panel/index.mjs +0 -9
  326. package/es/components/panel/panel-content/panel-content.css +0 -183
  327. package/es/components/panel/panel-content/panel-content.d.ts +0 -19
  328. package/es/components/panel/panel-content/panel-content.mjs +0 -73
  329. package/es/components/panel/panel-form/panel-form.css +0 -67
  330. package/es/components/panel/panel-form/panel-form.d.ts +0 -62
  331. package/es/components/panel/panel-form/panel-form.mjs +0 -76
  332. package/es/components/panel/panel-path/panel-path.css +0 -89
  333. package/es/components/panel/panel-path/panel-path.d.ts +0 -35
  334. package/es/components/panel/panel-path/panel-path.mjs +0 -75
  335. package/es/controller/index.d.ts +0 -1
  336. package/es/controller/view/design-view.controller.d.ts +0 -47
  337. package/es/controller/view/design-view.controller.mjs +0 -183
  338. package/es/dictionary/tab-type/tab-type.mjs +0 -24
  339. package/es/editor/child-list-editor/child-list-editor.css +0 -76
  340. package/es/editor/child-list-editor/child-list-editor.d.ts +0 -163
  341. package/es/editor/child-list-editor/child-list-editor.mjs +0 -145
  342. package/es/editor/child-list-editor/child-list-editor.provider.d.ts +0 -13
  343. package/es/editor/child-list-editor/child-list-editor.provider.mjs +0 -5
  344. package/es/editor/child-list-editor/components/child-list-item-editor.css +0 -112
  345. package/es/editor/child-list-editor/components/child-list-item-editor.d.ts +0 -133
  346. package/es/editor/child-list-editor/components/child-list-item-editor.mjs +0 -238
  347. package/es/editor/child-list-editor/index.d.ts +0 -4
  348. package/es/editor/child-list-editor/index.mjs +0 -13
  349. package/es/editor/content-tag-style/content-tag-style.css +0 -164
  350. package/es/editor/content-tag-style/content-tag-style.d.ts +0 -112
  351. package/es/editor/content-tag-style/content-tag-style.mjs +0 -103
  352. package/es/editor/content-tag-style/index.d.ts +0 -8
  353. package/es/editor/content-tag-style/index.mjs +0 -15
  354. package/es/editor/custom-exp-menu-editor/components/custom-exp-menu-item.css +0 -156
  355. package/es/editor/custom-exp-menu-editor/components/custom-exp-menu-item.d.ts +0 -29
  356. package/es/editor/custom-exp-menu-editor/components/custom-exp-menu-item.mjs +0 -134
  357. package/es/editor/custom-exp-menu-editor/custom-exp-menu-editor.css +0 -76
  358. package/es/editor/custom-exp-menu-editor/custom-exp-menu-editor.d.ts +0 -38
  359. package/es/editor/custom-exp-menu-editor/custom-exp-menu-editor.mjs +0 -163
  360. package/es/editor/custom-exp-menu-editor/custom-exp-menu-editor.provider.d.ts +0 -13
  361. package/es/editor/custom-exp-menu-editor/custom-exp-menu-editor.provider.mjs +0 -5
  362. package/es/editor/custom-exp-menu-editor/i-custom-exp-menu-model.d.ts +0 -23
  363. package/es/editor/custom-exp-menu-editor/index.d.ts +0 -5
  364. package/es/editor/custom-exp-menu-editor/index.mjs +0 -13
  365. package/es/editor/custom-exp-menu-editor/modal/exp-menu.modal.d.ts +0 -37
  366. package/es/editor/field-info-editor/field-info-editor.css +0 -125
  367. package/es/editor/field-info-editor/field-info-editor.d.ts +0 -111
  368. package/es/editor/field-info-editor/field-info-editor.mjs +0 -60
  369. package/es/editor/field-info-editor/index.d.ts +0 -8
  370. package/es/editor/field-info-editor/index.mjs +0 -13
  371. package/es/editor/index.d.ts +0 -5
  372. package/es/editor/index.mjs +0 -27
  373. package/es/editor/model-field-select/index.d.ts +0 -8
  374. package/es/editor/model-field-select/index.mjs +0 -13
  375. package/es/editor/model-field-select/model-field-select.css +0 -141
  376. package/es/editor/model-field-select/model-field-select.d.ts +0 -42
  377. package/es/editor/model-field-select/model-field-select.mjs +0 -314
  378. package/es/editor/style-border/index.d.ts +0 -8
  379. package/es/editor/style-border/index.mjs +0 -15
  380. package/es/editor/style-border/style-border.d.ts +0 -38
  381. package/es/editor/style-border/style-border.mjs +0 -45
  382. package/es/editor/style-font/index.d.ts +0 -8
  383. package/es/editor/style-font/index.mjs +0 -15
  384. package/es/editor/style-font/style-font.css +0 -86
  385. package/es/editor/style-font/style-font.d.ts +0 -38
  386. package/es/editor/style-font/style-font.mjs +0 -45
  387. package/es/editor/style-position/index.d.ts +0 -8
  388. package/es/editor/style-position/index.mjs +0 -15
  389. package/es/editor/style-position/style-position.d.ts +0 -38
  390. package/es/editor/style-position/style-position.mjs +0 -44
  391. package/es/editor/style-spacing/index.d.ts +0 -8
  392. package/es/editor/style-spacing/index.mjs +0 -15
  393. package/es/editor/style-spacing/style-spacing.d.ts +0 -40
  394. package/es/editor/style-spacing/style-spacing.mjs +0 -69
  395. package/es/editor/system-page-select/i-system-page-select.d.ts +0 -23
  396. package/es/editor/system-page-select/index.d.ts +0 -9
  397. package/es/editor/system-page-select/index.mjs +0 -15
  398. package/es/editor/system-page-select/system-page-select.css +0 -119
  399. package/es/editor/system-page-select/system-page-select.d.ts +0 -38
  400. package/es/editor/system-page-select/system-page-select.mjs +0 -82
  401. package/es/hooks/use-design-view-controller/use-design-view-controller.d.ts +0 -11
  402. package/es/hooks/use-design-view-controller/use-design-view-controller.mjs +0 -26
  403. package/es/hooks/web/useUUid.d.ts +0 -41
  404. package/es/hooks/web/useUUid.mjs +0 -93
  405. package/es/interface/design/i-design-container-node.d.ts +0 -13
  406. package/es/interface/design/i-design-data.d.ts +0 -44
  407. package/es/interface/design/i-design-editor-data.d.ts +0 -20
  408. package/es/interface/design/i-design-editor-node.d.ts +0 -15
  409. package/es/interface/design/i-design-node-data.d.ts +0 -19
  410. package/es/interface/design/i-design-node.d.ts +0 -80
  411. package/es/interface/design/i-design-page-node-data.d.ts +0 -15
  412. package/es/interface/design/i-design-tree-item.d.ts +0 -26
  413. package/es/interface/editor/child-list-editor/child-list-editor.d.ts +0 -114
  414. package/es/interface/editor/index.d.ts +0 -9
  415. package/es/interface/editor/style-border/i-style-border.controller.d.ts +0 -11
  416. package/es/interface/editor/style-border/i-style-border.d.ts +0 -22
  417. package/es/interface/editor/style-font/i-style-font.controller.d.ts +0 -11
  418. package/es/interface/editor/style-font/i-style-font.d.ts +0 -13
  419. package/es/interface/editor/style-position/i-style-position.controller.d.ts +0 -11
  420. package/es/interface/editor/style-position/i-style-position.d.ts +0 -13
  421. package/es/interface/editor/style-spacing/i-style-spacing.controller.d.ts +0 -11
  422. package/es/interface/editor/style-spacing/i-style-spacing.d.ts +0 -22
  423. package/es/interface/provider/i-node-provider.d.ts +0 -142
  424. package/es/plugins/design-custom-exp-menu/components/design-custom-exp-menu-component.css +0 -87
  425. package/es/plugins/design-custom-exp-menu/components/design-custom-exp-menu.component.d.ts +0 -9
  426. package/es/plugins/design-custom-exp-menu/components/design-custom-exp-menu.component.mjs +0 -109
  427. package/es/plugins/design-custom-exp-menu/design-custom-exp-menu.data.d.ts +0 -51
  428. package/es/plugins/design-custom-exp-menu/design-custom-exp-menu.data.mjs +0 -89
  429. package/es/plugins/design-custom-exp-menu/design-custom-exp-menu.provider.d.ts +0 -23
  430. package/es/plugins/design-custom-exp-menu/design-custom-exp-menu.provider.mjs +0 -159
  431. package/es/plugins/design-editor/index.d.ts +0 -5
  432. package/es/plugins/design-editor/index.mjs +0 -13
  433. package/es/plugins/design-editor/upload-file/index.d.ts +0 -4
  434. package/es/plugins/design-editor/upload-file/index.mjs +0 -15
  435. package/es/plugins/design-editor/upload-file/upload-file.css +0 -124
  436. package/es/plugins/design-editor/upload-file/upload-file.d.ts +0 -46
  437. package/es/plugins/design-editor/upload-file/upload-file.mjs +0 -51
  438. package/es/plugins/design-editor/upload-image/index.d.ts +0 -4
  439. package/es/plugins/design-editor/upload-image/index.mjs +0 -15
  440. package/es/plugins/design-editor/upload-image/upload-image.css +0 -79
  441. package/es/plugins/design-editor/upload-image/upload-image.d.ts +0 -46
  442. package/es/plugins/design-editor/upload-image/upload-image.mjs +0 -23
  443. package/es/plugins/design-editor/user-signature/index.d.ts +0 -4
  444. package/es/plugins/design-editor/user-signature/index.mjs +0 -15
  445. package/es/plugins/design-editor/user-signature/user-signature.css +0 -79
  446. package/es/plugins/design-editor/user-signature/user-signature.d.ts +0 -46
  447. package/es/plugins/design-editor/user-signature/user-signature.mjs +0 -23
  448. package/es/plugins/design-grid/components/design-grid.component.css +0 -68
  449. package/es/plugins/design-grid/components/design-grid.component.d.ts +0 -39
  450. package/es/plugins/design-grid/components/design-grid.component.mjs +0 -60
  451. package/es/plugins/design-grid/design-grid.data.d.ts +0 -34
  452. package/es/plugins/design-grid/design-grid.data.mjs +0 -17
  453. package/es/plugins/design-grid/design-grid.provider.d.ts +0 -26
  454. package/es/plugins/design-grid/design-grid.provider.mjs +0 -273
  455. package/es/plugins/design-grid-item/components/design-grid-item.component.d.ts +0 -38
  456. package/es/plugins/design-grid-item/components/design-grid-item.component.mjs +0 -39
  457. package/es/plugins/design-grid-item/design-grid-item.data.d.ts +0 -26
  458. package/es/plugins/design-grid-item/design-grid-item.data.mjs +0 -17
  459. package/es/plugins/design-grid-item/design-grid-item.provider.d.ts +0 -25
  460. package/es/plugins/design-grid-item/design-grid-item.provider.mjs +0 -172
  461. package/es/plugins/design-menu-list/components/design-menu-list.component.css +0 -131
  462. package/es/plugins/design-menu-list/components/design-menu-list.component.d.ts +0 -18
  463. package/es/plugins/design-menu-list/components/design-menu-list.component.mjs +0 -110
  464. package/es/plugins/design-menu-list/design-menu-list.data.d.ts +0 -62
  465. package/es/plugins/design-menu-list/design-menu-list.data.mjs +0 -21
  466. package/es/plugins/design-menu-list/design-menu-list.provider.d.ts +0 -23
  467. package/es/plugins/design-menu-list/design-menu-list.provider.mjs +0 -265
  468. package/es/plugins/design-page/design-page.data.d.ts +0 -15
  469. package/es/plugins/design-page/design-page.data.mjs +0 -17
  470. package/es/plugins/design-page/design-page.provider.d.ts +0 -23
  471. package/es/plugins/design-page/design-page.provider.mjs +0 -109
  472. package/es/plugins/design-panel/components/design-panel-component.css +0 -108
  473. package/es/plugins/design-panel/components/design-panel.component.d.ts +0 -39
  474. package/es/plugins/design-panel/components/design-panel.component.mjs +0 -49
  475. package/es/plugins/design-panel/design-panel.data.d.ts +0 -64
  476. package/es/plugins/design-panel/design-panel.data.mjs +0 -27
  477. package/es/plugins/design-panel/design-panel.provider.d.ts +0 -23
  478. package/es/plugins/design-panel/design-panel.provider.mjs +0 -298
  479. package/es/plugins/design-personal-center/components/design-personal-center.component.css +0 -48
  480. package/es/plugins/design-personal-center/components/design-personal-center.component.vue.d.ts +0 -36
  481. package/es/plugins/design-personal-center/components/design-personal-center.component.vue.mjs +0 -7
  482. package/es/plugins/design-personal-center/components/design-personal-center.component.vue2.mjs +0 -97
  483. package/es/plugins/design-personal-center/design-personal-center.data.d.ts +0 -27
  484. package/es/plugins/design-personal-center/design-personal-center.data.mjs +0 -21
  485. package/es/plugins/design-personal-center/design-personal-center.provider.d.ts +0 -13
  486. package/es/plugins/design-personal-center/design-personal-center.provider.mjs +0 -144
  487. package/es/plugins/design-select-component/components/design-select-component.component.css +0 -107
  488. package/es/plugins/design-select-component/components/design-select-component.component.d.ts +0 -41
  489. package/es/plugins/design-select-component/components/design-select-component.component.mjs +0 -57
  490. package/es/plugins/design-select-component/design-select-component.data.d.ts +0 -57
  491. package/es/plugins/design-select-component/design-select-component.data.mjs +0 -18
  492. package/es/plugins/design-select-component/design-select-component.provider.d.ts +0 -23
  493. package/es/plugins/design-select-component/design-select-component.provider.mjs +0 -207
  494. package/es/plugins/design-tab-item/components/design-tab-item.component.d.ts +0 -38
  495. package/es/plugins/design-tab-item/components/design-tab-item.component.mjs +0 -39
  496. package/es/plugins/design-tab-item/design-tab-item.data.d.ts +0 -35
  497. package/es/plugins/design-tab-item/design-tab-item.data.mjs +0 -22
  498. package/es/plugins/design-tab-item/design-tab-item.provider.d.ts +0 -25
  499. package/es/plugins/design-tab-item/design-tab-item.provider.mjs +0 -185
  500. package/es/plugins/design-tabs/components/design-tabs.component.css +0 -105
  501. package/es/plugins/design-tabs/components/design-tabs.component.d.ts +0 -40
  502. package/es/plugins/design-tabs/components/design-tabs.component.mjs +0 -85
  503. package/es/plugins/design-tabs/design-tabs.data.d.ts +0 -66
  504. package/es/plugins/design-tabs/design-tabs.data.mjs +0 -19
  505. package/es/plugins/design-tabs/design-tabs.provider.d.ts +0 -26
  506. package/es/plugins/design-tabs/design-tabs.provider.mjs +0 -261
  507. package/es/plugins/index.d.ts +0 -5
  508. package/es/plugins/index.mjs +0 -116
  509. package/es/plugins/install-material.d.ts +0 -8
  510. package/es/plugins/install-material.mjs +0 -55
  511. package/es/provider/design-editor-node/design-editor-node.provider.d.ts +0 -40
  512. package/es/provider/design-editor-node/design-editor-node.provider.mjs +0 -44
  513. package/es/provider/index.d.ts +0 -2
  514. package/es/provider/node-base/node-base.provider.d.ts +0 -25
  515. package/es/provider/node-base/node-base.provider.mjs +0 -26
  516. package/es/register/node/node.register.d.ts +0 -113
  517. package/es/register/node/node.register.mjs +0 -134
  518. package/es/store/index.d.ts +0 -1
  519. package/es/store/view/design-view.store.d.ts +0 -5
  520. package/es/store/view/design-view.store.mjs +0 -412
  521. package/es/utils/can-drop/can-drop.d.ts +0 -12
  522. package/es/utils/can-drop/can-drop.mjs +0 -56
  523. package/es/utils/design-install/design-install.d.ts +0 -16
  524. package/es/utils/design-install/design-install.mjs +0 -22
  525. package/es/utils/plugin-pkg-util/plugin-pkg-util.d.ts +0 -97
  526. package/es/utils/plugin-pkg-util/plugin-pkg-util.mjs +0 -258
  527. package/es/utils/transform-js/transform-js.worker.d.ts +0 -1
  528. package/es/views/design-view.css +0 -218
  529. package/es/views/design-view.d.ts +0 -87
  530. package/es/views/design-view.mjs +0 -345
  531. package/es/views/index.d.ts +0 -1
  532. /package/es/components/editor/style/border-editor/{border-box.css → border-box.vue_vue_type_style_index_0_scoped_a5616984_lang.css} +0 -0
  533. /package/es/components/editor/style/border-editor/{border-editor.css → border-editor.vue_vue_type_style_index_0_scoped_f973ba6b_lang.css} +0 -0
  534. /package/es/components/editor/style/border-editor/{border-radius.css → border-radius.vue_vue_type_style_index_0_scoped_1cb5bbdc_lang.css} +0 -0
  535. /package/es/components/editor/style/font-editor/{align-group.css → align-group.vue_vue_type_style_index_0_scoped_afcacb4b_lang.css} +0 -0
  536. /package/es/components/editor/style/font-editor/{font-style-group.css → font-style-group.vue_vue_type_style_index_0_scoped_7df87cdb_lang.css} +0 -0
  537. /package/es/components/editor/style/position-editor/{position-editor.css → position-editor.vue_vue_type_style_index_0_scoped_cc7cb9d8_lang.css} +0 -0
  538. /package/es/components/editor/style/spacing-editor/{spacing-editor.css → spacing-editor.vue_vue_type_style_index_0_scoped_18c72ccf_lang.css} +0 -0
@@ -1,239 +1,225 @@
1
- import { TreeHelper, t, SearchComponents, Platform } from '@gct-paas/core';
2
- import { isArray, isNil, isEmpty } from 'lodash-es';
3
- import { message } from 'ant-design-vue';
4
- import { pageJson, widgetInfo, pageJsonSnapshot, regRoot, transformPageJson, platform, pageDesignHistoryList, noMore, pageNo } from '../design-state.mjs';
5
-
1
+ import { platform } from "../../../utils/design-view/index.mjs";
2
+ import { buildRunJs } from "../../../utils/transform-js/transform-js.mjs";
3
+ import "../../../utils/index.mjs";
4
+ import { noMore, pageDesignHistoryList, pageJson, pageJsonSnapshot, pageNo, regRoot, transformPageJson, widgetInfo } from "../design-state.mjs";
5
+ import { useUserOccupy } from "../../../components/user-occupy/useUserOccupy.mjs";
6
+ import "../../../components/index.mjs";
7
+ import { isArray, isEmpty, isNil } from "lodash-es";
8
+ import { Platform, SearchComponents, TreeHelper, t } from "@gct-paas/core";
9
+ import { message } from "ant-design-vue";
10
+ //#region src/hooks/design-view/designer/useDesignSave.ts
11
+ /**
12
+ * 保存与数据校验 Hook
13
+ *
14
+ * 管理设计器页面数据的保存、预处理和校验逻辑,
15
+ * 包括组件必填校验、数值范围校验、运行时 JSON 构建等。
16
+ */
6
17
  function useDesignSave() {
7
- const { cancelOccupy } = {};
8
- function savePageJsonSnapshot(json) {
9
- pageJsonSnapshot.value = JSON.stringify(json ?? pageJson);
10
- }
11
- function validateWidgets(widgets, parents = []) {
12
- for (let i = 0; i < widgets.length; i++) {
13
- const widget = widgets[i];
14
- const { type, props } = widget;
15
- const configs = widgetInfo.value.propEditors[type];
16
- const models = configs && isArray(configs) ? configs : configs(widgets, parents);
17
- for (let j = 0; j < models.length; j++) {
18
- const model = models[j];
19
- if (model?.required === true) {
20
- const { name } = model;
21
- let keys = [];
22
- const isObject = typeof name === "object";
23
- if (typeof name === "object") {
24
- keys = Object.keys(name).map((item) => {
25
- return name[item];
26
- });
27
- } else if (name?.startsWith("root:")) {
28
- const key = name.substring(5);
29
- const val = widget[key];
30
- if (isNil(val) || isEmpty(val)) {
31
- message.error(
32
- `【${widget.alias || widget.props.label || widget.props.fieldName || ""} ${widget.id}】${t("sys.pageDesigner.widget")} -【${t("sys.pageDesigner.prop")} - ${t(
33
- `sys.pageDesigner.${model.group}Prop`
34
- )} ${model.label ? "-" + t(model.label) : ""}】${t("sys.model.required")}`
35
- );
36
- return false;
37
- }
38
- } else {
39
- keys = name.replace(regRoot, "").split(".");
40
- }
41
- let memo = props;
42
- for (let k = 0; k < keys.length; k++) {
43
- const key = keys[k];
44
- const val = isObject ? props[key] : memo[key];
45
- memo = val;
46
- if (model.hidden) {
47
- const hide = model.hidden(widget);
48
- if (hide === true) {
49
- continue;
50
- }
51
- }
52
- if (isNil(val) || isEmpty(val)) {
53
- message.error(
54
- `【${widget.alias || widget.props.label || widget.props.fieldName || ""} ${widget.id}】${t("sys.pageDesigner.widget")} -【${t("sys.pageDesigner.prop")} - ${t(
55
- `sys.pageDesigner.${model.group}Prop`
56
- )} ${model.label ? "-" + t(model.label) : ""}】${t("sys.model.required")}`
57
- );
58
- return false;
59
- }
60
- }
61
- }
62
- if (model?.saveHook) {
63
- model.saveHook(widget);
64
- }
65
- }
66
- if ([
67
- SearchComponents.SearchNumberInput,
68
- SearchComponents.SearchStringNumberInput
69
- ].includes(type) && props?.isRang && props?.defaultValue && Array.isArray(props?.defaultValue)) {
70
- const start = props.defaultValue[0];
71
- const end = props.defaultValue[1];
72
- if ((start || start === 0) && (end || end === 0) && start > end) {
73
- message.error(
74
- `【${widget.alias || widget.props.label || widget.props.fieldName || ""} ${widget.id}】${t("sys.pageDesigner.widget")} -【${t("sys.pageDesigner.prop")} - ${t("sys.pageDesigner.defaultValue")}】- ${t("sys.model.numMaxGTMin")}`
75
- );
76
- return false;
77
- }
78
- }
79
- if (widget.children) {
80
- parents.push(widget);
81
- const bol = validateWidgets(widget.children, parents);
82
- if (bol === false) {
83
- return bol;
84
- }
85
- }
86
- }
87
- return true;
88
- }
89
- async function save(_flag = true, showSuccess = true) {
90
- const pageId = _gct.store.context.pid;
91
- const _pageJson = transformPageJson(pageJson);
92
- const bol = validateWidgets(_pageJson.widgets);
93
- if (bol === false) {
94
- return false;
95
- }
96
- if (_pageJson.widgets.some((n) => n.type === "data-list")) {
97
- _pageJson.widgets.forEach((item) => {
98
- if (item.type === "data-list" && !item.props.showFieldExp) {
99
- item.props.showFieldExpVal = "";
100
- }
101
- });
102
- }
103
- const bol2 = validateWidgets(_pageJson.modals);
104
- if (bol2 === false) {
105
- return false;
106
- }
107
- if (_pageJson.modals.length) {
108
- _pageJson.modals.forEach((item) => {
109
- if (!item.props.hasFooter) {
110
- item.children = item.children.filter((n) => {
111
- return n?.type !== "bottom-button-container";
112
- });
113
- }
114
- if (item.props.hasFooter && item.children.some((n) => n?.type === "modalFooter")) {
115
- item.children = item.children.filter((n) => {
116
- return n?.type !== "modalFooter";
117
- });
118
- }
119
- });
120
- }
121
- const plugins = [];
122
- function deepFindPlugins(widgets) {
123
- const items = [];
124
- widgets.forEach((widget) => {
125
- if (widget._plugin) {
126
- items.push({
127
- key: widget._plugin.key,
128
- version: widget._plugin.version,
129
- url: widget._plugin.url
130
- });
131
- }
132
- if (widget.children && widget.children.length > 0) {
133
- items.push(...deepFindPlugins(widget.children));
134
- }
135
- });
136
- return items;
137
- }
138
- plugins.push(...deepFindPlugins(_pageJson.widgets));
139
- if (_pageJson.modals) {
140
- _pageJson.modals.forEach((modal) => {
141
- if (modal.children) {
142
- modal.children.forEach((item) => {
143
- plugins.push(...deepFindPlugins(item.children));
144
- });
145
- }
146
- });
147
- }
148
- _pageJson.plugins = plugins;
149
- if (platform.value === Platform.MOBILE) {
150
- await _api.apaas.mobilePage.putUpdateDesignerJsonId(
151
- { id: pageId },
152
- {
153
- designerJson: JSON.stringify(_pageJson),
154
- runtimeJson: JSON.stringify(buildRuntimeJson()),
155
- logId: (pageDesignHistoryList.value[0] ?? {}).id
156
- }
157
- );
158
- } else if (platform.value === Platform.PAD) {
159
- await _api.apaas.padPage.putUpdateDesignerJsonId(
160
- { id: pageId },
161
- {
162
- designerJson: JSON.stringify(_pageJson),
163
- runtimeJson: JSON.stringify(buildRuntimeJson()),
164
- logId: (pageDesignHistoryList.value[0] ?? {}).id
165
- }
166
- );
167
- } else {
168
- await _api.apaas.webpage.putUpdateDesignerJsonId(
169
- { id: pageId },
170
- {
171
- designerJson: JSON.stringify(_pageJson),
172
- runtimeJson: JSON.stringify(buildRuntimeJson()),
173
- logId: (pageDesignHistoryList.value[0] ?? {}).id
174
- }
175
- );
176
- }
177
- savePageJsonSnapshot(_pageJson);
178
- cancelOccupy();
179
- noMore.value = false;
180
- pageNo.value = 1;
181
- return true;
182
- }
183
- return {
184
- save,
185
- validateWidgets,
186
- savePageJsonSnapshot
187
- };
18
+ const { cancelOccupy } = useUserOccupy();
19
+ /**
20
+ * 保存页面数据快照,用于脏检查对比
21
+ *
22
+ * @param {PageJson} json 可选,传入则保存此 json 的快照,否则保存当前 pageJson
23
+ */
24
+ function savePageJsonSnapshot(json) {
25
+ pageJsonSnapshot.value = JSON.stringify(json ?? pageJson);
26
+ }
27
+ /**
28
+ * 保存时对数据做校验
29
+ *
30
+ * @author zhanghanrui
31
+ * @date 2024-05-11 11:05:14
32
+ * @param {IData[]} widgets 组件数据列表
33
+ * @param {IData[]} parents 父级数据列表
34
+ * @returns {boolean} 是否校验通过
35
+ */
36
+ function validateWidgets(widgets, parents = []) {
37
+ for (let i = 0; i < widgets.length; i++) {
38
+ const widget = widgets[i];
39
+ const { type, props } = widget;
40
+ const configs = widgetInfo.value.propEditors[type];
41
+ const models = configs && isArray(configs) ? configs : configs(widgets, parents);
42
+ for (let j = 0; j < models.length; j++) {
43
+ const model = models[j];
44
+ if (model?.required === true) {
45
+ const { name } = model;
46
+ let keys = [];
47
+ const isObject = typeof name === "object";
48
+ if (typeof name === "object") keys = Object.keys(name).map((item) => {
49
+ return name[item];
50
+ });
51
+ else if (name?.startsWith("root:")) {
52
+ const val = widget[name.substring(5)];
53
+ if (isNil(val) || isEmpty(val)) {
54
+ message.error(`【${widget.alias || widget.props.label || widget.props.fieldName || ""} ${widget.id}】${t("sys.pageDesigner.widget")} -【${t("sys.pageDesigner.prop")} - ${t(`sys.pageDesigner.${model.group}Prop`)} ${model.label ? "-" + t(model.label) : ""}】${t("sys.model.required")}`);
55
+ return false;
56
+ }
57
+ } else keys = name.replace(regRoot, "").split(".");
58
+ let memo = props;
59
+ for (let k = 0; k < keys.length; k++) {
60
+ const key = keys[k];
61
+ const val = isObject ? props[key] : memo[key];
62
+ memo = val;
63
+ if (model.hidden) {
64
+ if (model.hidden(widget) === true) continue;
65
+ }
66
+ if (isNil(val) || isEmpty(val)) {
67
+ message.error(`【${widget.alias || widget.props.label || widget.props.fieldName || ""} ${widget.id}】${t("sys.pageDesigner.widget")} -【${t("sys.pageDesigner.prop")} - ${t(`sys.pageDesigner.${model.group}Prop`)} ${model.label ? "-" + t(model.label) : ""}】${t("sys.model.required")}`);
68
+ return false;
69
+ }
70
+ }
71
+ }
72
+ if (model?.saveHook) model.saveHook(widget);
73
+ }
74
+ if ([SearchComponents.SearchNumberInput, SearchComponents.SearchStringNumberInput].includes(type) && props?.isRang && props?.defaultValue && Array.isArray(props?.defaultValue)) {
75
+ const start = props.defaultValue[0];
76
+ const end = props.defaultValue[1];
77
+ if ((start || start === 0) && (end || end === 0) && start > end) {
78
+ message.error(`【${widget.alias || widget.props.label || widget.props.fieldName || ""} ${widget.id}】${t("sys.pageDesigner.widget")} -【${t("sys.pageDesigner.prop")} - ${t("sys.pageDesigner.defaultValue")}】- ${t("sys.model.numMaxGTMin")}`);
79
+ return false;
80
+ }
81
+ }
82
+ if (widget.children) {
83
+ parents.push(widget);
84
+ const bol = validateWidgets(widget.children, parents);
85
+ if (bol === false) return bol;
86
+ }
87
+ }
88
+ return true;
89
+ }
90
+ /**
91
+ * 保存完成解除占用
92
+ *
93
+ * @param {boolean} flag 是否为保存操作(true为保存,false为恢复)
94
+ * @param {boolean} showSuccess 是否显示成功提示
95
+ * @returns {Promise<boolean>} 是否保存成功
96
+ */
97
+ async function save(flag = true, showSuccess = true) {
98
+ const pageId = _gct.store.context.pid;
99
+ const _pageJson = transformPageJson(pageJson);
100
+ if (validateWidgets(_pageJson.widgets) === false) return false;
101
+ if (_pageJson.widgets.some((n) => n.type === "data-list")) _pageJson.widgets.forEach((item) => {
102
+ if (item.type === "data-list" && !item.props.showFieldExp) item.props.showFieldExpVal = "";
103
+ });
104
+ if (validateWidgets(_pageJson.modals) === false) return false;
105
+ if (_pageJson.modals.length) _pageJson.modals.forEach((item) => {
106
+ if (!item.props.hasFooter) item.children = item.children.filter((n) => {
107
+ return n?.type !== "bottom-button-container";
108
+ });
109
+ if (item.props.hasFooter && item.children.some((n) => n?.type === "modalFooter")) item.children = item.children.filter((n) => {
110
+ return n?.type !== "modalFooter";
111
+ });
112
+ });
113
+ const plugins = [];
114
+ /**
115
+ * 递归查找所有插件
116
+ *
117
+ * @param {LowCodeWidget.BasicSchema[]} widgets 组件列表
118
+ * @returns {PagePlugin[]} 插件列表
119
+ */
120
+ function deepFindPlugins(widgets) {
121
+ const items = [];
122
+ widgets.forEach((widget) => {
123
+ if (widget._plugin) items.push({
124
+ key: widget._plugin.key,
125
+ version: widget._plugin.version,
126
+ url: widget._plugin.url
127
+ });
128
+ if (widget.children && widget.children.length > 0) items.push(...deepFindPlugins(widget.children));
129
+ });
130
+ return items;
131
+ }
132
+ plugins.push(...deepFindPlugins(_pageJson.widgets));
133
+ if (_pageJson.modals) _pageJson.modals.forEach((modal) => {
134
+ if (modal.children) modal.children.forEach((item) => {
135
+ plugins.push(...deepFindPlugins(item.children));
136
+ });
137
+ });
138
+ _pageJson.plugins = plugins;
139
+ const runtimeJson = await buildRuntimeJson();
140
+ if (platform.value === Platform.MOBILE) await _api.apaas.mobilePage.putUpdateDesignerJsonId({ id: pageId }, {
141
+ designerJson: JSON.stringify(_pageJson),
142
+ runtimeJson: JSON.stringify(runtimeJson),
143
+ logId: (pageDesignHistoryList.value[0] ?? {}).id
144
+ });
145
+ else if (platform.value === Platform.PAD) await _api.apaas.padPage.putUpdateDesignerJsonId({ id: pageId }, {
146
+ designerJson: JSON.stringify(_pageJson),
147
+ runtimeJson: JSON.stringify(runtimeJson),
148
+ logId: (pageDesignHistoryList.value[0] ?? {}).id
149
+ });
150
+ else await _api.apaas.webpage.putUpdateDesignerJsonId({ id: pageId }, {
151
+ designerJson: JSON.stringify(_pageJson),
152
+ runtimeJson: JSON.stringify(runtimeJson),
153
+ logId: (pageDesignHistoryList.value[0] ?? {}).id
154
+ });
155
+ savePageJsonSnapshot(_pageJson);
156
+ if (showSuccess) _gct.message.success(flag ? "sys.saveSuccess" : "sys.recoverSuccess");
157
+ cancelOccupy();
158
+ noMore.value = false;
159
+ pageNo.value = 1;
160
+ return true;
161
+ }
162
+ return {
163
+ save,
164
+ validateWidgets,
165
+ savePageJsonSnapshot
166
+ };
188
167
  }
189
- function buildRuntimeJson() {
190
- try {
191
- const runtimeWidgets = TreeHelper.traverseAndBuildTree(
192
- // cloneDeep schema 包中
193
- JSON.parse(JSON.stringify(pageJson.widgets)),
194
- (node) => findWidgetCallback(node)
195
- );
196
- const funcStr = "";
197
- const modals = pageJson.modals.map((modal) => {
198
- const modalFuncStr = "";
199
- const runtimeWidgets2 = TreeHelper.traverseAndBuildTree(
200
- JSON.parse(JSON.stringify(modal.children)),
201
- (node) => findWidgetCallback(node, modal)
202
- );
203
- return {
204
- props: modal.props,
205
- css: modal.css,
206
- modalName: modal.modalName,
207
- id: modal.id,
208
- i18n: modal.i18n || {},
209
- events: modal.events,
210
- children: runtimeWidgets2,
211
- runJs: modalFuncStr,
212
- style: modal.style
213
- };
214
- });
215
- return {
216
- widgets: runtimeWidgets,
217
- runJs: funcStr,
218
- modals,
219
- css: pageJson.css,
220
- keepAlive: pageJson.keepAlive,
221
- globalEvents: pageJson.globalEvents,
222
- pageEvents: pageJson.pageEvents,
223
- permissions: pageJson.permissions,
224
- pageStyle: pageJson.style,
225
- pageConfig: pageJson.pageConfig,
226
- pageVars: pageJson.pageVars,
227
- plugins: pageJson.plugins,
228
- pageLayoutMode: pageJson.pageLayoutMode
229
- };
230
- } catch (error) {
231
- message.warn(t("sys.pageDesigner.codeError"));
232
- throw new Error(error.message);
233
- }
168
+ /**
169
+ * 递归遍历 tree 并组装运行时 JSON
170
+ *
171
+ * @returns {Promise<RuntimePageJson>} 运行时页面JSON
172
+ */
173
+ async function buildRuntimeJson() {
174
+ try {
175
+ const runtimeWidgets = TreeHelper.traverseAndBuildTree(JSON.parse(JSON.stringify(pageJson.widgets)), (node) => findWidgetCallback(node));
176
+ /**经过babel转换过的所有函数集合包含未export ES5字符串
177
+ 来源于页面JS和逻辑编排*/
178
+ const funcStr = await buildRunJs(pageJson.js);
179
+ const modals = pageJson.modals.map(async (modal) => {
180
+ const modalFuncStr = await buildRunJs(modal.js);
181
+ const runtimeWidgets = TreeHelper.traverseAndBuildTree(JSON.parse(JSON.stringify(modal.children)), (node) => findWidgetCallback(node, modal));
182
+ return {
183
+ props: modal.props,
184
+ css: modal.css,
185
+ modalName: modal.modalName,
186
+ id: modal.id,
187
+ i18n: modal.i18n || {},
188
+ events: modal.events,
189
+ children: runtimeWidgets,
190
+ runJs: modalFuncStr,
191
+ style: modal.style
192
+ };
193
+ });
194
+ return {
195
+ widgets: runtimeWidgets,
196
+ runJs: funcStr,
197
+ modals: await Promise.all(modals),
198
+ css: pageJson.css,
199
+ keepAlive: pageJson.keepAlive,
200
+ globalEvents: pageJson.globalEvents,
201
+ pageEvents: pageJson.pageEvents,
202
+ permissions: pageJson.permissions,
203
+ pageStyle: pageJson.style,
204
+ pageConfig: pageJson.pageConfig,
205
+ pageVars: pageJson.pageVars,
206
+ plugins: pageJson.plugins,
207
+ pageLayoutMode: pageJson.pageLayoutMode
208
+ };
209
+ } catch (error) {
210
+ message.warn(t("sys.pageDesigner.codeError"));
211
+ throw error;
212
+ }
234
213
  }
214
+ /**
215
+ * 查找组件的运行时回调处理
216
+ *
217
+ * @param {LowCodeWidget.BasicSchema} node 组件节点
218
+ * @param {LowCodeModal.Modal} modal 所属弹框
219
+ * @returns {*} 回调结果
220
+ */
235
221
  function findWidgetCallback(node, modal) {
236
- return widgetInfo.value.callback[node.type]?.(node, modal);
222
+ return widgetInfo.value.callback[node.type]?.(node, modal);
237
223
  }
238
-
224
+ //#endregion
239
225
  export { buildRuntimeJson, useDesignSave };
@@ -6,7 +6,7 @@ import { LowCodeWidget, LowCodeModal } from '@gct-paas/schema';
6
6
  type PropNameType = string | Record<string, string>;
7
7
  export declare const propEditorProps: {
8
8
  propName: {
9
- type: (ObjectConstructor | StringConstructor)[];
9
+ type: StringConstructor;
10
10
  default: string;
11
11
  };
12
12
  propConfig: {
@@ -14,7 +14,7 @@ export declare const propEditorProps: {
14
14
  default: {};
15
15
  };
16
16
  changeCallback: {
17
- type: FunctionConstructor;
17
+ type: PropType<(widget: LowCodeWidget.BasicSchema | LowCodeModal.Modal | Partial<LowCodeWidget.BasicSchema> | Partial<LowCodeModal.Modal> | undefined, value: unknown) => void>;
18
18
  };
19
19
  required: {
20
20
  type: BooleanConstructor;