@duxweb/dvha-pro 1.0.25 → 1.0.27

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 (246) hide show
  1. package/dist/cjs/component.cjs +1 -1
  2. package/dist/cjs/components/chart/echart.cjs +1 -1
  3. package/dist/cjs/components/crop/imageCrop.cjs +1 -1
  4. package/dist/cjs/components/data/dynamicData.cjs +1 -1
  5. package/dist/cjs/components/data/dynamicSelect.cjs +1 -1
  6. package/dist/cjs/components/data/selectModal.cjs +1 -1
  7. package/dist/cjs/components/designEditor/components/grid.cjs +1 -0
  8. package/dist/cjs/components/designEditor/editor/hook.cjs +1 -0
  9. package/dist/cjs/components/designEditor/editor/preview.cjs +1 -0
  10. package/dist/cjs/components/designEditor/editor/setting.cjs +1 -0
  11. package/dist/cjs/components/designEditor/editor.cjs +1 -0
  12. package/dist/cjs/components/form/drawerForm.cjs +1 -1
  13. package/dist/cjs/components/form/formItem.cjs +1 -1
  14. package/dist/cjs/components/form/formLayout.cjs +1 -1
  15. package/dist/cjs/components/form/modalForm.cjs +1 -1
  16. package/dist/cjs/components/form/pageForm.cjs +1 -1
  17. package/dist/cjs/components/form/settingForm.cjs +1 -1
  18. package/dist/cjs/components/formEditor/base/base.cjs +1 -0
  19. package/dist/cjs/components/formEditor/base/json.cjs +1 -0
  20. package/dist/cjs/components/formEditor/base/options.cjs +1 -0
  21. package/dist/cjs/components/formEditor/base/setting.cjs +1 -0
  22. package/dist/cjs/components/formEditor/components/cascader.cjs +1 -0
  23. package/dist/cjs/components/formEditor/components/cascaderAsync.cjs +1 -0
  24. package/dist/cjs/components/formEditor/components/checkbox.cjs +1 -0
  25. package/dist/cjs/components/formEditor/components/color.cjs +1 -0
  26. package/dist/cjs/components/formEditor/components/date.cjs +1 -0
  27. package/dist/cjs/components/formEditor/components/dynamicInput.cjs +1 -0
  28. package/dist/cjs/components/formEditor/components/dynamicTags.cjs +1 -0
  29. package/dist/cjs/components/formEditor/components/editor.cjs +1 -0
  30. package/dist/cjs/components/formEditor/components/input.cjs +1 -0
  31. package/dist/cjs/components/formEditor/components/inputNumber.cjs +1 -0
  32. package/dist/cjs/components/formEditor/components/mentionAsync.cjs +1 -0
  33. package/dist/cjs/components/formEditor/components/radio.cjs +1 -0
  34. package/dist/cjs/components/formEditor/components/region.cjs +1 -0
  35. package/dist/cjs/components/formEditor/components/select.cjs +1 -0
  36. package/dist/cjs/components/formEditor/components/selectAsync.cjs +1 -0
  37. package/dist/cjs/components/formEditor/components/sider.cjs +1 -0
  38. package/dist/cjs/components/formEditor/components/switch.cjs +1 -0
  39. package/dist/cjs/components/formEditor/components/time.cjs +1 -0
  40. package/dist/cjs/components/formEditor/components/transferAsync.cjs +1 -0
  41. package/dist/cjs/components/formEditor/components/treeSelect.cjs +1 -0
  42. package/dist/cjs/components/formEditor/components/treeSelectAsync.cjs +1 -0
  43. package/dist/cjs/components/formEditor/editor.cjs +1 -0
  44. package/dist/cjs/components/formEditor/json.cjs +1 -0
  45. package/dist/cjs/components/formEditor/preview.cjs +1 -0
  46. package/dist/cjs/components/formEditor/renderer.cjs +1 -0
  47. package/dist/cjs/components/icon/icon.cjs +1 -1
  48. package/dist/cjs/components/layout/grid.cjs +1 -0
  49. package/dist/cjs/components/layout/list.cjs +1 -1
  50. package/dist/cjs/components/layout/table.cjs +1 -1
  51. package/dist/cjs/components/level/level.cjs +1 -1
  52. package/dist/cjs/components/posterEditor/pages/RightPanel.cjs +1 -0
  53. package/dist/cjs/components/posterEditor/posterEditor.cjs +1 -0
  54. package/dist/cjs/components/table/table.cjs +1 -1
  55. package/dist/cjs/components/upload/file.cjs +1 -1
  56. package/dist/cjs/components/upload/image.cjs +1 -1
  57. package/dist/cjs/components/upload/manage/item.cjs +1 -1
  58. package/dist/cjs/components/upload/manager.cjs +1 -1
  59. package/dist/cjs/hooks/action.cjs +1 -1
  60. package/dist/cjs/hooks/dialog.cjs +1 -1
  61. package/dist/cjs/hooks/drawer.cjs +1 -1
  62. package/dist/cjs/hooks/modal.cjs +1 -1
  63. package/dist/cjs/hooks/table/image.cjs +1 -1
  64. package/dist/cjs/hooks/table/media.cjs +1 -1
  65. package/dist/cjs/index.cjs +1 -1
  66. package/dist/cjs/langs/en-US.json.cjs +1 -1
  67. package/dist/cjs/langs/zh-CN.json.cjs +1 -1
  68. package/dist/cjs/pages/authLayout.cjs +1 -1
  69. package/dist/cjs/pages/layout/page.cjs +1 -1
  70. package/dist/cjs/pages/login.cjs +1 -1
  71. package/dist/cjs/pages/menu/avatar.cjs +1 -1
  72. package/dist/cjs/pages/menu/button.cjs +1 -1
  73. package/dist/cjs/pages/menu/cmd.cjs +1 -1
  74. package/dist/cjs/pages/menu/main.cjs +1 -1
  75. package/dist/cjs/pages/menu/mobile.cjs +1 -1
  76. package/dist/cjs/pages/page404.cjs +1 -1
  77. package/dist/cjs/pages/pageStatus.cjs +1 -1
  78. package/dist/cjs/theme/uno.css.cjs +35 -2
  79. package/dist/esm/component.js +33 -31
  80. package/dist/esm/components/chart/echart.js +6 -5
  81. package/dist/esm/components/crop/imageCrop.js +7 -6
  82. package/dist/esm/components/data/dynamicData.js +49 -46
  83. package/dist/esm/components/data/dynamicSelect.js +8 -7
  84. package/dist/esm/components/data/selectModal.js +6 -5
  85. package/dist/esm/components/designEditor/components/grid.js +175 -0
  86. package/dist/esm/components/designEditor/editor/hook.js +87 -0
  87. package/dist/esm/components/designEditor/editor/preview.js +65 -0
  88. package/dist/esm/components/designEditor/editor/setting.js +98 -0
  89. package/dist/esm/components/designEditor/editor.js +161 -0
  90. package/dist/esm/components/form/drawerForm.js +8 -7
  91. package/dist/esm/components/form/formItem.js +33 -33
  92. package/dist/esm/components/form/formLayout.js +11 -11
  93. package/dist/esm/components/form/modalForm.js +18 -17
  94. package/dist/esm/components/form/pageForm.js +38 -30
  95. package/dist/esm/components/form/settingForm.js +5 -4
  96. package/dist/esm/components/formEditor/base/base.js +117 -0
  97. package/dist/esm/components/formEditor/base/json.js +39 -0
  98. package/dist/esm/components/formEditor/base/options.js +48 -0
  99. package/dist/esm/components/formEditor/base/setting.js +108 -0
  100. package/dist/esm/components/formEditor/components/cascader.js +219 -0
  101. package/dist/esm/components/formEditor/components/cascaderAsync.js +213 -0
  102. package/dist/esm/components/formEditor/components/checkbox.js +212 -0
  103. package/dist/esm/components/formEditor/components/color.js +156 -0
  104. package/dist/esm/components/formEditor/components/date.js +197 -0
  105. package/dist/esm/components/formEditor/components/dynamicInput.js +227 -0
  106. package/dist/esm/components/formEditor/components/dynamicTags.js +150 -0
  107. package/dist/esm/components/formEditor/components/editor.js +139 -0
  108. package/dist/esm/components/formEditor/components/input.js +211 -0
  109. package/dist/esm/components/formEditor/components/inputNumber.js +188 -0
  110. package/dist/esm/components/formEditor/components/mentionAsync.js +180 -0
  111. package/dist/esm/components/formEditor/components/radio.js +212 -0
  112. package/dist/esm/components/formEditor/components/region.js +167 -0
  113. package/dist/esm/components/formEditor/components/select.js +203 -0
  114. package/dist/esm/components/formEditor/components/selectAsync.js +214 -0
  115. package/dist/esm/components/formEditor/components/sider.js +168 -0
  116. package/dist/esm/components/formEditor/components/switch.js +153 -0
  117. package/dist/esm/components/formEditor/components/time.js +171 -0
  118. package/dist/esm/components/formEditor/components/transferAsync.js +193 -0
  119. package/dist/esm/components/formEditor/components/treeSelect.js +207 -0
  120. package/dist/esm/components/formEditor/components/treeSelectAsync.js +179 -0
  121. package/dist/esm/components/formEditor/editor.js +164 -0
  122. package/dist/esm/components/formEditor/json.js +24 -0
  123. package/dist/esm/components/formEditor/preview.js +38 -0
  124. package/dist/esm/components/formEditor/renderer.js +151 -0
  125. package/dist/esm/components/icon/icon.js +7 -6
  126. package/dist/esm/components/layout/grid.js +24 -0
  127. package/dist/esm/components/layout/list.js +17 -16
  128. package/dist/esm/components/layout/table.js +15 -14
  129. package/dist/esm/components/level/level.js +6 -5
  130. package/dist/esm/components/{image → posterEditor}/pages/RightPanel.js +5 -4
  131. package/dist/esm/components/{image → posterEditor}/posterEditor.js +5 -4
  132. package/dist/esm/components/table/table.js +6 -5
  133. package/dist/esm/components/upload/file.js +10 -9
  134. package/dist/esm/components/upload/image.js +16 -15
  135. package/dist/esm/components/upload/manage/item.js +6 -5
  136. package/dist/esm/components/upload/manager.js +6 -5
  137. package/dist/esm/hooks/action.js +9 -9
  138. package/dist/esm/hooks/dialog.js +7 -6
  139. package/dist/esm/hooks/drawer.js +7 -6
  140. package/dist/esm/hooks/modal.js +6 -5
  141. package/dist/esm/hooks/table/image.js +6 -5
  142. package/dist/esm/hooks/table/media.js +6 -5
  143. package/dist/esm/index.js +218 -201
  144. package/dist/esm/langs/en-US.json.js +10 -10
  145. package/dist/esm/langs/zh-CN.json.js +8 -8
  146. package/dist/esm/pages/authLayout.js +7 -6
  147. package/dist/esm/pages/layout/page.js +6 -5
  148. package/dist/esm/pages/login.js +6 -5
  149. package/dist/esm/pages/menu/avatar.js +11 -10
  150. package/dist/esm/pages/menu/button.js +6 -5
  151. package/dist/esm/pages/menu/cmd.js +6 -5
  152. package/dist/esm/pages/menu/main.js +6 -5
  153. package/dist/esm/pages/menu/mobile.js +6 -5
  154. package/dist/esm/pages/page404.js +4 -3
  155. package/dist/esm/pages/pageStatus.js +9 -8
  156. package/dist/esm/theme/uno.css.js +35 -2
  157. package/dist/types/components/data/dynamicData.d.ts +1 -1
  158. package/dist/types/components/designEditor/components/grid.d.ts +2 -0
  159. package/dist/types/components/designEditor/components/index.d.ts +1 -0
  160. package/dist/types/components/designEditor/editor/hook.d.ts +57 -0
  161. package/dist/types/components/designEditor/editor/index.d.ts +3 -0
  162. package/dist/types/components/designEditor/editor/preview.d.ts +15 -0
  163. package/dist/types/components/designEditor/editor/setting.d.ts +14 -0
  164. package/dist/types/components/designEditor/editor.d.ts +19 -0
  165. package/dist/types/components/designEditor/index.d.ts +3 -0
  166. package/dist/types/components/form/drawerForm.d.ts +2 -2
  167. package/dist/types/components/form/formLayout.d.ts +2 -2
  168. package/dist/types/components/form/modalForm.d.ts +2 -2
  169. package/dist/types/components/form/pageForm.d.ts +9 -0
  170. package/dist/types/components/formEditor/base/base.d.ts +26 -0
  171. package/dist/types/components/formEditor/base/index.d.ts +4 -0
  172. package/dist/types/components/formEditor/base/json.d.ts +18 -0
  173. package/dist/types/components/formEditor/base/options.d.ts +23 -0
  174. package/dist/types/components/formEditor/base/setting.d.ts +13 -0
  175. package/dist/types/components/formEditor/components/cascader.d.ts +2 -0
  176. package/dist/types/components/formEditor/components/cascaderAsync.d.ts +2 -0
  177. package/dist/types/components/formEditor/components/checkbox.d.ts +2 -0
  178. package/dist/types/components/formEditor/components/color.d.ts +2 -0
  179. package/dist/types/components/formEditor/components/date.d.ts +2 -0
  180. package/dist/types/components/formEditor/components/dynamicInput.d.ts +2 -0
  181. package/dist/types/components/formEditor/components/dynamicTags.d.ts +2 -0
  182. package/dist/types/components/formEditor/components/editor.d.ts +2 -0
  183. package/dist/types/components/formEditor/components/index.d.ts +21 -0
  184. package/dist/types/components/formEditor/components/input.d.ts +2 -0
  185. package/dist/types/components/formEditor/components/inputNumber.d.ts +2 -0
  186. package/dist/types/components/formEditor/components/mentionAsync.d.ts +2 -0
  187. package/dist/types/components/formEditor/components/radio.d.ts +2 -0
  188. package/dist/types/components/formEditor/components/region.d.ts +2 -0
  189. package/dist/types/components/formEditor/components/select.d.ts +2 -0
  190. package/dist/types/components/formEditor/components/selectAsync.d.ts +2 -0
  191. package/dist/types/components/formEditor/components/sider.d.ts +2 -0
  192. package/dist/types/components/formEditor/components/switch.d.ts +2 -0
  193. package/dist/types/components/formEditor/components/time.d.ts +2 -0
  194. package/dist/types/components/formEditor/components/transferAsync.d.ts +2 -0
  195. package/dist/types/components/formEditor/components/treeSelect.d.ts +2 -0
  196. package/dist/types/components/formEditor/components/treeSelectAsync.d.ts +2 -0
  197. package/dist/types/components/formEditor/editor.d.ts +22 -0
  198. package/dist/types/components/formEditor/index.d.ts +2 -0
  199. package/dist/types/components/formEditor/json.d.ts +14 -0
  200. package/dist/types/components/formEditor/preview.d.ts +25 -0
  201. package/dist/types/components/formEditor/renderer.d.ts +58 -0
  202. package/dist/types/components/index.d.ts +3 -1
  203. package/dist/types/components/layout/filterLayout.d.ts +1 -1
  204. package/dist/types/components/layout/grid.d.ts +22 -0
  205. package/dist/types/components/layout/index.d.ts +1 -0
  206. package/package.json +4 -3
  207. package/dist/cjs/components/image/pages/RightPanel.cjs +0 -1
  208. package/dist/cjs/components/image/posterEditor.cjs +0 -1
  209. /package/dist/cjs/components/{image → posterEditor}/components/CanvasRuler.cjs +0 -0
  210. /package/dist/cjs/components/{image → posterEditor}/elements/circle.cjs +0 -0
  211. /package/dist/cjs/components/{image → posterEditor}/elements/image.cjs +0 -0
  212. /package/dist/cjs/components/{image → posterEditor}/elements/index.cjs +0 -0
  213. /package/dist/cjs/components/{image → posterEditor}/elements/rect.cjs +0 -0
  214. /package/dist/cjs/components/{image → posterEditor}/elements/text.cjs +0 -0
  215. /package/dist/cjs/components/{image → posterEditor}/hooks/usePosterEditor.cjs +0 -0
  216. /package/dist/cjs/components/{image → posterEditor}/pages/LeftToolbar.cjs +0 -0
  217. /package/dist/cjs/components/{image → posterEditor}/pages/Panel.cjs +0 -0
  218. /package/dist/cjs/components/{image → posterEditor}/pages/PanelItem.cjs +0 -0
  219. /package/dist/esm/components/{image → posterEditor}/components/CanvasRuler.js +0 -0
  220. /package/dist/esm/components/{image → posterEditor}/elements/circle.js +0 -0
  221. /package/dist/esm/components/{image → posterEditor}/elements/image.js +0 -0
  222. /package/dist/esm/components/{image → posterEditor}/elements/index.js +0 -0
  223. /package/dist/esm/components/{image → posterEditor}/elements/rect.js +0 -0
  224. /package/dist/esm/components/{image → posterEditor}/elements/text.js +0 -0
  225. /package/dist/esm/components/{image → posterEditor}/hooks/usePosterEditor.js +0 -0
  226. /package/dist/esm/components/{image → posterEditor}/pages/LeftToolbar.js +0 -0
  227. /package/dist/esm/components/{image → posterEditor}/pages/Panel.js +0 -0
  228. /package/dist/esm/components/{image → posterEditor}/pages/PanelItem.js +0 -0
  229. /package/dist/types/components/{image → posterEditor}/components/CanvasRuler.d.ts +0 -0
  230. /package/dist/types/components/{image → posterEditor}/components/index.d.ts +0 -0
  231. /package/dist/types/components/{image → posterEditor}/elements/circle.d.ts +0 -0
  232. /package/dist/types/components/{image → posterEditor}/elements/image.d.ts +0 -0
  233. /package/dist/types/components/{image → posterEditor}/elements/index.d.ts +0 -0
  234. /package/dist/types/components/{image → posterEditor}/elements/rect.d.ts +0 -0
  235. /package/dist/types/components/{image → posterEditor}/elements/text.d.ts +0 -0
  236. /package/dist/types/components/{image → posterEditor}/elements/types.d.ts +0 -0
  237. /package/dist/types/components/{image → posterEditor}/hooks/index.d.ts +0 -0
  238. /package/dist/types/components/{image → posterEditor}/hooks/usePosterEditor.d.ts +0 -0
  239. /package/dist/types/components/{image → posterEditor}/index.d.ts +0 -0
  240. /package/dist/types/components/{image → posterEditor}/pages/LeftToolbar.d.ts +0 -0
  241. /package/dist/types/components/{image → posterEditor}/pages/Panel.d.ts +0 -0
  242. /package/dist/types/components/{image → posterEditor}/pages/PanelItem.d.ts +0 -0
  243. /package/dist/types/components/{image → posterEditor}/pages/RightPanel.d.ts +0 -0
  244. /package/dist/types/components/{image → posterEditor}/pages/index.d.ts +0 -0
  245. /package/dist/types/components/{image → posterEditor}/posterEditor.d.ts +0 -0
  246. /package/dist/types/components/{image → posterEditor}/types/editor.d.ts +0 -0
@@ -21,8 +21,6 @@ import "vue-cropper";
21
21
  import "jinrishici";
22
22
  import "lodash-es";
23
23
  import { DuxDynamicData as S } from "./dynamicData.js";
24
- import "aieditor";
25
- import "vee-validate";
26
24
  import "@vee-validate/i18n";
27
25
  import "colorizr";
28
26
  import "echarts";
@@ -32,19 +30,22 @@ import "@unocss/preset-typography";
32
30
  import "unocss/preset-wind4";
33
31
  import "@vee-validate/i18n/dist/locale/en.json";
34
32
  import "@vee-validate/i18n/dist/locale/zh_CN.json";
33
+ import "vee-validate";
35
34
  import "vue-command-palette";
36
35
  import "@duxweb/dvha-naiveui";
37
36
  import "../../pages/page404.js";
37
+ import "vue-draggable-plus";
38
+ import "short-unique-id";
39
+ import "aieditor";
40
+ import { useModal as w } from "../../hooks/modal.js";
38
41
  import "@iconify-json/tabler/icons.json";
39
- import "../image/elements/index.js";
42
+ import "../posterEditor/elements/index.js";
40
43
  import "fabric";
41
44
  import "mime";
42
- import "vue-draggable-plus";
43
- import { useModal as w } from "../../hooks/modal.js";
44
45
  import "dayjs";
45
46
  import "@tanstack/vue-query";
46
47
  import "pinia";
47
- const st = /* @__PURE__ */ f({
48
+ const vt = /* @__PURE__ */ f({
48
49
  name: "DuxDynamicSelect",
49
50
  props: {
50
51
  rowKey: {
@@ -117,5 +118,5 @@ const st = /* @__PURE__ */ f({
117
118
  }
118
119
  });
119
120
  export {
120
- st as DuxDynamicSelect
121
+ vt as DuxDynamicSelect
121
122
  };
@@ -22,8 +22,6 @@ import K from "../modal/modalPage.js";
22
22
  import "jinrishici";
23
23
  import "lodash-es";
24
24
  import "vue-draggable-plus";
25
- import "aieditor";
26
- import "vee-validate";
27
25
  import "@vee-validate/i18n";
28
26
  import "colorizr";
29
27
  import "echarts";
@@ -33,11 +31,14 @@ import "@unocss/preset-typography";
33
31
  import "unocss/preset-wind4";
34
32
  import "@vee-validate/i18n/dist/locale/en.json";
35
33
  import "@vee-validate/i18n/dist/locale/zh_CN.json";
34
+ import "vee-validate";
36
35
  import "vue-command-palette";
37
36
  import "@duxweb/dvha-naiveui";
38
37
  import "../../pages/page404.js";
38
+ import "short-unique-id";
39
+ import "aieditor";
39
40
  import "@iconify-json/tabler/icons.json";
40
- import "../image/elements/index.js";
41
+ import "../posterEditor/elements/index.js";
41
42
  import "fabric";
42
43
  import "mime";
43
44
  import "dayjs";
@@ -47,7 +48,7 @@ import "pinia";
47
48
  function c(t) {
48
49
  return typeof t == "function" || Object.prototype.toString.call(t) === "[object Object]" && !z(t);
49
50
  }
50
- const xt = /* @__PURE__ */ y({
51
+ const wt = /* @__PURE__ */ y({
51
52
  name: "Select",
52
53
  props: {
53
54
  path: String,
@@ -141,5 +142,5 @@ const xt = /* @__PURE__ */ y({
141
142
  }
142
143
  });
143
144
  export {
144
- xt as default
145
+ wt as default
145
146
  };
@@ -0,0 +1,175 @@
1
+ import { createVNode as n, defineComponent as u, computed as m, isVNode as g } from "vue";
2
+ import { useI18n as f } from "@duxweb/dvha-core";
3
+ import { useVModel as h } from "@vueuse/core";
4
+ import v from "clsx";
5
+ import { NFormItem as a, NInputNumber as c } from "naive-ui";
6
+ import { DuxGrid as b } from "../../layout/grid.js";
7
+ import "vue-router";
8
+ import "@overlastic/vue";
9
+ import "vue-echarts";
10
+ import "vue3-ace-editor";
11
+ import "ace-builds/src-noconflict/mode-vue";
12
+ import "ace-builds/src-noconflict/mode-javascript";
13
+ import "ace-builds/src-noconflict/mode-html";
14
+ import "ace-builds/src-noconflict/mode-json";
15
+ import "ace-builds/src-noconflict/mode-json5";
16
+ import "ace-builds/src-noconflict/theme-tomorrow_night";
17
+ import "ace-builds/src-noconflict/theme-tomorrow";
18
+ import "ace-builds/src-noconflict/ext-searchbox";
19
+ import "ace-builds/src-noconflict/ext-language_tools";
20
+ import "ace-builds/src-noconflict/mode-snippets";
21
+ import "vue-cropper";
22
+ import "jinrishici";
23
+ import "lodash-es";
24
+ import "vue-draggable-plus";
25
+ import { DuxWidgetEditorPreview as E } from "../editor/preview.js";
26
+ import { WidgetEditorSettingCard as y } from "../editor/setting.js";
27
+ import "short-unique-id";
28
+ import "aieditor";
29
+ import "vee-validate";
30
+ import "@vee-validate/i18n";
31
+ import "colorizr";
32
+ import "echarts";
33
+ import "@ant-design/colors";
34
+ import "@unocss/preset-icons/browser";
35
+ import "@unocss/preset-typography";
36
+ import "unocss/preset-wind4";
37
+ import "@vee-validate/i18n/dist/locale/en.json";
38
+ import "@vee-validate/i18n/dist/locale/zh_CN.json";
39
+ import "vue-command-palette";
40
+ import "@duxweb/dvha-naiveui";
41
+ import "../../../pages/page404.js";
42
+ import "@iconify-json/tabler/icons.json";
43
+ import "../../posterEditor/elements/index.js";
44
+ import "fabric";
45
+ import "mime";
46
+ import "dayjs";
47
+ import "@tanstack/vue-query";
48
+ import "pinia";
49
+ function x(o) {
50
+ return typeof o == "function" || Object.prototype.toString.call(o) === "[object Object]" && !g(o);
51
+ }
52
+ const C = /* @__PURE__ */ u({
53
+ name: "WidgetEditorGrid",
54
+ props: {
55
+ options: Object,
56
+ children: {
57
+ type: Array,
58
+ default: []
59
+ },
60
+ onChildren: Function
61
+ },
62
+ setup(o) {
63
+ const r = m(() => o.options?.col || 2), e = m(() => {
64
+ const t = [...o.children || []], i = r.value;
65
+ for (; t.length < i; )
66
+ t.push([]);
67
+ for (let l = 0; l < i; l++)
68
+ Array.isArray(t[l]) || (t[l] = []);
69
+ return t;
70
+ });
71
+ return () => {
72
+ let t;
73
+ return n(b, {
74
+ cols: r.value,
75
+ spac: o.options?.spac
76
+ }, x(t = e.value.map((i, l) => {
77
+ const d = i;
78
+ return n("div", {
79
+ key: l,
80
+ class: v({
81
+ "rounded border border-dashed border-accented": !d?.length
82
+ })
83
+ }, [n(E, {
84
+ modelValue: d,
85
+ onUpdate: (s) => {
86
+ const p = [...e.value];
87
+ p[l] = s, o.onChildren?.(p);
88
+ }
89
+ }, null)]);
90
+ })) ? t : {
91
+ default: () => [t]
92
+ });
93
+ };
94
+ }
95
+ }), G = /* @__PURE__ */ u({
96
+ name: "WidgetEditorGridSetting",
97
+ props: {
98
+ value: {
99
+ type: Object,
100
+ default: () => ({
101
+ col: 2,
102
+ spac: 2
103
+ })
104
+ }
105
+ },
106
+ setup(o, {
107
+ emit: r
108
+ }) {
109
+ const {
110
+ t: e
111
+ } = f(), t = h(o, "value", r);
112
+ return () => n(y, {
113
+ title: e("components.designEditor.grid.title"),
114
+ icon: "i-tabler:grid-4x4"
115
+ }, {
116
+ default: () => [n(a, {
117
+ label: e("components.designEditor.grid.columns"),
118
+ path: "col"
119
+ }, {
120
+ default: () => [n(c, {
121
+ value: t.value.col,
122
+ "onUpdate:value": (i) => t.value.col = i,
123
+ min: 1,
124
+ max: 12,
125
+ placeholder: e("components.designEditor.grid.columnsPlaceholder")
126
+ }, null)]
127
+ }), n(a, {
128
+ label: e("components.designEditor.grid.spacing"),
129
+ path: "spac"
130
+ }, {
131
+ default: () => [n(c, {
132
+ value: t.value.spac,
133
+ "onUpdate:value": (i) => t.value.spac = i,
134
+ min: 0,
135
+ max: 100,
136
+ placeholder: e("components.designEditor.grid.spacingPlaceholder")
137
+ }, null)]
138
+ })]
139
+ });
140
+ }
141
+ });
142
+ function j(o) {
143
+ const {
144
+ children: r,
145
+ convertToJsonSchema: e
146
+ } = o || {};
147
+ let t = [];
148
+ return r?.length && e && (t = r.flatMap((i) => Array.isArray(i) ? e(i) : [])), {
149
+ tag: "dux-grid",
150
+ attrs: {
151
+ cols: o?.options?.col || 2,
152
+ spac: o?.options?.spac || 2
153
+ },
154
+ children: t
155
+ };
156
+ }
157
+ function Et(o) {
158
+ return {
159
+ name: "dux-grid",
160
+ icon: "i-tabler:grid-4x4",
161
+ label: o("components.designEditor.grid.label"),
162
+ group: "layout",
163
+ nested: !0,
164
+ component: (r) => n(C, r, null),
165
+ setting: (r) => n(G, r, null),
166
+ settingDefault: {
167
+ col: 2,
168
+ spac: 2
169
+ },
170
+ json: j
171
+ };
172
+ }
173
+ export {
174
+ Et as duxFormEditorGrid
175
+ };
@@ -0,0 +1,87 @@
1
+ import I from "short-unique-id";
2
+ import { ref as s, computed as x } from "vue";
3
+ function C({ settingPage: f }) {
4
+ const c = s([]), i = s([]), p = s(), a = s({
5
+ config: f?.default || {},
6
+ data: []
7
+ }), y = () => {
8
+ c.value = [];
9
+ }, m = () => {
10
+ i.value = [];
11
+ }, A = (e) => {
12
+ c.value.findIndex((t) => t.name === e.name) === -1 && c.value.push(e);
13
+ }, g = (e) => {
14
+ i.value.findIndex((t) => t.name === e.name) === -1 && i.value.push(e);
15
+ }, D = x(() => i.value.map((e) => ({
16
+ name: e.name,
17
+ label: e.label,
18
+ icon: e.icon,
19
+ children: c.value.filter((n) => n.group === e.name)
20
+ }))), u = (e, n) => {
21
+ for (const t of n)
22
+ if (t) {
23
+ if (Array.isArray(t)) {
24
+ const r = u(e, t);
25
+ if (r)
26
+ return r;
27
+ continue;
28
+ }
29
+ if (t.key === e)
30
+ return t;
31
+ if (t.children && t.children.length) {
32
+ const r = u(e, t.children);
33
+ if (r)
34
+ return r;
35
+ }
36
+ }
37
+ }, h = (e) => {
38
+ if (e)
39
+ return u(e, a.value.data);
40
+ }, { randomUUID: v } = new I({ length: 10 }), d = (e) => e?.map((n) => {
41
+ if (n)
42
+ return Array.isArray(n) ? d(n) : (n.key = v(), n.children && n.children.length > 0 && (n.children = d(n.children)), n);
43
+ }).filter((n) => n !== void 0), l = (e, n, t) => {
44
+ for (const r of e)
45
+ if (r) {
46
+ if (Array.isArray(r)) {
47
+ const o = l(r, n, r);
48
+ if (o)
49
+ return o;
50
+ continue;
51
+ }
52
+ if (r.key === n)
53
+ return t;
54
+ if (r.children && r.children.length) {
55
+ const o = l(r.children, n, r);
56
+ if (o)
57
+ return o;
58
+ }
59
+ }
60
+ };
61
+ return {
62
+ clearGroup: m,
63
+ clearComponent: y,
64
+ addComponent: A,
65
+ addGroup: g,
66
+ tree: D,
67
+ components: c,
68
+ group: i,
69
+ getData: h,
70
+ selected: p,
71
+ value: a,
72
+ copyData: (e, n) => {
73
+ const t = h(e), r = JSON.parse(JSON.stringify(t));
74
+ r.key = v(), r.children && r.children.length > 0 && (r.children = d(r.children));
75
+ const o = l(a.value.data, e);
76
+ o ? Array.isArray(o) ? o.splice(n + 1, 0, r) : o.children?.splice(n + 1, 0, r) : a.value.data?.splice(n + 1, 0, r);
77
+ },
78
+ deleteData: (e, n) => {
79
+ const t = l(a.value.data, e);
80
+ t ? Array.isArray(t) ? t.splice(n, 1) : t.children?.splice(n, 1) : a.value.data?.splice(n, 1), p.value = void 0;
81
+ },
82
+ settingPage: f
83
+ };
84
+ }
85
+ export {
86
+ C as useEditor
87
+ };
@@ -0,0 +1,65 @@
1
+ import { defineComponent as c, inject as u, createVNode as l, Fragment as i, mergeProps as p } from "vue";
2
+ import s from "clsx";
3
+ import { VueDraggable as v } from "vue-draggable-plus";
4
+ const f = /* @__PURE__ */ c({
5
+ name: "DuxWidgetEditorPreview",
6
+ props: {
7
+ class: String,
8
+ select: String,
9
+ modelValue: Array,
10
+ onUpdate: Function,
11
+ onSelect: Function
12
+ },
13
+ setup(r) {
14
+ const o = u("editor.use");
15
+ return () => l(i, null, [l(v, p({
16
+ modelValue: r.modelValue || [],
17
+ animation: 150,
18
+ group: "widget",
19
+ handle: ".editor-handle",
20
+ class: r.class || s(["h-full flex flex-col gap-2", !r.modelValue || r.modelValue?.length === 0 ? "p-2" : ""])
21
+ }, {
22
+ "onUpdate:modelValue": (e) => {
23
+ r.onUpdate?.(e);
24
+ }
25
+ }), {
26
+ default: () => [r.modelValue?.map((e, d) => {
27
+ const a = o?.components?.value?.find((t) => t.name === e.name), n = {
28
+ options: e.options
29
+ };
30
+ return a?.nested && (n.children = e.children || [], n.onChildren = (t) => {
31
+ e.children = t;
32
+ }), l("div", {
33
+ class: s(["border p-2 rounded-sm relative w-full", o?.selected.value === e.key ? "bg-primary/10 border-primary border-solid" : "border-accented border-dashed"]),
34
+ key: e.key,
35
+ onClick: (t) => {
36
+ t.stopPropagation(), o?.selected && (o.selected.value = e.key);
37
+ }
38
+ }, [l("div", null, [a?.component(n)]), o?.selected.value === e.key && l(i, null, [l("div", {
39
+ class: "absolute right-0 bottom-0 bg-primary flex px-1 rounded-tl z-1"
40
+ }, [l("div", {
41
+ class: "p-1 text-inverted cursor-pointer hover:text-inverted/80",
42
+ onClick: () => {
43
+ o.copyData(e.key, d);
44
+ }
45
+ }, [l("div", {
46
+ class: "i-tabler:copy"
47
+ }, null)]), l("div", {
48
+ class: "p-1 text-inverted cursor-pointer hover:text-inverted/80"
49
+ }, [l("div", {
50
+ class: "i-tabler:trash-x",
51
+ onClick: () => {
52
+ o?.deleteData(e.key, d);
53
+ }
54
+ }, null)])]), l("div", {
55
+ class: "absolute left-0 top-0 bg-primary p-1 text-inverted rounded-br z-1 editor-handle"
56
+ }, [l("div", {
57
+ class: "i-tabler:arrows-move "
58
+ }, null)])])]);
59
+ })]
60
+ })]);
61
+ }
62
+ });
63
+ export {
64
+ f as DuxWidgetEditorPreview
65
+ };
@@ -0,0 +1,98 @@
1
+ import { defineComponent as m, inject as l, computed as p, createVNode as e } from "vue";
2
+ import "clsx";
3
+ import "naive-ui";
4
+ import "vue-echarts";
5
+ import "@duxweb/dvha-core";
6
+ import "vue-router";
7
+ import "@overlastic/vue";
8
+ import "dayjs";
9
+ import "mime";
10
+ import "lodash-es";
11
+ import "@tanstack/vue-query";
12
+ import "@duxweb/dvha-naiveui";
13
+ import "@vueuse/core";
14
+ import "pinia";
15
+ import "vue3-ace-editor";
16
+ import "ace-builds/src-noconflict/mode-vue";
17
+ import "ace-builds/src-noconflict/mode-javascript";
18
+ import "ace-builds/src-noconflict/mode-html";
19
+ import "ace-builds/src-noconflict/mode-json";
20
+ import "ace-builds/src-noconflict/mode-json5";
21
+ import "ace-builds/src-noconflict/theme-tomorrow_night";
22
+ import "ace-builds/src-noconflict/theme-tomorrow";
23
+ import "ace-builds/src-noconflict/ext-searchbox";
24
+ import "ace-builds/src-noconflict/ext-language_tools";
25
+ import "ace-builds/src-noconflict/mode-snippets";
26
+ import "vue-cropper";
27
+ import "jinrishici";
28
+ import "vue-draggable-plus";
29
+ import "@vee-validate/i18n";
30
+ import "colorizr";
31
+ import "echarts";
32
+ import "@ant-design/colors";
33
+ import "@unocss/preset-icons/browser";
34
+ import "@unocss/preset-typography";
35
+ import "unocss/preset-wind4";
36
+ import "@vee-validate/i18n/dist/locale/en.json";
37
+ import "@vee-validate/i18n/dist/locale/zh_CN.json";
38
+ import "vee-validate";
39
+ import "vue-command-palette";
40
+ import "../../../pages/page404.js";
41
+ import "short-unique-id";
42
+ import "aieditor";
43
+ import { DuxFormLayout as a } from "../../form/formLayout.js";
44
+ import "@iconify-json/tabler/icons.json";
45
+ import "../../posterEditor/elements/index.js";
46
+ import "fabric";
47
+ const ot = /* @__PURE__ */ m({
48
+ name: "WidgetEditorSetting",
49
+ props: {
50
+ actionRender: Function
51
+ },
52
+ setup(r) {
53
+ const t = l("editor.use"), o = p(() => t?.getData(t.selected.value)), n = p(() => t?.components.value?.find((i) => i.name === o.value?.name));
54
+ return () => e("div", {
55
+ class: "flex-none p-2 max-w-full w-220px overflow-y-auto bg-default",
56
+ key: o.value?.key
57
+ }, [n.value?.setting?.({
58
+ value: o.value?.options,
59
+ "update:modelValue": (i) => {
60
+ o?.value && (o.value.options = i);
61
+ }
62
+ }) || e("div", {
63
+ class: "flex flex-col gap-2 h-full"
64
+ }, [e("div", {
65
+ class: "flex-1 min-h-0"
66
+ }, [t?.settingPage?.component?.({
67
+ value: t.value.value.config,
68
+ "update:modelValue": (i) => {
69
+ t.value.value.config = i;
70
+ }
71
+ })]), r?.actionRender?.(t)])]);
72
+ }
73
+ }), it = /* @__PURE__ */ m({
74
+ name: "WidgetEditorSettingCard",
75
+ props: {
76
+ title: String,
77
+ icon: String
78
+ },
79
+ setup(r, {
80
+ slots: t
81
+ }) {
82
+ return () => e("div", {
83
+ class: "flex flex-col"
84
+ }, [e("div", {
85
+ class: "bg-elevated rounded py-2 px-4 flex justify-center items-center gap-2"
86
+ }, [e("div", null, [r.title])]), e("div", {
87
+ class: "py-4 flex-1"
88
+ }, [e(a, {
89
+ labelPlacement: "top"
90
+ }, {
91
+ default: () => [t.default?.()]
92
+ })])]);
93
+ }
94
+ });
95
+ export {
96
+ ot as WidgetEditorSetting,
97
+ it as WidgetEditorSettingCard
98
+ };
@@ -0,0 +1,161 @@
1
+ import { defineComponent as f, provide as g, watch as d, ref as v, createVNode as a } from "vue";
2
+ import { useI18n as x } from "@duxweb/dvha-core";
3
+ import u from "clsx";
4
+ import { cloneDeep as i } from "lodash-es";
5
+ import { NScrollbar as b } from "naive-ui";
6
+ import w from "short-unique-id";
7
+ import { VueDraggable as h } from "vue-draggable-plus";
8
+ import { DuxCard as y } from "../card/card.js";
9
+ import { duxFormEditorGrid as D } from "./components/grid.js";
10
+ import { useEditor as k } from "./editor/hook.js";
11
+ import { DuxWidgetEditorPreview as c } from "./editor/preview.js";
12
+ import { WidgetEditorSetting as C } from "./editor/setting.js";
13
+ const R = /* @__PURE__ */ f({
14
+ name: "DuxDesignEditor",
15
+ props: {
16
+ data: Object,
17
+ onUpdateData: Function,
18
+ groups: Array,
19
+ components: Array,
20
+ settingPage: Object,
21
+ actionRender: Function,
22
+ previewWrapper: Function
23
+ },
24
+ setup(r) {
25
+ const {
26
+ t: o
27
+ } = x(), t = k({
28
+ settingPage: r.settingPage
29
+ });
30
+ g("editor.use", t), d([() => r.components, () => r.groups], () => {
31
+ t.clearGroup(), t.clearComponent(), t.addGroup({
32
+ name: "layout",
33
+ label: o("components.designEditor.layout") || "Layout",
34
+ icon: "i-tabler:layout"
35
+ }), r.groups?.forEach((e) => {
36
+ t.addGroup(e);
37
+ }), t.addComponent(D(o)), r.components?.forEach((e) => {
38
+ t.addComponent(e);
39
+ });
40
+ }, {
41
+ immediate: !0,
42
+ deep: !0
43
+ });
44
+ const l = v(), {
45
+ randomUUID: p
46
+ } = new w({
47
+ length: 10
48
+ }), m = (e) => ({
49
+ key: p(),
50
+ name: e.name,
51
+ options: i(e.settingDefault)
52
+ });
53
+ return d(() => r.data, (e) => {
54
+ const n = r.settingPage?.default || {};
55
+ t.value.value = {
56
+ config: {
57
+ ...n,
58
+ ...i(e?.config || {})
59
+ },
60
+ data: i(e?.data || [])
61
+ };
62
+ }, {
63
+ deep: !0,
64
+ immediate: !0
65
+ }), d(() => t.value.value, (e) => {
66
+ e !== r.data && r.onUpdateData?.(e);
67
+ }, {
68
+ deep: !0
69
+ }), () => a(y, {
70
+ class: "h-full",
71
+ shadow: !0
72
+ }, {
73
+ default: () => [a("div", {
74
+ class: "h-full flex flex-row text-default"
75
+ }, [a("div", {
76
+ class: "flex-none flex flex-col gap-2 border-r border-default bg-default p-2"
77
+ }, [a(s, {
78
+ title: o("components.designEditor.all") || "All",
79
+ icon: "i-tabler:hexagons",
80
+ active: !l.value,
81
+ onClick: () => {
82
+ l.value = void 0;
83
+ }
84
+ }, null), t.group.value?.map((e, n) => a(s, {
85
+ key: n,
86
+ active: l.value === e.name,
87
+ title: e.label,
88
+ icon: e.icon,
89
+ onClick: () => {
90
+ l.value = e.name;
91
+ }
92
+ }, null))]), a("div", {
93
+ class: "flex-none text-xs w-180px bg-default",
94
+ id: "comp-list"
95
+ }, [a(b, null, {
96
+ default: () => [a("div", {
97
+ class: "flex flex-col gap-4 p-2"
98
+ }, [t.tree.value?.filter((e) => l.value ? e.name === l.value : !0).map((e) => a("div", {
99
+ key: e.name,
100
+ class: "flex flex-col gap-2"
101
+ }, [a("div", {
102
+ class: "bg-muted border border-muted rounded p-2 flex justify-center"
103
+ }, [e.label]), a(h, {
104
+ modelValue: e.children || [],
105
+ animation: 150,
106
+ group: {
107
+ name: "widget",
108
+ pull: "clone",
109
+ put: !1
110
+ },
111
+ sort: !1,
112
+ clone: m,
113
+ class: "grid grid-cols-2 items-start gap-2 "
114
+ }, {
115
+ default: () => [e.children?.map((n) => a("div", {
116
+ key: n.name,
117
+ class: "border border-muted rounded-sm p-2 flex flex-col items-center gap-2 cursor-pointer hover:bg-muted edit-drag"
118
+ }, [a("div", {
119
+ class: u(["size-6", n.icon])
120
+ }, null), a("div", {
121
+ class: "truncate whitespace-nowrap px-2 overflow-hidden"
122
+ }, [n.label])]))]
123
+ })]))])]
124
+ })]), a("div", {
125
+ class: "flex-1 shadow-sm flex flex-col items-center p-6 overflow-auto",
126
+ style: "background: linear-gradient(45deg, rgba(0,0,0, 0.1) 25%, transparent 25%), linear-gradient(-45deg, rgba(0,0,0, 0.1) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, rgba(0,0,0, 0.1) 75%), linear-gradient(-45deg, transparent 75%, rgba(0,0,0, 0.1) 75%); background-size: 20px 20px; background-position: 0 0, 0 10px, 10px -10px, -10px 0px;"
127
+ }, [a("div", {
128
+ class: "max-w-2xl w-full flex-1 bg-default shadow p-2",
129
+ onClick: () => {
130
+ t.selected.value = void 0;
131
+ }
132
+ }, [r.previewWrapper ? r.previewWrapper(a(c, {
133
+ modelValue: t.value.value?.data,
134
+ onUpdate: (e) => t.value.value.data = e
135
+ }, null), t) : a(c, {
136
+ modelValue: t.value.value?.data,
137
+ onUpdate: (e) => t.value.value.data = e
138
+ }, null)])]), a(C, {
139
+ actionRender: r.actionRender
140
+ }, null)])]
141
+ });
142
+ }
143
+ });
144
+ function s({
145
+ title: r,
146
+ icon: o,
147
+ active: t,
148
+ onClick: l
149
+ }) {
150
+ return a("div", {
151
+ class: u(["flex flex-col items-center px-3 py-2 hover:bg-primary/10 cursor-pointer rounded-sm", t ? "bg-primary/10 text-primary" : ""]),
152
+ onClick: l
153
+ }, [a("div", {
154
+ class: u(["size-4", o])
155
+ }, null), a("div", {
156
+ class: "truncate whitespace-nowrap text-default text-sm"
157
+ }, [r])]);
158
+ }
159
+ export {
160
+ R as DuxDesignEditor
161
+ };