@luck-design-biz/luckda 1.0.1 → 1.0.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 (227) hide show
  1. package/es/components/LDActions/index.less +3 -1
  2. package/es/components/LdAutoForm/index.js +2 -1
  3. package/es/components/LdCard/index.js +154 -67
  4. package/es/components/LdFormList/index.js +20 -6
  5. package/es/components/LdGridForm/index.js +40 -24
  6. package/es/components/LdTree/index.js +14 -8
  7. package/es/components/LdTree/index.less +4 -2
  8. package/es/helper/ldBuilder.js +1 -1
  9. package/es/locales/zh-CN.js +13 -4
  10. package/es/lowcode/constants/index.js +1 -1
  11. package/es/lowcode/engine/meta/cardlist.props.default.json +27 -6
  12. package/es/lowcode/engine/meta/cardlist.props.json +254 -72
  13. package/es/lowcode/engine/meta/components-list.json +6 -102
  14. package/es/lowcode/engine/meta/dialog.props.default.json +4 -2
  15. package/es/lowcode/engine/meta/dialog.props.json +74 -18
  16. package/es/lowcode/engine/meta/drawer.props.default.json +15 -4
  17. package/es/lowcode/engine/meta/drawer.props.json +144 -24
  18. package/es/lowcode/engine/meta/form.props.default.json +14 -3
  19. package/es/lowcode/engine/meta/form.props.json +49 -9
  20. package/es/lowcode/engine/meta/grouptree.props.default.json +16 -0
  21. package/es/lowcode/engine/meta/grouptree.props.json +83 -0
  22. package/es/lowcode/engine/meta/iframe.props.default.json +1 -1
  23. package/es/lowcode/engine/meta/iframe.props.json +3 -4
  24. package/es/lowcode/engine/meta/image.props.default.json +3 -2
  25. package/es/lowcode/engine/meta/image.props.json +51 -16
  26. package/es/lowcode/engine/meta/imex.props.json +1 -1
  27. package/es/lowcode/engine/meta/js-editor/auto-complete.json +23 -5
  28. package/es/lowcode/engine/meta/link.props.default.json +1 -1
  29. package/es/lowcode/engine/meta/link.props.json +9 -9
  30. package/es/lowcode/engine/meta/table.props.json +1 -1
  31. package/es/lowcode/engine/meta/tabs.props.default.json +1 -1
  32. package/es/lowcode/engine/meta/tabs.props.json +1 -1
  33. package/es/lowcode/engine/meta/tree.props.json +2 -2
  34. package/es/lowcode/engine/provider/ContextProvider/index.js +6 -2
  35. package/es/lowcode/engine/provider/ContextProvider/usePageDataStore.js +82 -2
  36. package/es/lowcode/engine/tools/helper.js +21 -0
  37. package/es/lowcode/engine/tools/useCanvasRender.js +13 -1
  38. package/es/lowcode/painter/Components.js +6 -1
  39. package/es/lowcode/painter/Design.js +1 -0
  40. package/es/lowcode/painter/DesignOperator.js +25 -15
  41. package/es/lowcode/painter/DesignToolbar.js +78 -47
  42. package/es/lowcode/painter/Ribbon.js +14 -1
  43. package/es/lowcode/painter/components/ActionBindModal.js +3 -7
  44. package/es/lowcode/painter/components/DragDrop/DragDropContext.js +144 -37
  45. package/es/lowcode/painter/components/DragDrop/DragDropWrapper.js +29 -6
  46. package/es/lowcode/painter/components/DragDrop/Overlay.js +5 -2
  47. package/es/lowcode/painter/components/DragDrop/TreeDragDropWrapper.js +7 -4
  48. package/es/lowcode/painter/components/NumberInput.js +1 -1
  49. package/es/lowcode/painter/components/code-editor/BaseEditor.js +2 -1
  50. package/es/lowcode/painter/components/field-setting/FieldAttrs.js +2 -2
  51. package/es/lowcode/painter/components/field-setting/SettingUI.js +30 -2
  52. package/es/lowcode/painter/components/field-setting/index.js +26 -12
  53. package/es/lowcode/painter/expect.js +27 -0
  54. package/es/lowcode/painter/panel-section/ActionsEditor/ActionEditor.js +20 -2
  55. package/es/lowcode/painter/panel-section/ActionsEditor/index.js +18 -3
  56. package/es/lowcode/painter/panel-section/ComplexPop.js +1 -1
  57. package/es/lowcode/painter/panel-section/DataSetSelector.js +14 -3
  58. package/es/lowcode/painter/panel-section/FieldsSetting.js +2 -2
  59. package/es/lowcode/painter/panel-section/GroupClassSelector.js +55 -0
  60. package/es/lowcode/painter/panel-section/PageVars.js +1 -1
  61. package/es/lowcode/painter/panel-section/StylePanel/MainPanel.js +1 -0
  62. package/es/lowcode/painter/panel-section/TabItems.js +1 -1
  63. package/es/lowcode/painter/panel-section/TableTopFilter.js +3 -3
  64. package/es/lowcode/painter/style/action-bind-modal.less +5 -3
  65. package/es/lowcode/painter/style/design.less +26 -7
  66. package/es/lowcode/painter/style/dragdrop.less +46 -0
  67. package/es/lowcode/painter/style/list-editor.less +5 -3
  68. package/es/lowcode/painter/style/number-input.less +3 -1
  69. package/es/lowcode/painter/style/outline.less +3 -1
  70. package/es/lowcode/painter/style/panel-attrs.less +7 -3
  71. package/es/lowcode/painter/style/panel.less +9 -7
  72. package/es/lowcode/painter/style/radio.less +1 -1
  73. package/es/lowcode/painter/style/ribbon.less +4 -2
  74. package/es/lowcode/painter/svg/code.svg +3 -0
  75. package/es/lowcode/painter/svg/expect.svg +9 -0
  76. package/es/lowcode/view/lc-components/CardList/index.js +481 -12
  77. package/es/lowcode/view/lc-components/CardList/meta.json +255 -73
  78. package/es/lowcode/view/lc-components/Dialog/FunctionDesign.js +14 -6
  79. package/es/lowcode/view/lc-components/Dialog/index.js +15 -5
  80. package/es/lowcode/view/lc-components/Dialog/index.less +4 -0
  81. package/es/lowcode/view/lc-components/Dialog/meta.json +72 -18
  82. package/es/lowcode/view/lc-components/Drawer/FunctionDesign.js +51 -8
  83. package/es/lowcode/view/lc-components/Drawer/index.js +139 -24
  84. package/es/lowcode/view/lc-components/Drawer/index.less +11 -8
  85. package/es/lowcode/view/lc-components/Drawer/meta.json +136 -25
  86. package/es/lowcode/view/lc-components/Form/FunctionDesign.js +2 -1
  87. package/es/lowcode/view/lc-components/Form/index.js +45 -28
  88. package/es/lowcode/view/lc-components/Form/meta.json +44 -8
  89. package/es/lowcode/view/lc-components/GroupTree/FunctionDesign.js +10 -0
  90. package/es/lowcode/view/lc-components/GroupTree/FunctionLive.js +10 -0
  91. package/es/lowcode/view/lc-components/GroupTree/FunctionPreview.js +10 -0
  92. package/es/lowcode/view/lc-components/GroupTree/index.js +212 -0
  93. package/es/lowcode/view/lc-components/GroupTree/index.less +12 -0
  94. package/es/lowcode/view/lc-components/GroupTree/meta.json +83 -0
  95. package/es/lowcode/view/lc-components/Iframe/index.js +57 -7
  96. package/es/lowcode/view/lc-components/Iframe/meta.json +3 -4
  97. package/es/lowcode/view/lc-components/ImEx/meta.json +1 -1
  98. package/es/lowcode/view/lc-components/Image/index.js +82 -6
  99. package/es/lowcode/view/lc-components/Image/index.less +27 -0
  100. package/es/lowcode/view/lc-components/Image/meta.json +51 -16
  101. package/es/lowcode/view/lc-components/Link/index.js +53 -5
  102. package/es/lowcode/view/lc-components/Link/index.less +15 -0
  103. package/es/lowcode/view/lc-components/Link/meta.json +9 -9
  104. package/es/lowcode/view/lc-components/Table/index.js +5 -6
  105. package/es/lowcode/view/lc-components/Table/meta.json +1 -1
  106. package/es/lowcode/view/lc-components/Tabs/FunctionDesign.js +40 -4
  107. package/es/lowcode/view/lc-components/Tabs/index.js +1 -1
  108. package/es/lowcode/view/lc-components/Tabs/meta.json +1 -1
  109. package/es/lowcode/view/lc-components/Tree/index.js +21 -19
  110. package/es/lowcode/view/lc-components/Tree/meta.json +2 -2
  111. package/es/utils/grid.js +3 -3
  112. package/lib/components/LDActions/index.less +3 -1
  113. package/lib/components/LdAutoForm/index.js +2 -1
  114. package/lib/components/LdCard/index.js +153 -66
  115. package/lib/components/LdFormList/index.js +19 -5
  116. package/lib/components/LdGridForm/index.js +40 -24
  117. package/lib/components/LdTree/index.js +14 -8
  118. package/lib/components/LdTree/index.less +4 -2
  119. package/lib/helper/ldBuilder.js +2 -2
  120. package/lib/locales/zh-CN.js +13 -4
  121. package/lib/lowcode/constants/index.js +1 -1
  122. package/lib/lowcode/engine/meta/cardlist.props.default.json +27 -6
  123. package/lib/lowcode/engine/meta/cardlist.props.json +254 -72
  124. package/lib/lowcode/engine/meta/components-list.json +6 -102
  125. package/lib/lowcode/engine/meta/dialog.props.default.json +4 -2
  126. package/lib/lowcode/engine/meta/dialog.props.json +74 -18
  127. package/lib/lowcode/engine/meta/drawer.props.default.json +15 -4
  128. package/lib/lowcode/engine/meta/drawer.props.json +144 -24
  129. package/lib/lowcode/engine/meta/form.props.default.json +14 -3
  130. package/lib/lowcode/engine/meta/form.props.json +49 -9
  131. package/lib/lowcode/engine/meta/grouptree.props.default.json +16 -0
  132. package/lib/lowcode/engine/meta/grouptree.props.json +83 -0
  133. package/lib/lowcode/engine/meta/iframe.props.default.json +1 -1
  134. package/lib/lowcode/engine/meta/iframe.props.json +3 -4
  135. package/lib/lowcode/engine/meta/image.props.default.json +3 -2
  136. package/lib/lowcode/engine/meta/image.props.json +51 -16
  137. package/lib/lowcode/engine/meta/imex.props.json +1 -1
  138. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +23 -5
  139. package/lib/lowcode/engine/meta/link.props.default.json +1 -1
  140. package/lib/lowcode/engine/meta/link.props.json +9 -9
  141. package/lib/lowcode/engine/meta/table.props.json +1 -1
  142. package/lib/lowcode/engine/meta/tabs.props.default.json +1 -1
  143. package/lib/lowcode/engine/meta/tabs.props.json +1 -1
  144. package/lib/lowcode/engine/meta/tree.props.json +2 -2
  145. package/lib/lowcode/engine/provider/ContextProvider/index.js +6 -2
  146. package/lib/lowcode/engine/provider/ContextProvider/usePageDataStore.js +83 -3
  147. package/lib/lowcode/engine/tools/helper.js +22 -0
  148. package/lib/lowcode/engine/tools/useCanvasRender.js +13 -1
  149. package/lib/lowcode/painter/Components.js +6 -1
  150. package/lib/lowcode/painter/Design.js +1 -0
  151. package/lib/lowcode/painter/DesignOperator.js +25 -15
  152. package/lib/lowcode/painter/DesignToolbar.js +78 -47
  153. package/lib/lowcode/painter/Ribbon.js +14 -1
  154. package/lib/lowcode/painter/components/ActionBindModal.js +3 -7
  155. package/lib/lowcode/painter/components/DragDrop/DragDropContext.js +142 -35
  156. package/lib/lowcode/painter/components/DragDrop/DragDropWrapper.js +27 -4
  157. package/lib/lowcode/painter/components/DragDrop/Overlay.js +5 -2
  158. package/lib/lowcode/painter/components/DragDrop/TreeDragDropWrapper.js +7 -4
  159. package/lib/lowcode/painter/components/NumberInput.js +1 -1
  160. package/lib/lowcode/painter/components/code-editor/BaseEditor.js +2 -1
  161. package/lib/lowcode/painter/components/field-setting/FieldAttrs.js +2 -2
  162. package/lib/lowcode/painter/components/field-setting/SettingUI.js +29 -1
  163. package/lib/lowcode/painter/components/field-setting/index.js +26 -12
  164. package/lib/lowcode/painter/expect.js +34 -0
  165. package/lib/lowcode/painter/panel-section/ActionsEditor/ActionEditor.js +19 -1
  166. package/lib/lowcode/painter/panel-section/ActionsEditor/index.js +18 -3
  167. package/lib/lowcode/painter/panel-section/ComplexPop.js +1 -1
  168. package/lib/lowcode/painter/panel-section/DataSetSelector.js +14 -3
  169. package/lib/lowcode/painter/panel-section/FieldsSetting.js +2 -2
  170. package/lib/lowcode/painter/panel-section/GroupClassSelector.js +63 -0
  171. package/lib/lowcode/painter/panel-section/PageVars.js +1 -1
  172. package/lib/lowcode/painter/panel-section/StylePanel/MainPanel.js +1 -0
  173. package/lib/lowcode/painter/panel-section/TabItems.js +1 -1
  174. package/lib/lowcode/painter/panel-section/TableTopFilter.js +3 -3
  175. package/lib/lowcode/painter/style/action-bind-modal.less +5 -3
  176. package/lib/lowcode/painter/style/design.less +26 -7
  177. package/lib/lowcode/painter/style/dragdrop.less +46 -0
  178. package/lib/lowcode/painter/style/list-editor.less +5 -3
  179. package/lib/lowcode/painter/style/number-input.less +3 -1
  180. package/lib/lowcode/painter/style/outline.less +3 -1
  181. package/lib/lowcode/painter/style/panel-attrs.less +7 -3
  182. package/lib/lowcode/painter/style/panel.less +9 -7
  183. package/lib/lowcode/painter/style/radio.less +1 -1
  184. package/lib/lowcode/painter/style/ribbon.less +4 -2
  185. package/lib/lowcode/painter/svg/code.svg +3 -0
  186. package/lib/lowcode/painter/svg/expect.svg +9 -0
  187. package/lib/lowcode/view/lc-components/CardList/index.js +480 -11
  188. package/lib/lowcode/view/lc-components/CardList/meta.json +255 -73
  189. package/lib/lowcode/view/lc-components/Dialog/FunctionDesign.js +13 -5
  190. package/lib/lowcode/view/lc-components/Dialog/index.js +15 -5
  191. package/lib/lowcode/view/lc-components/Dialog/index.less +4 -0
  192. package/lib/lowcode/view/lc-components/Dialog/meta.json +72 -18
  193. package/lib/lowcode/view/lc-components/Drawer/FunctionDesign.js +52 -8
  194. package/lib/lowcode/view/lc-components/Drawer/index.js +138 -23
  195. package/lib/lowcode/view/lc-components/Drawer/index.less +11 -8
  196. package/lib/lowcode/view/lc-components/Drawer/meta.json +136 -25
  197. package/lib/lowcode/view/lc-components/Form/FunctionDesign.js +2 -1
  198. package/lib/lowcode/view/lc-components/Form/index.js +44 -27
  199. package/lib/lowcode/view/lc-components/Form/meta.json +44 -8
  200. package/lib/lowcode/view/lc-components/GroupTree/FunctionDesign.js +17 -0
  201. package/lib/lowcode/view/lc-components/GroupTree/FunctionLive.js +17 -0
  202. package/lib/lowcode/view/lc-components/GroupTree/FunctionPreview.js +17 -0
  203. package/lib/lowcode/view/lc-components/GroupTree/index.js +220 -0
  204. package/lib/lowcode/view/lc-components/GroupTree/index.less +12 -0
  205. package/lib/lowcode/view/lc-components/GroupTree/meta.json +83 -0
  206. package/lib/lowcode/view/lc-components/Iframe/index.js +55 -5
  207. package/lib/lowcode/view/lc-components/Iframe/meta.json +3 -4
  208. package/lib/lowcode/view/lc-components/ImEx/meta.json +1 -1
  209. package/lib/lowcode/view/lc-components/Image/index.js +80 -4
  210. package/lib/lowcode/view/lc-components/Image/index.less +27 -0
  211. package/lib/lowcode/view/lc-components/Image/meta.json +51 -16
  212. package/lib/lowcode/view/lc-components/Link/index.js +52 -4
  213. package/lib/lowcode/view/lc-components/Link/index.less +15 -0
  214. package/lib/lowcode/view/lc-components/Link/meta.json +9 -9
  215. package/lib/lowcode/view/lc-components/Table/index.js +5 -6
  216. package/lib/lowcode/view/lc-components/Table/meta.json +1 -1
  217. package/lib/lowcode/view/lc-components/Tabs/FunctionDesign.js +38 -2
  218. package/lib/lowcode/view/lc-components/Tabs/index.js +1 -1
  219. package/lib/lowcode/view/lc-components/Tabs/meta.json +1 -1
  220. package/lib/lowcode/view/lc-components/Tree/index.js +20 -18
  221. package/lib/lowcode/view/lc-components/Tree/meta.json +2 -2
  222. package/lib/utils/grid.js +2 -2
  223. package/package.json +10 -9
  224. package/es/lowcode/painter/style/treedragdrop.less +0 -19
  225. package/es/lowcode/view/lc-components/Form/index.less +0 -5
  226. package/lib/lowcode/painter/style/treedragdrop.less +0 -19
  227. package/lib/lowcode/view/lc-components/Form/index.less +0 -5
@@ -12,7 +12,20 @@
12
12
  {
13
13
  "name": "CardList",
14
14
  "triggerWord": "cardlist",
15
- "completions": []
15
+ "completions": [
16
+ {
17
+ "label": "getInstance",
18
+ "kind": "method",
19
+ "insertText": "getInstance",
20
+ "documentation": " /**\r\n * 获取表格实例\r\n * @method\r\n */\r"
21
+ },
22
+ {
23
+ "label": "refresh",
24
+ "kind": "method",
25
+ "insertText": "refresh",
26
+ "documentation": " /**\r\n * 刷新表格\r\n * @method\r\n */\r"
27
+ }
28
+ ]
16
29
  },
17
30
  {
18
31
  "name": "Dialog",
@@ -52,7 +65,7 @@
52
65
  "label": "open",
53
66
  "kind": "property",
54
67
  "insertText": "open",
55
- "documentation": " /**\r\n * 是否打开\r\n * @property\r\n */\r"
68
+ "documentation": " /**\r\n * 弹窗打开状态\r\n * @property\r\n */\r"
56
69
  },
57
70
  {
58
71
  "label": "doOpen",
@@ -67,10 +80,10 @@
67
80
  "documentation": " /**\r\n * 关闭弹窗\r\n * @method\r\n */\r"
68
81
  },
69
82
  {
70
- "label": "toggle",
83
+ "label": "setTitle",
71
84
  "kind": "method",
72
- "insertText": "toggle",
73
- "documentation": " /**\r\n * @method\r\n * 切换弹窗\r\n */\r"
85
+ "insertText": "setTitle(title)",
86
+ "documentation": " /**\r\n * 设置弹窗标题\r\n * @method\r\n * @param {stirng} title -标题\r\n */\r"
74
87
  }
75
88
  ]
76
89
  },
@@ -92,6 +105,11 @@
92
105
  }
93
106
  ]
94
107
  },
108
+ {
109
+ "name": "GroupTree",
110
+ "triggerWord": "grouptree",
111
+ "completions": []
112
+ },
95
113
  {
96
114
  "name": "Iframe",
97
115
  "triggerWord": "iframe",
@@ -9,7 +9,7 @@
9
9
  "css": "",
10
10
  "textOverflow": false,
11
11
  "type": "page",
12
- "isLayer": false,
12
+ "isBlank": true,
13
13
  "effect": "hidden",
14
14
  "advance": {
15
15
  "events": {}
@@ -9,7 +9,7 @@
9
9
  "props": [
10
10
  {
11
11
  "key": "id",
12
- "desc": "唯一标识",
12
+ "name": "唯一标识",
13
13
  "type": "string",
14
14
  "disabled": true
15
15
  },
@@ -22,8 +22,8 @@
22
22
  {
23
23
  "key": "textOverflow",
24
24
  "name": "单行截断",
25
- "desc": "文字超过一行,使甲...显示;开后此项后,同时会显示html标签的title",
26
- "type": "boolean",
25
+ "desc": "文字超过一行,使用...显示;开后此项后,同时会显示html标签的title",
26
+ "type": "switch",
27
27
  "default": false
28
28
  },
29
29
  {
@@ -50,16 +50,16 @@
50
50
  "type": "string"
51
51
  },
52
52
  {
53
- "key": "isLayer",
54
- "name": "弹窗打开",
55
- "desc": "是否以弹窗形式打开",
56
- "type": "boolean",
57
- "default": false
53
+ "key": "isBlank",
54
+ "name": "新开页面",
55
+ "desc": "是否新开页面",
56
+ "type": "switch",
57
+ "default": true
58
58
  },
59
59
  {
60
60
  "key": "params",
61
61
  "name": "携带参数",
62
- "desc": "超链的携带参数",
62
+ "desc": "超链的携带参数,key=value形式,多个参数中间用&拼接,例如:pageNo=1&pageSize=20",
63
63
  "type": "string"
64
64
  },
65
65
  {
@@ -168,7 +168,7 @@
168
168
  "default": {
169
169
  "todoList": []
170
170
  },
171
- "defaultCode": "function onBatchOperationsClick(key, selectedRows) {\n\n}",
171
+ "defaultCode": "function onBatchOperationsClick(key, selectedRows, cb) {\n\n}",
172
172
  "suppressDisplay": true,
173
173
  "suppressMax": true,
174
174
  "suppressMore": true,
@@ -12,7 +12,7 @@
12
12
  "id": "tab_lvwdncx1",
13
13
  "name": "标签项",
14
14
  "active": true,
15
- "destory": false,
15
+ "destory": true,
16
16
  "serial": null,
17
17
  "serialEffect": "hidden"
18
18
  }
@@ -23,7 +23,7 @@
23
23
  "id": "tab_lvwdncx1",
24
24
  "name": "标签项",
25
25
  "active": true,
26
- "destory": false,
26
+ "destory": true,
27
27
  "serial": null,
28
28
  "serialEffect": "hidden"
29
29
  }
@@ -9,7 +9,7 @@
9
9
  "props": [
10
10
  {
11
11
  "key": "id",
12
- "desc": "唯一标识",
12
+ "name": "唯一标识",
13
13
  "type": "string",
14
14
  "disabled": true
15
15
  },
@@ -194,7 +194,7 @@
194
194
  "props": [
195
195
  {
196
196
  "key": "cancelSelect",
197
- "name": "取消选中",
197
+ "name": "允许取消选中",
198
198
  "desc": "是否可以取消选中",
199
199
  "type": "switch",
200
200
  "default": true
@@ -75,11 +75,15 @@ var _default = exports.default = function _default(_ref) {
75
75
  _componentList.current.push([id, component]);
76
76
  });
77
77
  var _unregister = (0, _ahooks.useMemoizedFn)(function (id) {
78
- _componentList.current = _componentList.current.filter(function (_ref2) {
78
+ var index = _componentList.current.findIndex(function (_ref2) {
79
79
  var _ref3 = (0, _slicedToArray2.default)(_ref2, 1),
80
80
  _id = _ref3[0];
81
- return _id !== id;
81
+ return _id === id;
82
82
  });
83
+ if (index !== -1) {
84
+ _componentList.current.splice(index, 1);
85
+ }
86
+ ;
83
87
  });
84
88
  var _initRemoteApiMap = (0, _ahooks.useMemoizedFn)(function (_apiMap) {
85
89
  _remoteApiMap.current = _apiMap;
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.useTemporalStore = exports.useTask = exports.useGet = exports.setNeedPrompt = exports.resetPageData = exports.modifyNode = exports.getSelfAndParent = exports.getNeedPrompt = exports.getModuleData = exports.getLevelNodes = exports.deleteNode = exports.default = exports.clearChildren = exports.addNode = void 0;
7
+ exports.useTemporalStore = exports.useTask = exports.useGet = exports.setNeedPrompt = exports.resetPageData = exports.moveNode = exports.modifyNode = exports.getSelfAndParent = exports.getNeedPrompt = exports.getModuleData = exports.getLevelNodes = exports.deleteNode = exports.default = exports.clearChildren = exports.addNode = void 0;
8
8
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
10
  var _react = require("react");
@@ -264,13 +264,93 @@ var modifyNode = exports.modifyNode = function modifyNode(id, data) {
264
264
  });
265
265
  });
266
266
  };
267
+
268
+ /**
269
+ * 移动页面中的一个节点到另一个位置。
270
+ *
271
+ * @param {string} sid - 源节点的ID。
272
+ * @param {string} tid - 目标节点的ID。
273
+ * @param {string} action - 移动类型,可以是 'inside', 'left', 'right' 中的一个。
274
+ * @param {string} newid - 新节点的ID,仅在创建新节点时使用。
275
+ * @param {Object} json - 新节点的初始属性,仅在创建新节点时使用。
276
+ *
277
+ * @description
278
+ * 此函数会更新页面数据状态,根据提供的动作类型(`action`),将源节点(`sourceNode`)移动到目标节点(`targetNode`)的相应位置。
279
+ * - 'inside': 将源节点作为目标节点的子节点。
280
+ * - 'left': 将源节点放在目标节点的左边(同一父节点下)。
281
+ * - 'right': 将源节点放在目标节点的右边(同一父节点下)。
282
+ * 如果 `sid` 是空但提供了 `newid`,则函数会创建一个新的节点。
283
+ *
284
+ */
285
+ var moveNode = exports.moveNode = function moveNode(sid, tid, action, newid, json) {
286
+ usePageDataStore.setState(function (state) {
287
+ var sourceNode;
288
+ var sourceParent;
289
+ if (sid) {
290
+ var sourceData = findNode(state.pageData, sid) || {};
291
+ sourceNode = sourceData === null || sourceData === void 0 ? void 0 : sourceData.target;
292
+ sourceParent = sourceData === null || sourceData === void 0 ? void 0 : sourceData.parent;
293
+ } else if (newid) {
294
+ sid = newid;
295
+ sourceNode = {
296
+ props: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, json), {}, {
297
+ id: newid
298
+ })
299
+ };
300
+ }
301
+ var _ref4 = findNode(state.pageData, tid) || {},
302
+ targetNode = _ref4.target,
303
+ targetParent = _ref4.parent;
304
+ if (!sourceNode || !targetNode) {
305
+ console.error('Source or target node does not exist.');
306
+ return;
307
+ }
308
+ if (sourceParent) {
309
+ sourceParent.children.splice(sourceParent.children.indexOf(sid), 1);
310
+ if (sourceParent.children.length === 0) {
311
+ delete sourceParent['children'];
312
+ }
313
+ delete sourceParent[sid];
314
+ }
315
+ switch (action) {
316
+ case 'inside':
317
+ if (!targetNode.hasOwnProperty('children')) {
318
+ targetNode.children = [];
319
+ }
320
+ targetNode.children.push(sid);
321
+ sourceNode.props.parentId = tid;
322
+ targetNode[sid] = sourceNode;
323
+ break;
324
+ case 'left':
325
+ case 'right':
326
+ if (!targetParent) {
327
+ console.error('Target node must have a parent for left or right operations.');
328
+ return;
329
+ }
330
+ var idx = targetParent.children.indexOf(tid);
331
+ if (idx === -1) {
332
+ console.error("Target node is not found in its parent's children list.");
333
+ return;
334
+ }
335
+ if (action === 'right') {
336
+ idx++;
337
+ }
338
+ targetParent.children.splice(idx, 0, sid);
339
+ sourceNode.props.parentId = targetParent.props.id;
340
+ targetParent[sid] = sourceNode;
341
+ break;
342
+ default:
343
+ break;
344
+ }
345
+ });
346
+ };
267
347
  var clearChildren = exports.clearChildren = function clearChildren(id) {
268
348
  usePageDataStore.setState(function (state) {
269
349
  if (id === _constants.LC_BUILDIN_UNIT_KEY.PAGE_ROOT) {
270
350
  return;
271
351
  }
272
- var _ref4 = findNode(state.pageData, id) || {},
273
- target = _ref4.target;
352
+ var _ref5 = findNode(state.pageData, id) || {},
353
+ target = _ref5.target;
274
354
  if (!target) return;
275
355
  (0, _lodash.forEach)(target.children, function (c) {
276
356
  delete target[c];
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.executeCode = executeCode;
8
8
  exports.extractKeywords = extractKeywords;
9
+ exports.findFirstLeafNode = findFirstLeafNode;
9
10
  exports.getCtx = getCtx;
10
11
  exports.getFuncBody = getFuncBody;
11
12
  exports.getLDMetaAttr = getLDMetaAttr;
@@ -260,4 +261,25 @@ function loadScript(path) {
260
261
  ref: script,
261
262
  status: script.getAttribute('data-status') || 'ready'
262
263
  };
264
+ }
265
+ function findFirstLeafNode(node) {
266
+ if (!node.children || node.children.length === 0) {
267
+ return node;
268
+ }
269
+ var _iterator2 = (0, _createForOfIteratorHelper2.default)(node.children),
270
+ _step2;
271
+ try {
272
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
273
+ var child = _step2.value;
274
+ var leaf = findFirstLeafNode(child);
275
+ if (leaf) {
276
+ return leaf;
277
+ }
278
+ }
279
+ } catch (err) {
280
+ _iterator2.e(err);
281
+ } finally {
282
+ _iterator2.f();
283
+ }
284
+ return null;
263
285
  }
@@ -14,6 +14,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
14
14
  var _react = _interopRequireWildcard3(require("react"));
15
15
  var _umi = require("umi");
16
16
  var _ahooks = require("ahooks");
17
+ var _antd = require("luck-design/antd");
17
18
  var _lodash = require("lodash");
18
19
  var _ContextProvider = require("../provider/ContextProvider");
19
20
  var _constants = require("../../constants");
@@ -70,7 +71,18 @@ function useCanvasRender(data, deps) {
70
71
  return _loader.apply(this, arguments);
71
72
  }
72
73
  return loader;
73
- }()
74
+ }(),
75
+ loading: function loading() {
76
+ return /*#__PURE__*/_react.default.createElement(_antd.Skeleton, {
77
+ active: true,
78
+ title: {
79
+ width: '70%'
80
+ },
81
+ paragraph: {
82
+ rows: 7
83
+ }
84
+ });
85
+ }
74
86
  });
75
87
  }
76
88
  var renderable = true;
@@ -18,6 +18,7 @@ var _core = require("@dnd-kit/core");
18
18
  var _components = _interopRequireDefault(require("./style/components.less"));
19
19
  var _componentsList = _interopRequireDefault(require("../engine/meta/components-list.json"));
20
20
  var _DragDropContext = require("./components/DragDrop/DragDropContext");
21
+ var _expect = _interopRequireDefault(require("./expect.jsx"));
21
22
  var TabPane = _antd.Tabs.TabPane;
22
23
  var Search = _antd.Input.Search;
23
24
  var BaseCom = function BaseCom(_ref) {
@@ -133,6 +134,10 @@ var Components = function Components(_ref3) {
133
134
  label: '自定义组件'
134
135
  }),
135
136
  key: "dataset"
136
- }, "\u656C\u8BF7\u671F\u5F85")));
137
+ }, /*#__PURE__*/_react.default.createElement(_expect.default, {
138
+ style: {
139
+ paddingTop: '80px'
140
+ }
141
+ }))));
137
142
  };
138
143
  var _default = exports.default = Components;
@@ -76,6 +76,7 @@ var Design = function Design() {
76
76
  locale: locale,
77
77
  onLangChange: handleLangChange
78
78
  }), /*#__PURE__*/_react.default.createElement("div", {
79
+ id: "design-workspace",
79
80
  className: _design.default['lc-painter-design-workspace']
80
81
  }, /*#__PURE__*/_react.default.createElement(_DesignOperator.default, {
81
82
  canvas: simulatorRef
@@ -11,6 +11,7 @@ var _react = _interopRequireWildcard(require("react"));
11
11
  var _lodash = require("lodash");
12
12
  var _ahooks = require("ahooks");
13
13
  var _antd = require("luck-design/antd");
14
+ var _classnames = _interopRequireDefault(require("classnames"));
14
15
  var _utils = require("@luck-design-biz/base/utils");
15
16
  var _ContextProvider = require("../engine/provider/ContextProvider");
16
17
  var _constants = require("../constants");
@@ -32,7 +33,7 @@ var getOperatorStyle = function getOperatorStyle(canvas, cellNode) {
32
33
  };
33
34
  };
34
35
  var DesignOperator = function DesignOperator(_ref) {
35
- var _getElement, _getElement2;
36
+ var _getElement2;
36
37
  var canvas = _ref.canvas;
37
38
  var context = (0, _ContextProvider.useContext)();
38
39
  var size = (0, _ahooks.useSize)(canvas);
@@ -76,7 +77,9 @@ var DesignOperator = function DesignOperator(_ref) {
76
77
  context.$publisher(context.topics.COMPONENT_APPEND, {
77
78
  id: _id
78
79
  });
79
- handleSelect(_id);
80
+ setTimeout(function () {
81
+ handleSelect(_id);
82
+ });
80
83
  }
81
84
  }).watch();
82
85
  var json = require("../engine/meta/".concat(data.component.toLowerCase(), ".props.default.json"));
@@ -117,6 +120,15 @@ var DesignOperator = function DesignOperator(_ref) {
117
120
  }))
118
121
  };
119
122
  }, [operatorId.selector]);
123
+ var activeDomPosition = (0, _ahooks.useCreation)(function () {
124
+ var _getElement;
125
+ if (!operatorId.selector && !operatorId.selectorTarget) return null;
126
+ var targetTop = (_getElement = getElement((0, _lodash.isNil)(operatorId.selectorTarget) ? operatorId.selector : operatorId.selectorTarget.element)) === null || _getElement === void 0 ? void 0 : _getElement.getBoundingClientRect().top;
127
+ var delat = targetTop - canvas.current.getBoundingClientRect().top;
128
+ return {
129
+ top: delat > 24 ? -24 : 0
130
+ };
131
+ }, [operatorId.selector, operatorId.selectorTarget]);
120
132
  var lastDetectorName = (0, _ahooks.useCreation)(function () {
121
133
  var _last;
122
134
  return operatorId.detector && (0, _lodash.isString)(operatorId.detector) ? (_last = (0, _lodash.last)(context.componentMap.get(operatorId.detector).api.getLevelNodes())) === null || _last === void 0 ? void 0 : _last.name : void 0;
@@ -218,9 +230,11 @@ var DesignOperator = function DesignOperator(_ref) {
218
230
  }).watch();
219
231
  var hcid = context.$subscriber(context.topics.COMPONENT_HOVER).on(function (payload) {
220
232
  if (payload.target) setOperatorId({
221
- detector: payload.target
233
+ detector: payload.target,
234
+ detectorSide: payload.side
222
235
  });else setOperatorId({
223
- detector: null
236
+ detector: null,
237
+ detectorSide: null
224
238
  });
225
239
  }).watch();
226
240
  var acid = context.$subscriber(context.topics.COMPONENT_ACTIVE).on(function (payload) {
@@ -231,14 +245,16 @@ var DesignOperator = function DesignOperator(_ref) {
231
245
  selector: payload.target,
232
246
  selectorTarget: null,
233
247
  deletable: !node || node.props.buildIn !== true,
234
- detector: null
248
+ detector: null,
249
+ detectorSide: null
235
250
  });
236
251
  } else {
237
252
  setOperatorId({
238
253
  selector: payload.target.id,
239
254
  selectorTarget: payload.target,
240
255
  deletable: false,
241
- detector: null
256
+ detector: null,
257
+ detectorSide: null
242
258
  });
243
259
  }
244
260
  } else {
@@ -293,12 +309,12 @@ var DesignOperator = function DesignOperator(_ref) {
293
309
  }, [operatorId.selector]);
294
310
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, operatorId.detector && /*#__PURE__*/_react.default.createElement("div", {
295
311
  id: "lc-detector",
296
- className: _design.default['lc-painter-design-detector'],
312
+ className: (0, _classnames.default)(_design.default['lc-painter-design-detector'], _design.default["sider-".concat(operatorId.detectorSide)]),
297
313
  style: getOperatorStyle(canvas.current, getElement(operatorId.detector))
298
314
  }, /*#__PURE__*/_react.default.createElement("span", {
299
315
  className: _design.default['lc-painter-design-detector-name'],
300
316
  style: {
301
- top: ((_getElement = getElement(operatorId.detector)) === null || _getElement === void 0 ? void 0 : _getElement.offsetTop) < 23 ? 0 : '-23px'
317
+ top: ((_getElement2 = getElement(operatorId.detector)) === null || _getElement2 === void 0 ? void 0 : _getElement2.offsetTop) < 23 ? 0 : '-23px'
302
318
  }
303
319
  }, lastDetectorName ? "".concat(lastDetectorName, "(").concat(operatorId.detector, ")") : null)), operatorId.selector && /*#__PURE__*/_react.default.createElement("div", {
304
320
  id: "lc-selector",
@@ -307,13 +323,7 @@ var DesignOperator = function DesignOperator(_ref) {
307
323
  style: getOperatorStyle(canvas.current, getElement((0, _lodash.isNil)(operatorId.selectorTarget) ? operatorId.selector : operatorId.selectorTarget.element))
308
324
  }, acticeProps && /*#__PURE__*/_react.default.createElement("div", {
309
325
  className: _design.default['lc-borders-actions'],
310
- style: acticeProps.props.id === _constants.LC_BUILDIN_UNIT_KEY.PAGE_ROOT ? {
311
- top: 0
312
- } : ((_getElement2 = getElement((0, _lodash.isNil)(operatorId.selectorTarget) ? operatorId.selector : operatorId.selectorTarget.element)) === null || _getElement2 === void 0 ? void 0 : _getElement2.offsetTop) < 23 ? {
313
- bottom: '-23px'
314
- } : {
315
- top: '-23px'
316
- }
326
+ style: activeDomPosition
317
327
  }, /*#__PURE__*/_react.default.createElement(_antd.Dropdown, {
318
328
  overlay: acticeProps.menu,
319
329
  placement: "bottomLeft"