@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.
- package/dist/cjs/component.cjs +1 -1
- package/dist/cjs/components/chart/echart.cjs +1 -1
- package/dist/cjs/components/crop/imageCrop.cjs +1 -1
- package/dist/cjs/components/data/dynamicData.cjs +1 -1
- package/dist/cjs/components/data/dynamicSelect.cjs +1 -1
- package/dist/cjs/components/data/selectModal.cjs +1 -1
- package/dist/cjs/components/designEditor/components/grid.cjs +1 -0
- package/dist/cjs/components/designEditor/editor/hook.cjs +1 -0
- package/dist/cjs/components/designEditor/editor/preview.cjs +1 -0
- package/dist/cjs/components/designEditor/editor/setting.cjs +1 -0
- package/dist/cjs/components/designEditor/editor.cjs +1 -0
- package/dist/cjs/components/form/drawerForm.cjs +1 -1
- package/dist/cjs/components/form/formItem.cjs +1 -1
- package/dist/cjs/components/form/formLayout.cjs +1 -1
- package/dist/cjs/components/form/modalForm.cjs +1 -1
- package/dist/cjs/components/form/pageForm.cjs +1 -1
- package/dist/cjs/components/form/settingForm.cjs +1 -1
- package/dist/cjs/components/formEditor/base/base.cjs +1 -0
- package/dist/cjs/components/formEditor/base/json.cjs +1 -0
- package/dist/cjs/components/formEditor/base/options.cjs +1 -0
- package/dist/cjs/components/formEditor/base/setting.cjs +1 -0
- package/dist/cjs/components/formEditor/components/cascader.cjs +1 -0
- package/dist/cjs/components/formEditor/components/cascaderAsync.cjs +1 -0
- package/dist/cjs/components/formEditor/components/checkbox.cjs +1 -0
- package/dist/cjs/components/formEditor/components/color.cjs +1 -0
- package/dist/cjs/components/formEditor/components/date.cjs +1 -0
- package/dist/cjs/components/formEditor/components/dynamicInput.cjs +1 -0
- package/dist/cjs/components/formEditor/components/dynamicTags.cjs +1 -0
- package/dist/cjs/components/formEditor/components/editor.cjs +1 -0
- package/dist/cjs/components/formEditor/components/input.cjs +1 -0
- package/dist/cjs/components/formEditor/components/inputNumber.cjs +1 -0
- package/dist/cjs/components/formEditor/components/mentionAsync.cjs +1 -0
- package/dist/cjs/components/formEditor/components/radio.cjs +1 -0
- package/dist/cjs/components/formEditor/components/region.cjs +1 -0
- package/dist/cjs/components/formEditor/components/select.cjs +1 -0
- package/dist/cjs/components/formEditor/components/selectAsync.cjs +1 -0
- package/dist/cjs/components/formEditor/components/sider.cjs +1 -0
- package/dist/cjs/components/formEditor/components/switch.cjs +1 -0
- package/dist/cjs/components/formEditor/components/time.cjs +1 -0
- package/dist/cjs/components/formEditor/components/transferAsync.cjs +1 -0
- package/dist/cjs/components/formEditor/components/treeSelect.cjs +1 -0
- package/dist/cjs/components/formEditor/components/treeSelectAsync.cjs +1 -0
- package/dist/cjs/components/formEditor/editor.cjs +1 -0
- package/dist/cjs/components/formEditor/json.cjs +1 -0
- package/dist/cjs/components/formEditor/preview.cjs +1 -0
- package/dist/cjs/components/formEditor/renderer.cjs +1 -0
- package/dist/cjs/components/icon/icon.cjs +1 -1
- package/dist/cjs/components/layout/grid.cjs +1 -0
- package/dist/cjs/components/layout/list.cjs +1 -1
- package/dist/cjs/components/layout/table.cjs +1 -1
- package/dist/cjs/components/level/level.cjs +1 -1
- package/dist/cjs/components/posterEditor/pages/RightPanel.cjs +1 -0
- package/dist/cjs/components/posterEditor/posterEditor.cjs +1 -0
- package/dist/cjs/components/table/table.cjs +1 -1
- package/dist/cjs/components/upload/file.cjs +1 -1
- package/dist/cjs/components/upload/image.cjs +1 -1
- package/dist/cjs/components/upload/manage/item.cjs +1 -1
- package/dist/cjs/components/upload/manager.cjs +1 -1
- package/dist/cjs/hooks/action.cjs +1 -1
- package/dist/cjs/hooks/dialog.cjs +1 -1
- package/dist/cjs/hooks/drawer.cjs +1 -1
- package/dist/cjs/hooks/modal.cjs +1 -1
- package/dist/cjs/hooks/table/image.cjs +1 -1
- package/dist/cjs/hooks/table/media.cjs +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/langs/en-US.json.cjs +1 -1
- package/dist/cjs/langs/zh-CN.json.cjs +1 -1
- package/dist/cjs/pages/authLayout.cjs +1 -1
- package/dist/cjs/pages/layout/page.cjs +1 -1
- package/dist/cjs/pages/login.cjs +1 -1
- package/dist/cjs/pages/menu/avatar.cjs +1 -1
- package/dist/cjs/pages/menu/button.cjs +1 -1
- package/dist/cjs/pages/menu/cmd.cjs +1 -1
- package/dist/cjs/pages/menu/main.cjs +1 -1
- package/dist/cjs/pages/menu/mobile.cjs +1 -1
- package/dist/cjs/pages/page404.cjs +1 -1
- package/dist/cjs/pages/pageStatus.cjs +1 -1
- package/dist/cjs/theme/uno.css.cjs +35 -2
- package/dist/esm/component.js +33 -31
- package/dist/esm/components/chart/echart.js +6 -5
- package/dist/esm/components/crop/imageCrop.js +7 -6
- package/dist/esm/components/data/dynamicData.js +49 -46
- package/dist/esm/components/data/dynamicSelect.js +8 -7
- package/dist/esm/components/data/selectModal.js +6 -5
- package/dist/esm/components/designEditor/components/grid.js +175 -0
- package/dist/esm/components/designEditor/editor/hook.js +87 -0
- package/dist/esm/components/designEditor/editor/preview.js +65 -0
- package/dist/esm/components/designEditor/editor/setting.js +98 -0
- package/dist/esm/components/designEditor/editor.js +161 -0
- package/dist/esm/components/form/drawerForm.js +8 -7
- package/dist/esm/components/form/formItem.js +33 -33
- package/dist/esm/components/form/formLayout.js +11 -11
- package/dist/esm/components/form/modalForm.js +18 -17
- package/dist/esm/components/form/pageForm.js +38 -30
- package/dist/esm/components/form/settingForm.js +5 -4
- package/dist/esm/components/formEditor/base/base.js +117 -0
- package/dist/esm/components/formEditor/base/json.js +39 -0
- package/dist/esm/components/formEditor/base/options.js +48 -0
- package/dist/esm/components/formEditor/base/setting.js +108 -0
- package/dist/esm/components/formEditor/components/cascader.js +219 -0
- package/dist/esm/components/formEditor/components/cascaderAsync.js +213 -0
- package/dist/esm/components/formEditor/components/checkbox.js +212 -0
- package/dist/esm/components/formEditor/components/color.js +156 -0
- package/dist/esm/components/formEditor/components/date.js +197 -0
- package/dist/esm/components/formEditor/components/dynamicInput.js +227 -0
- package/dist/esm/components/formEditor/components/dynamicTags.js +150 -0
- package/dist/esm/components/formEditor/components/editor.js +139 -0
- package/dist/esm/components/formEditor/components/input.js +211 -0
- package/dist/esm/components/formEditor/components/inputNumber.js +188 -0
- package/dist/esm/components/formEditor/components/mentionAsync.js +180 -0
- package/dist/esm/components/formEditor/components/radio.js +212 -0
- package/dist/esm/components/formEditor/components/region.js +167 -0
- package/dist/esm/components/formEditor/components/select.js +203 -0
- package/dist/esm/components/formEditor/components/selectAsync.js +214 -0
- package/dist/esm/components/formEditor/components/sider.js +168 -0
- package/dist/esm/components/formEditor/components/switch.js +153 -0
- package/dist/esm/components/formEditor/components/time.js +171 -0
- package/dist/esm/components/formEditor/components/transferAsync.js +193 -0
- package/dist/esm/components/formEditor/components/treeSelect.js +207 -0
- package/dist/esm/components/formEditor/components/treeSelectAsync.js +179 -0
- package/dist/esm/components/formEditor/editor.js +164 -0
- package/dist/esm/components/formEditor/json.js +24 -0
- package/dist/esm/components/formEditor/preview.js +38 -0
- package/dist/esm/components/formEditor/renderer.js +151 -0
- package/dist/esm/components/icon/icon.js +7 -6
- package/dist/esm/components/layout/grid.js +24 -0
- package/dist/esm/components/layout/list.js +17 -16
- package/dist/esm/components/layout/table.js +15 -14
- package/dist/esm/components/level/level.js +6 -5
- package/dist/esm/components/{image → posterEditor}/pages/RightPanel.js +5 -4
- package/dist/esm/components/{image → posterEditor}/posterEditor.js +5 -4
- package/dist/esm/components/table/table.js +6 -5
- package/dist/esm/components/upload/file.js +10 -9
- package/dist/esm/components/upload/image.js +16 -15
- package/dist/esm/components/upload/manage/item.js +6 -5
- package/dist/esm/components/upload/manager.js +6 -5
- package/dist/esm/hooks/action.js +9 -9
- package/dist/esm/hooks/dialog.js +7 -6
- package/dist/esm/hooks/drawer.js +7 -6
- package/dist/esm/hooks/modal.js +6 -5
- package/dist/esm/hooks/table/image.js +6 -5
- package/dist/esm/hooks/table/media.js +6 -5
- package/dist/esm/index.js +218 -201
- package/dist/esm/langs/en-US.json.js +10 -10
- package/dist/esm/langs/zh-CN.json.js +8 -8
- package/dist/esm/pages/authLayout.js +7 -6
- package/dist/esm/pages/layout/page.js +6 -5
- package/dist/esm/pages/login.js +6 -5
- package/dist/esm/pages/menu/avatar.js +11 -10
- package/dist/esm/pages/menu/button.js +6 -5
- package/dist/esm/pages/menu/cmd.js +6 -5
- package/dist/esm/pages/menu/main.js +6 -5
- package/dist/esm/pages/menu/mobile.js +6 -5
- package/dist/esm/pages/page404.js +4 -3
- package/dist/esm/pages/pageStatus.js +9 -8
- package/dist/esm/theme/uno.css.js +35 -2
- package/dist/types/components/data/dynamicData.d.ts +1 -1
- package/dist/types/components/designEditor/components/grid.d.ts +2 -0
- package/dist/types/components/designEditor/components/index.d.ts +1 -0
- package/dist/types/components/designEditor/editor/hook.d.ts +57 -0
- package/dist/types/components/designEditor/editor/index.d.ts +3 -0
- package/dist/types/components/designEditor/editor/preview.d.ts +15 -0
- package/dist/types/components/designEditor/editor/setting.d.ts +14 -0
- package/dist/types/components/designEditor/editor.d.ts +19 -0
- package/dist/types/components/designEditor/index.d.ts +3 -0
- package/dist/types/components/form/drawerForm.d.ts +2 -2
- package/dist/types/components/form/formLayout.d.ts +2 -2
- package/dist/types/components/form/modalForm.d.ts +2 -2
- package/dist/types/components/form/pageForm.d.ts +9 -0
- package/dist/types/components/formEditor/base/base.d.ts +26 -0
- package/dist/types/components/formEditor/base/index.d.ts +4 -0
- package/dist/types/components/formEditor/base/json.d.ts +18 -0
- package/dist/types/components/formEditor/base/options.d.ts +23 -0
- package/dist/types/components/formEditor/base/setting.d.ts +13 -0
- package/dist/types/components/formEditor/components/cascader.d.ts +2 -0
- package/dist/types/components/formEditor/components/cascaderAsync.d.ts +2 -0
- package/dist/types/components/formEditor/components/checkbox.d.ts +2 -0
- package/dist/types/components/formEditor/components/color.d.ts +2 -0
- package/dist/types/components/formEditor/components/date.d.ts +2 -0
- package/dist/types/components/formEditor/components/dynamicInput.d.ts +2 -0
- package/dist/types/components/formEditor/components/dynamicTags.d.ts +2 -0
- package/dist/types/components/formEditor/components/editor.d.ts +2 -0
- package/dist/types/components/formEditor/components/index.d.ts +21 -0
- package/dist/types/components/formEditor/components/input.d.ts +2 -0
- package/dist/types/components/formEditor/components/inputNumber.d.ts +2 -0
- package/dist/types/components/formEditor/components/mentionAsync.d.ts +2 -0
- package/dist/types/components/formEditor/components/radio.d.ts +2 -0
- package/dist/types/components/formEditor/components/region.d.ts +2 -0
- package/dist/types/components/formEditor/components/select.d.ts +2 -0
- package/dist/types/components/formEditor/components/selectAsync.d.ts +2 -0
- package/dist/types/components/formEditor/components/sider.d.ts +2 -0
- package/dist/types/components/formEditor/components/switch.d.ts +2 -0
- package/dist/types/components/formEditor/components/time.d.ts +2 -0
- package/dist/types/components/formEditor/components/transferAsync.d.ts +2 -0
- package/dist/types/components/formEditor/components/treeSelect.d.ts +2 -0
- package/dist/types/components/formEditor/components/treeSelectAsync.d.ts +2 -0
- package/dist/types/components/formEditor/editor.d.ts +22 -0
- package/dist/types/components/formEditor/index.d.ts +2 -0
- package/dist/types/components/formEditor/json.d.ts +14 -0
- package/dist/types/components/formEditor/preview.d.ts +25 -0
- package/dist/types/components/formEditor/renderer.d.ts +58 -0
- package/dist/types/components/index.d.ts +3 -1
- package/dist/types/components/layout/filterLayout.d.ts +1 -1
- package/dist/types/components/layout/grid.d.ts +22 -0
- package/dist/types/components/layout/index.d.ts +1 -0
- package/package.json +4 -3
- package/dist/cjs/components/image/pages/RightPanel.cjs +0 -1
- package/dist/cjs/components/image/posterEditor.cjs +0 -1
- /package/dist/cjs/components/{image → posterEditor}/components/CanvasRuler.cjs +0 -0
- /package/dist/cjs/components/{image → posterEditor}/elements/circle.cjs +0 -0
- /package/dist/cjs/components/{image → posterEditor}/elements/image.cjs +0 -0
- /package/dist/cjs/components/{image → posterEditor}/elements/index.cjs +0 -0
- /package/dist/cjs/components/{image → posterEditor}/elements/rect.cjs +0 -0
- /package/dist/cjs/components/{image → posterEditor}/elements/text.cjs +0 -0
- /package/dist/cjs/components/{image → posterEditor}/hooks/usePosterEditor.cjs +0 -0
- /package/dist/cjs/components/{image → posterEditor}/pages/LeftToolbar.cjs +0 -0
- /package/dist/cjs/components/{image → posterEditor}/pages/Panel.cjs +0 -0
- /package/dist/cjs/components/{image → posterEditor}/pages/PanelItem.cjs +0 -0
- /package/dist/esm/components/{image → posterEditor}/components/CanvasRuler.js +0 -0
- /package/dist/esm/components/{image → posterEditor}/elements/circle.js +0 -0
- /package/dist/esm/components/{image → posterEditor}/elements/image.js +0 -0
- /package/dist/esm/components/{image → posterEditor}/elements/index.js +0 -0
- /package/dist/esm/components/{image → posterEditor}/elements/rect.js +0 -0
- /package/dist/esm/components/{image → posterEditor}/elements/text.js +0 -0
- /package/dist/esm/components/{image → posterEditor}/hooks/usePosterEditor.js +0 -0
- /package/dist/esm/components/{image → posterEditor}/pages/LeftToolbar.js +0 -0
- /package/dist/esm/components/{image → posterEditor}/pages/Panel.js +0 -0
- /package/dist/esm/components/{image → posterEditor}/pages/PanelItem.js +0 -0
- /package/dist/types/components/{image → posterEditor}/components/CanvasRuler.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/components/index.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/elements/circle.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/elements/image.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/elements/index.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/elements/rect.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/elements/text.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/elements/types.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/hooks/index.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/hooks/usePosterEditor.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/index.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/pages/LeftToolbar.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/pages/Panel.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/pages/PanelItem.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/pages/RightPanel.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/pages/index.d.ts +0 -0
- /package/dist/types/components/{image → posterEditor}/posterEditor.d.ts +0 -0
- /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 "../
|
|
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
|
|
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
|
-
|
|
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 "../
|
|
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
|
|
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
|
-
|
|
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
|
+
};
|