@vipl520/dk-ui 1.0.71 → 1.0.74
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.css +1 -1
- package/dist/index.js +2795 -805
- package/dist/index.min.js +9 -4
- package/dist/index.min.js.map +1 -1
- package/dist/index.min.mjs +9 -4
- package/dist/index.min.mjs.map +1 -1
- package/dist/index.mjs +2797 -807
- package/dist/web-types.json +1 -1
- package/es/page-diy/index.mjs +2 -0
- package/es/page-diy/index.mjs.map +1 -1
- package/es/page-diy/src/components/forms/DkCubeImageInput.vue.d.ts +26 -0
- package/es/page-diy/src/components/forms/DkCubeImageInput.vue.mjs +7 -0
- package/es/page-diy/src/components/forms/DkCubeImageInput.vue.mjs.map +1 -0
- package/es/page-diy/src/components/forms/DkCubeImageInput.vue2.mjs +371 -0
- package/es/page-diy/src/components/forms/DkCubeImageInput.vue2.mjs.map +1 -0
- package/es/page-diy/src/components/forms/DkEventCreateInput.vue.d.ts +0 -9
- package/es/page-diy/src/components/forms/DkEventCreateInput.vue2.mjs +0 -4
- package/es/page-diy/src/components/forms/DkEventCreateInput.vue2.mjs.map +1 -1
- package/es/page-diy/src/components/forms/DkEventSelectInput.vue.mjs +12 -15
- package/es/page-diy/src/components/forms/DkEventSelectInput.vue.mjs.map +1 -1
- package/es/page-diy/src/config/rule/min/common/DkMinBlank.d.ts +1 -1
- package/es/page-diy/src/config/rule/min/common/DkMinBlank.mjs +2 -2
- package/es/page-diy/src/config/rule/min/common/DkMinBlank.mjs.map +1 -1
- package/es/page-diy/src/config/rule/min/common/DkMinCubeImage.d.ts +48 -0
- package/es/page-diy/src/config/rule/min/common/DkMinCubeImage.mjs +49 -0
- package/es/page-diy/src/config/rule/min/common/DkMinCubeImage.mjs.map +1 -0
- package/es/page-diy/src/config/rule/min/common/DkMinGrid.d.ts +31 -2
- package/es/page-diy/src/config/rule/min/common/DkMinGrid.mjs +30 -3
- package/es/page-diy/src/config/rule/min/common/DkMinGrid.mjs.map +1 -1
- package/es/page-diy/src/config/rule/min/common/DkMinHotArea.mjs +1 -1
- package/es/page-diy/src/config/rule/min/common/DkMinHotArea.mjs.map +1 -1
- package/es/page-diy/src/config/rule/min/common/DkMinImage.d.ts +122 -0
- package/es/page-diy/src/config/rule/min/common/DkMinImage.mjs +144 -0
- package/es/page-diy/src/config/rule/min/common/DkMinImage.mjs.map +1 -0
- package/es/page-diy/src/config/rule/min/common/DkMinModal.d.ts +91 -0
- package/es/page-diy/src/config/rule/min/common/DkMinModal.mjs +85 -0
- package/es/page-diy/src/config/rule/min/common/DkMinModal.mjs.map +1 -0
- package/es/page-diy/src/config/rule/min/common/DkMinSwiperImage.d.ts +25 -6
- package/es/page-diy/src/config/rule/min/common/DkMinSwiperImage.mjs +25 -7
- package/es/page-diy/src/config/rule/min/common/DkMinSwiperImage.mjs.map +1 -1
- package/es/page-diy/src/config/rule/min/common/DkMinVideo.mjs +1 -1
- package/es/page-diy/src/config/rule/min/common/DkMinVideo.mjs.map +1 -1
- package/es/page-diy/src/config/rule/min/common/index.d.ts +880 -286
- package/es/page-diy/src/config/rule/min/common/index.mjs +22 -5
- package/es/page-diy/src/config/rule/min/common/index.mjs.map +1 -1
- package/es/page-diy/src/config/rule/min/index.d.ts +846 -252
- package/es/page-diy/src/views/min/DkMinCubeImage.vue.d.ts +67 -0
- package/es/page-diy/src/views/min/DkMinCubeImage.vue.mjs +194 -0
- package/es/page-diy/src/views/min/DkMinCubeImage.vue.mjs.map +1 -0
- package/es/page-diy/src/views/min/DkMinImage.vue.d.ts +135 -0
- package/es/page-diy/src/views/min/DkMinImage.vue.mjs +84 -0
- package/es/page-diy/src/views/min/DkMinImage.vue.mjs.map +1 -0
- package/es/page-diy/src/views/min/DkMinModal.vue.d.ts +41 -0
- package/es/page-diy/src/views/min/DkMinModal.vue.mjs +34 -0
- package/es/page-diy/src/views/min/DkMinModal.vue.mjs.map +1 -0
- package/es/page-diy/src/views/min/index.mjs +7 -1
- package/es/page-diy/src/views/min/index.mjs.map +1 -1
- package/es/page-diy/style/cube-image.css +1 -0
- package/es/page-diy/style/cube-image.scss +71 -0
- package/es/page-diy/style/index.css +1 -1
- package/es/page-diy/style/index.scss +1 -0
- package/es/page-diy/style/minViews/index.scss +86 -0
- package/es/style-box-input/src/style-box-input.vue2.mjs +135 -91
- package/es/style-box-input/src/style-box-input.vue2.mjs.map +1 -1
- package/es/table/index.d.ts +15 -0
- package/es/table/src/components/ComSearch.vue2.mjs +21 -12
- package/es/table/src/components/ComSearch.vue2.mjs.map +1 -1
- package/es/table/src/components/FieldRender.vue2.mjs +42 -22
- package/es/table/src/components/FieldRender.vue2.mjs.map +1 -1
- package/es/table/src/components/header.vue2.mjs +2 -2
- package/es/table/src/components/header.vue2.mjs.map +1 -1
- package/es/table/src/props.d.ts +4 -0
- package/es/table/src/props.mjs +4 -0
- package/es/table/src/props.mjs.map +1 -1
- package/es/table/src/table.vue.d.ts +9 -0
- package/es/table/src/table.vue2.mjs +3 -2
- package/es/table/src/table.vue2.mjs.map +1 -1
- package/es/table/utils/dkTable.mjs +4 -1
- package/es/table/utils/dkTable.mjs.map +1 -1
- package/lib/page-diy/index.js +2 -0
- package/lib/page-diy/index.js.map +1 -1
- package/lib/page-diy/src/components/forms/DkCubeImageInput.vue.d.ts +26 -0
- package/lib/page-diy/src/components/forms/DkCubeImageInput.vue.js +11 -0
- package/lib/page-diy/src/components/forms/DkCubeImageInput.vue.js.map +1 -0
- package/lib/page-diy/src/components/forms/DkCubeImageInput.vue2.js +375 -0
- package/lib/page-diy/src/components/forms/DkCubeImageInput.vue2.js.map +1 -0
- package/lib/page-diy/src/components/forms/DkEventCreateInput.vue.d.ts +0 -9
- package/lib/page-diy/src/components/forms/DkEventCreateInput.vue2.js +0 -4
- package/lib/page-diy/src/components/forms/DkEventCreateInput.vue2.js.map +1 -1
- package/lib/page-diy/src/components/forms/DkEventSelectInput.vue.js +12 -15
- package/lib/page-diy/src/components/forms/DkEventSelectInput.vue.js.map +1 -1
- package/lib/page-diy/src/config/rule/min/common/DkMinBlank.d.ts +1 -1
- package/lib/page-diy/src/config/rule/min/common/DkMinBlank.js +2 -2
- package/lib/page-diy/src/config/rule/min/common/DkMinBlank.js.map +1 -1
- package/lib/page-diy/src/config/rule/min/common/DkMinCubeImage.d.ts +48 -0
- package/lib/page-diy/src/config/rule/min/common/DkMinCubeImage.js +53 -0
- package/lib/page-diy/src/config/rule/min/common/DkMinCubeImage.js.map +1 -0
- package/lib/page-diy/src/config/rule/min/common/DkMinGrid.d.ts +31 -2
- package/lib/page-diy/src/config/rule/min/common/DkMinGrid.js +30 -3
- package/lib/page-diy/src/config/rule/min/common/DkMinGrid.js.map +1 -1
- package/lib/page-diy/src/config/rule/min/common/DkMinHotArea.js +1 -1
- package/lib/page-diy/src/config/rule/min/common/DkMinHotArea.js.map +1 -1
- package/lib/page-diy/src/config/rule/min/common/DkMinImage.d.ts +122 -0
- package/lib/page-diy/src/config/rule/min/common/DkMinImage.js +148 -0
- package/lib/page-diy/src/config/rule/min/common/DkMinImage.js.map +1 -0
- package/lib/page-diy/src/config/rule/min/common/DkMinModal.d.ts +91 -0
- package/lib/page-diy/src/config/rule/min/common/DkMinModal.js +89 -0
- package/lib/page-diy/src/config/rule/min/common/DkMinModal.js.map +1 -0
- package/lib/page-diy/src/config/rule/min/common/DkMinSwiperImage.d.ts +25 -6
- package/lib/page-diy/src/config/rule/min/common/DkMinSwiperImage.js +25 -7
- package/lib/page-diy/src/config/rule/min/common/DkMinSwiperImage.js.map +1 -1
- package/lib/page-diy/src/config/rule/min/common/DkMinVideo.js +1 -1
- package/lib/page-diy/src/config/rule/min/common/DkMinVideo.js.map +1 -1
- package/lib/page-diy/src/config/rule/min/common/index.d.ts +880 -286
- package/lib/page-diy/src/config/rule/min/common/index.js +22 -5
- package/lib/page-diy/src/config/rule/min/common/index.js.map +1 -1
- package/lib/page-diy/src/config/rule/min/index.d.ts +846 -252
- package/lib/page-diy/src/views/min/DkMinCubeImage.vue.d.ts +67 -0
- package/lib/page-diy/src/views/min/DkMinCubeImage.vue.js +198 -0
- package/lib/page-diy/src/views/min/DkMinCubeImage.vue.js.map +1 -0
- package/lib/page-diy/src/views/min/DkMinImage.vue.d.ts +135 -0
- package/lib/page-diy/src/views/min/DkMinImage.vue.js +88 -0
- package/lib/page-diy/src/views/min/DkMinImage.vue.js.map +1 -0
- package/lib/page-diy/src/views/min/DkMinModal.vue.d.ts +41 -0
- package/lib/page-diy/src/views/min/DkMinModal.vue.js +38 -0
- package/lib/page-diy/src/views/min/DkMinModal.vue.js.map +1 -0
- package/lib/page-diy/src/views/min/index.js +7 -1
- package/lib/page-diy/src/views/min/index.js.map +1 -1
- package/lib/page-diy/style/cube-image.css +1 -0
- package/lib/page-diy/style/cube-image.scss +71 -0
- package/lib/page-diy/style/index.css +1 -1
- package/lib/page-diy/style/index.scss +1 -0
- package/lib/page-diy/style/minViews/index.scss +86 -0
- package/lib/style-box-input/src/style-box-input.vue2.js +134 -90
- package/lib/style-box-input/src/style-box-input.vue2.js.map +1 -1
- package/lib/table/index.d.ts +15 -0
- package/lib/table/src/components/ComSearch.vue2.js +21 -12
- package/lib/table/src/components/ComSearch.vue2.js.map +1 -1
- package/lib/table/src/components/FieldRender.vue2.js +41 -21
- package/lib/table/src/components/FieldRender.vue2.js.map +1 -1
- package/lib/table/src/components/header.vue2.js +2 -2
- package/lib/table/src/components/header.vue2.js.map +1 -1
- package/lib/table/src/props.d.ts +4 -0
- package/lib/table/src/props.js +4 -0
- package/lib/table/src/props.js.map +1 -1
- package/lib/table/src/table.vue.d.ts +9 -0
- package/lib/table/src/table.vue2.js +3 -2
- package/lib/table/src/table.vue2.js.map +1 -1
- package/lib/table/utils/dkTable.js +4 -1
- package/lib/table/utils/dkTable.js.map +1 -1
- package/package.json +1 -1
package/dist/web-types.json
CHANGED
package/es/page-diy/index.mjs
CHANGED
@@ -4,6 +4,7 @@ import DragTool from './src/components/DragTool.vue.mjs';
|
|
4
4
|
import DragBox from './src/components/DragBox.vue.mjs';
|
5
5
|
import DkEventCreateInput from './src/components/forms/DkEventCreateInput.vue.mjs';
|
6
6
|
import DkEventSelectInput from './src/components/forms/DkEventSelectInput.vue.mjs';
|
7
|
+
import DkCubeImageInput from './src/components/forms/DkCubeImageInput.vue.mjs';
|
7
8
|
import { designerForm, viewForm } from './src/utils/form.mjs';
|
8
9
|
import './src/utils/index.mjs';
|
9
10
|
export { pageDiyProps } from './src/props.mjs';
|
@@ -17,6 +18,7 @@ designerForm.component("DragTool", DragTool);
|
|
17
18
|
designerForm.component("DragBox", DragBox);
|
18
19
|
designerForm.component("DkEventCreateInput", DkEventCreateInput);
|
19
20
|
designerForm.component("DkEventSelectInput", DkEventSelectInput);
|
21
|
+
designerForm.component("DkCubeImageInput", DkCubeImageInput);
|
20
22
|
designerForm.register("_fc", {
|
21
23
|
init(fc, rule) {
|
22
24
|
rule._id = uniqueId();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/page-diy/index.ts"],"sourcesContent":["import { withInstall } from '@vipl520/utils'\nimport _PageDiy from './src/page-diy.vue'\nimport DragTool from './src/components/DragTool.vue'\nimport DragBox from './src/components/DragBox.vue'\nimport DkEventCreateInput from './src/components/forms/DkEventCreateInput.vue'\nimport DkEventSelectInput from './src/components/forms/DkEventSelectInput.vue'\nimport formCreate, { designerForm } from './src/utils/form'\n// import draggable from 'vuedraggable/src/vuedraggable'\nimport { uniqueId } from './src/utils'\n// import views from './src/views/web'\n\nconst addComponent = (id: any, component: any) => {\n designerForm.component(id, component)\n formCreate.component(id, component)\n}\n\n// designerForm.component('Draggable', draggable)\ndesignerForm.component('DragTool', DragTool)\ndesignerForm.component('DragBox', DragBox)\ndesignerForm.component('DkEventCreateInput', DkEventCreateInput)\ndesignerForm.component('DkEventSelectInput', DkEventSelectInput)\n\n// for (const name in views) {\n// designerForm.component(name, views[name])\n// }\n\ndesignerForm.register('_fc', {\n init(fc: any, rule: any) {\n rule._id = uniqueId()\n if (fc.value) {\n rule.effect._fc = false\n }\n },\n})\n\ndesignerForm.register('_fc_tool', {\n init(_, rule: any) {\n rule.props.unique = uniqueId()\n },\n})\n\n_PageDiy.formCreate = formCreate\n_PageDiy.designerForm = designerForm\n_PageDiy.component = addComponent\nexport const PageDiy = withInstall(_PageDiy)\nexport default PageDiy\n\nexport * from './src/props'\n"],"names":["formCreate"],"mappings":"
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/page-diy/index.ts"],"sourcesContent":["import { withInstall } from '@vipl520/utils'\nimport _PageDiy from './src/page-diy.vue'\nimport DragTool from './src/components/DragTool.vue'\nimport DragBox from './src/components/DragBox.vue'\nimport DkEventCreateInput from './src/components/forms/DkEventCreateInput.vue'\nimport DkEventSelectInput from './src/components/forms/DkEventSelectInput.vue'\nimport DkCubeImageInput from './src/components/forms/DkCubeImageInput.vue'\nimport formCreate, { designerForm } from './src/utils/form'\n// import draggable from 'vuedraggable/src/vuedraggable'\nimport { uniqueId } from './src/utils'\n// import views from './src/views/web'\n\nconst addComponent = (id: any, component: any) => {\n designerForm.component(id, component)\n formCreate.component(id, component)\n}\n\n// designerForm.component('Draggable', draggable)\ndesignerForm.component('DragTool', DragTool)\ndesignerForm.component('DragBox', DragBox)\ndesignerForm.component('DkEventCreateInput', DkEventCreateInput)\ndesignerForm.component('DkEventSelectInput', DkEventSelectInput)\ndesignerForm.component('DkCubeImageInput', DkCubeImageInput)\n\n// for (const name in views) {\n// designerForm.component(name, views[name])\n// }\n\ndesignerForm.register('_fc', {\n init(fc: any, rule: any) {\n rule._id = uniqueId()\n if (fc.value) {\n rule.effect._fc = false\n }\n },\n})\n\ndesignerForm.register('_fc_tool', {\n init(_, rule: any) {\n rule.props.unique = uniqueId()\n },\n})\n\n_PageDiy.formCreate = formCreate\n_PageDiy.designerForm = designerForm\n_PageDiy.component = addComponent\nexport const PageDiy = withInstall(_PageDiy)\nexport default PageDiy\n\nexport * from './src/props'\n"],"names":["formCreate"],"mappings":";;;;;;;;;;;;AAYA,MAAM,YAAA,GAAe,CAAC,EAAA,EAAS,SAAmB,KAAA;AAChD,EAAa,YAAA,CAAA,SAAA,CAAU,IAAI,SAAS,CAAA,CAAA;AACpC,EAAWA,QAAA,CAAA,SAAA,CAAU,IAAI,SAAS,CAAA,CAAA;AACpC,CAAA,CAAA;AAGA,YAAa,CAAA,SAAA,CAAU,YAAY,QAAQ,CAAA,CAAA;AAC3C,YAAa,CAAA,SAAA,CAAU,WAAW,OAAO,CAAA,CAAA;AACzC,YAAa,CAAA,SAAA,CAAU,sBAAsB,kBAAkB,CAAA,CAAA;AAC/D,YAAa,CAAA,SAAA,CAAU,sBAAsB,kBAAkB,CAAA,CAAA;AAC/D,YAAa,CAAA,SAAA,CAAU,oBAAoB,gBAAgB,CAAA,CAAA;AAM3D,YAAA,CAAa,SAAS,KAAO,EAAA;AAAA,EAC3B,IAAA,CAAK,IAAS,IAAW,EAAA;AACvB,IAAA,IAAA,CAAK,MAAM,QAAS,EAAA,CAAA;AACpB,IAAA,IAAI,GAAG,KAAO,EAAA;AACZ,MAAA,IAAA,CAAK,OAAO,GAAM,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF;AACF,CAAC,CAAA,CAAA;AAED,YAAA,CAAa,SAAS,UAAY,EAAA;AAAA,EAChC,IAAA,CAAK,GAAG,IAAW,EAAA;AACjB,IAAK,IAAA,CAAA,KAAA,CAAM,SAAS,QAAS,EAAA,CAAA;AAAA,GAC/B;AACF,CAAC,CAAA,CAAA;AAED,QAAA,CAAS,UAAa,GAAAA,QAAA,CAAA;AACtB,QAAA,CAAS,YAAe,GAAA,YAAA,CAAA;AACxB,QAAA,CAAS,SAAY,GAAA,YAAA,CAAA;AACR,MAAA,OAAA,GAAU,YAAY,QAAQ;;;;"}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{
|
2
|
+
modelValue: {
|
3
|
+
default: () => {};
|
4
|
+
type: ObjectConstructor;
|
5
|
+
};
|
6
|
+
imageStyle: {
|
7
|
+
default: () => {};
|
8
|
+
type: ObjectConstructor;
|
9
|
+
};
|
10
|
+
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue")[], "input" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
11
|
+
modelValue: {
|
12
|
+
default: () => {};
|
13
|
+
type: ObjectConstructor;
|
14
|
+
};
|
15
|
+
imageStyle: {
|
16
|
+
default: () => {};
|
17
|
+
type: ObjectConstructor;
|
18
|
+
};
|
19
|
+
}>> & {
|
20
|
+
onInput?: ((...args: any[]) => any) | undefined;
|
21
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
22
|
+
}, {
|
23
|
+
modelValue: Record<string, any>;
|
24
|
+
imageStyle: Record<string, any>;
|
25
|
+
}, {}>;
|
26
|
+
export default _default;
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import _sfc_main from './DkCubeImageInput.vue2.mjs';
|
2
|
+
import _export_sfc from '../../../../_virtual/_plugin-vue_export-helper.mjs';
|
3
|
+
|
4
|
+
var DkCubeImageInput = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "E:\\project\\monster-admin\\system\\dkgs-ui-back\\packages\\dk-ui\\src\\page-diy\\src\\components\\forms\\DkCubeImageInput.vue"]]);
|
5
|
+
|
6
|
+
export { DkCubeImageInput as default };
|
7
|
+
//# sourceMappingURL=DkCubeImageInput.vue.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DkCubeImageInput.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
|
@@ -0,0 +1,371 @@
|
|
1
|
+
import { defineComponent, ref, reactive, computed, watch, onMounted, resolveComponent, openBlock, createElementBlock, createVNode, withCtx, createElementVNode, Fragment, renderList, normalizeClass, normalizeStyle, createCommentVNode, toDisplayString, createTextVNode, createBlock } from 'vue';
|
2
|
+
import { useElementSize } from '@vueuse/core';
|
3
|
+
import DkEventSelectInput from './DkEventSelectInput.vue.mjs';
|
4
|
+
|
5
|
+
const _hoisted_1 = ["data-x", "data-y", "onClick", "onMouseenter"];
|
6
|
+
const _hoisted_2 = ["onClick"];
|
7
|
+
const _hoisted_3 = { key: 0 };
|
8
|
+
const _hoisted_4 = { class: "cube-selected-text" };
|
9
|
+
const _hoisted_5 = { key: 1 };
|
10
|
+
const _hoisted_6 = ["src"];
|
11
|
+
const _hoisted_7 = { key: 0 };
|
12
|
+
const __default__ = defineComponent({
|
13
|
+
name: "DkCubeImageInput"
|
14
|
+
});
|
15
|
+
var _sfc_main = /* @__PURE__ */ defineComponent({
|
16
|
+
...__default__,
|
17
|
+
props: {
|
18
|
+
modelValue: {
|
19
|
+
default: () => {
|
20
|
+
return {};
|
21
|
+
},
|
22
|
+
type: Object
|
23
|
+
},
|
24
|
+
imageStyle: {
|
25
|
+
default: () => {
|
26
|
+
return {};
|
27
|
+
},
|
28
|
+
type: Object
|
29
|
+
}
|
30
|
+
},
|
31
|
+
emits: ["input", "update:modelValue"],
|
32
|
+
setup(__props, { emit }) {
|
33
|
+
const props = __props;
|
34
|
+
const designCube = ref(null);
|
35
|
+
const { width } = useElementSize(designCube);
|
36
|
+
const form = reactive({
|
37
|
+
density: 4
|
38
|
+
});
|
39
|
+
const itemStyle = computed(() => {
|
40
|
+
const size = width.value / form.density;
|
41
|
+
return {
|
42
|
+
width: size + "px",
|
43
|
+
height: size + "px"
|
44
|
+
};
|
45
|
+
});
|
46
|
+
const selectionStart = ref(null);
|
47
|
+
const selectionEnd = ref(null);
|
48
|
+
const selectedCubes = ref([]);
|
49
|
+
const emitData = computed(() => {
|
50
|
+
return {
|
51
|
+
density: form.density,
|
52
|
+
selectedCubes: selectedCubes.value
|
53
|
+
};
|
54
|
+
});
|
55
|
+
const onChangeDensity = () => {
|
56
|
+
selectedCubes.value = [];
|
57
|
+
selectionStart.value = null;
|
58
|
+
};
|
59
|
+
watch(
|
60
|
+
() => emitData,
|
61
|
+
() => {
|
62
|
+
emit("update:modelValue", emitData.value);
|
63
|
+
},
|
64
|
+
{
|
65
|
+
deep: true
|
66
|
+
}
|
67
|
+
);
|
68
|
+
watch(
|
69
|
+
() => props.modelValue,
|
70
|
+
() => {
|
71
|
+
form.density = props.modelValue.density;
|
72
|
+
selectedCubes.value = props.modelValue.selectedCubes;
|
73
|
+
}
|
74
|
+
);
|
75
|
+
onMounted(() => {
|
76
|
+
form.density = props.modelValue.density || 4;
|
77
|
+
selectedCubes.value = props.modelValue.selectedCubes || [];
|
78
|
+
});
|
79
|
+
const checkSelecting = (x, y) => {
|
80
|
+
const isSelected = selectedCubes.value.some((cube) => {
|
81
|
+
const startX2 = Math.min(cube.start.x, cube.end.x);
|
82
|
+
const endX2 = Math.max(cube.start.x, cube.end.x);
|
83
|
+
const startY2 = Math.min(cube.start.y, cube.end.y);
|
84
|
+
const endY2 = Math.max(cube.start.y, cube.end.y);
|
85
|
+
return x >= startX2 && x <= endX2 && y >= startY2 && y <= endY2;
|
86
|
+
});
|
87
|
+
if (isSelected)
|
88
|
+
return false;
|
89
|
+
if (!selectionStart.value || !selectionEnd.value)
|
90
|
+
return false;
|
91
|
+
const startX = Math.min(selectionStart.value.x, selectionEnd.value.x);
|
92
|
+
const endX = Math.max(selectionStart.value.x, selectionEnd.value.x);
|
93
|
+
const startY = Math.min(selectionStart.value.y, selectionEnd.value.y);
|
94
|
+
const endY = Math.max(selectionStart.value.y, selectionEnd.value.y);
|
95
|
+
const overlapsWithSelected = selectedCubes.value.some((cube) => {
|
96
|
+
const selStartX = Math.min(cube.start.x, cube.end.x);
|
97
|
+
const selEndX = Math.max(cube.start.x, cube.end.x);
|
98
|
+
const selStartY = Math.min(cube.start.y, cube.end.y);
|
99
|
+
const selEndY = Math.max(cube.start.y, cube.end.y);
|
100
|
+
return !(endX < selStartX || startX > selEndX || endY < selStartY || startY > selEndY);
|
101
|
+
});
|
102
|
+
if (overlapsWithSelected)
|
103
|
+
return false;
|
104
|
+
return x >= startX && x <= endX && y >= startY && y <= endY;
|
105
|
+
};
|
106
|
+
const moduleSize = computed(() => width.value / form.density);
|
107
|
+
const getSelectedAreaStyle = (cube) => {
|
108
|
+
const startX = Math.min(cube.start.x, cube.end.x) - 1;
|
109
|
+
const endX = Math.max(cube.start.x, cube.end.x);
|
110
|
+
const startY = Math.min(cube.start.y, cube.end.y) - 1;
|
111
|
+
const endY = Math.max(cube.start.y, cube.end.y);
|
112
|
+
return {
|
113
|
+
width: `${(endX - startX) * moduleSize.value}px`,
|
114
|
+
height: `${(endY - startY) * moduleSize.value}px`,
|
115
|
+
top: `${startY * moduleSize.value}px`,
|
116
|
+
left: `${startX * moduleSize.value}px`
|
117
|
+
};
|
118
|
+
};
|
119
|
+
const referenceWidth = 750;
|
120
|
+
const getReferenceSize = (cube) => {
|
121
|
+
const startX = Math.min(cube.start.x, cube.end.x);
|
122
|
+
const endX = Math.max(cube.start.x, cube.end.x);
|
123
|
+
const startY = Math.min(cube.start.y, cube.end.y);
|
124
|
+
const endY = Math.max(cube.start.y, cube.end.y);
|
125
|
+
const moduleWidth = referenceWidth / form.density;
|
126
|
+
const width2 = (endX - startX + 1) * moduleWidth;
|
127
|
+
const height = (endY - startY + 1) * moduleWidth;
|
128
|
+
return `${Math.round(width2)} x ${Math.round(height)} \u50CF\u7D20`;
|
129
|
+
};
|
130
|
+
const selectedAreaIndex = ref(-1);
|
131
|
+
const onClickSelectedArea = (k) => {
|
132
|
+
selectedAreaIndex.value = k;
|
133
|
+
};
|
134
|
+
const onDeleteCubes = (k) => {
|
135
|
+
selectedAreaIndex.value = -1;
|
136
|
+
selectedCubes.value.splice(k, 1);
|
137
|
+
};
|
138
|
+
const onSelectCube = (x, y) => {
|
139
|
+
if (selectionStart.value == null) {
|
140
|
+
selectionStart.value = {
|
141
|
+
x,
|
142
|
+
y
|
143
|
+
};
|
144
|
+
} else if (checkSelecting(x, y)) {
|
145
|
+
selectedCubes.value.push({
|
146
|
+
start: selectionStart.value,
|
147
|
+
end: { x, y },
|
148
|
+
path: "",
|
149
|
+
clickType: "path"
|
150
|
+
});
|
151
|
+
selectionStart.value = null;
|
152
|
+
selectedAreaIndex.value = selectedCubes.value.length - 1;
|
153
|
+
}
|
154
|
+
};
|
155
|
+
const onMousemove = (x, y) => {
|
156
|
+
selectionEnd.value = { x, y };
|
157
|
+
};
|
158
|
+
return (_ctx, _cache) => {
|
159
|
+
const _component_el_option = resolveComponent("el-option");
|
160
|
+
const _component_el_select = resolveComponent("el-select");
|
161
|
+
const _component_el_form_item = resolveComponent("el-form-item");
|
162
|
+
const _component_dk_icon = resolveComponent("dk-icon");
|
163
|
+
const _component_dk_image_input = resolveComponent("dk-image-input");
|
164
|
+
const _component_el_radio = resolveComponent("el-radio");
|
165
|
+
const _component_el_radio_group = resolveComponent("el-radio-group");
|
166
|
+
const _component_dk_url_input = resolveComponent("dk-url-input");
|
167
|
+
const _component_el_form = resolveComponent("el-form");
|
168
|
+
return openBlock(), createElementBlock("div", null, [
|
169
|
+
createVNode(_component_el_form, {
|
170
|
+
model: form,
|
171
|
+
"label-width": "auto",
|
172
|
+
style: { "max-width": "400px" },
|
173
|
+
"label-position": "left"
|
174
|
+
}, {
|
175
|
+
default: withCtx(() => [
|
176
|
+
createVNode(_component_el_form_item, { label: "\u9B54\u65B9\u5BC6\u5EA6" }, {
|
177
|
+
default: withCtx(() => [
|
178
|
+
createVNode(_component_el_select, {
|
179
|
+
modelValue: form.density,
|
180
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => form.density = $event),
|
181
|
+
onChange: _cache[1] || (_cache[1] = ($event) => onChangeDensity())
|
182
|
+
}, {
|
183
|
+
default: withCtx(() => [
|
184
|
+
createVNode(_component_el_option, {
|
185
|
+
label: "4x4",
|
186
|
+
value: 4
|
187
|
+
}),
|
188
|
+
createVNode(_component_el_option, {
|
189
|
+
label: "5x5",
|
190
|
+
value: 5
|
191
|
+
}),
|
192
|
+
createVNode(_component_el_option, {
|
193
|
+
label: "6x6",
|
194
|
+
value: 6
|
195
|
+
})
|
196
|
+
]),
|
197
|
+
_: 1
|
198
|
+
/* STABLE */
|
199
|
+
}, 8, ["modelValue"])
|
200
|
+
]),
|
201
|
+
_: 1
|
202
|
+
/* STABLE */
|
203
|
+
}),
|
204
|
+
createVNode(_component_el_form_item, { style: { "margin": "10px 0" } }, {
|
205
|
+
default: withCtx(() => [
|
206
|
+
createElementVNode(
|
207
|
+
"div",
|
208
|
+
{
|
209
|
+
ref_key: "designCube",
|
210
|
+
ref: designCube,
|
211
|
+
class: "design-cube"
|
212
|
+
},
|
213
|
+
[
|
214
|
+
(openBlock(true), createElementBlock(
|
215
|
+
Fragment,
|
216
|
+
null,
|
217
|
+
renderList(form.density, (col) => {
|
218
|
+
return openBlock(), createElementBlock("ul", {
|
219
|
+
key: col,
|
220
|
+
class: "cube-col"
|
221
|
+
}, [
|
222
|
+
(openBlock(true), createElementBlock(
|
223
|
+
Fragment,
|
224
|
+
null,
|
225
|
+
renderList(form.density, (item) => {
|
226
|
+
return openBlock(), createElementBlock("li", {
|
227
|
+
key: item,
|
228
|
+
class: normalizeClass([{
|
229
|
+
"item-selected": selectionStart.value?.x === col && selectionStart.value?.y === item,
|
230
|
+
"item-selecting": checkSelecting(col, item)
|
231
|
+
}, "cube-item"]),
|
232
|
+
"data-x": col,
|
233
|
+
"data-y": item,
|
234
|
+
style: normalizeStyle(itemStyle.value),
|
235
|
+
onClick: ($event) => onSelectCube(col, item),
|
236
|
+
onMouseenter: ($event) => onMousemove(col, item)
|
237
|
+
}, " + ", 46, _hoisted_1);
|
238
|
+
}),
|
239
|
+
128
|
240
|
+
/* KEYED_FRAGMENT */
|
241
|
+
))
|
242
|
+
]);
|
243
|
+
}),
|
244
|
+
128
|
245
|
+
/* KEYED_FRAGMENT */
|
246
|
+
)),
|
247
|
+
createCommentVNode(" \u5DF2\u9009\u4E2D\u533A\u57DF\u7684\u8986\u76D6\u5C42 "),
|
248
|
+
(openBlock(true), createElementBlock(
|
249
|
+
Fragment,
|
250
|
+
null,
|
251
|
+
renderList(selectedCubes.value, (cube, index) => {
|
252
|
+
return openBlock(), createElementBlock("div", {
|
253
|
+
key: index,
|
254
|
+
class: normalizeClass(["selected-area", { "selected-area-choose": selectedAreaIndex.value === index }]),
|
255
|
+
style: normalizeStyle(getSelectedAreaStyle(cube)),
|
256
|
+
onClick: ($event) => onClickSelectedArea(index)
|
257
|
+
}, [
|
258
|
+
createVNode(_component_dk_icon, {
|
259
|
+
icon: "Close",
|
260
|
+
class: "cube-close",
|
261
|
+
onClick: ($event) => onDeleteCubes(index)
|
262
|
+
}, null, 8, ["onClick"]),
|
263
|
+
!cube.image ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
264
|
+
createElementVNode(
|
265
|
+
"div",
|
266
|
+
_hoisted_4,
|
267
|
+
toDisplayString(getReferenceSize(cube)),
|
268
|
+
1
|
269
|
+
/* TEXT */
|
270
|
+
)
|
271
|
+
])) : (openBlock(), createElementBlock("div", _hoisted_5, [
|
272
|
+
createElementVNode("img", {
|
273
|
+
src: cube.image,
|
274
|
+
alt: ""
|
275
|
+
}, null, 8, _hoisted_6)
|
276
|
+
]))
|
277
|
+
], 14, _hoisted_2);
|
278
|
+
}),
|
279
|
+
128
|
280
|
+
/* KEYED_FRAGMENT */
|
281
|
+
))
|
282
|
+
],
|
283
|
+
512
|
284
|
+
/* NEED_PATCH */
|
285
|
+
)
|
286
|
+
]),
|
287
|
+
_: 1
|
288
|
+
/* STABLE */
|
289
|
+
}),
|
290
|
+
selectedCubes.value[selectedAreaIndex.value] ? (openBlock(), createElementBlock("div", _hoisted_7, [
|
291
|
+
createVNode(_component_el_form_item, { label: "\u9009\u62E9\u56FE\u7247" }, {
|
292
|
+
default: withCtx(() => [
|
293
|
+
createVNode(_component_dk_image_input, {
|
294
|
+
modelValue: selectedCubes.value[selectedAreaIndex.value].image,
|
295
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => selectedCubes.value[selectedAreaIndex.value].image = $event)
|
296
|
+
}, null, 8, ["modelValue"])
|
297
|
+
]),
|
298
|
+
_: 1
|
299
|
+
/* STABLE */
|
300
|
+
}),
|
301
|
+
createVNode(_component_el_form_item, {
|
302
|
+
label: "\u70B9\u51FB\u6548\u679C",
|
303
|
+
style: { "padding": "10px 0" }
|
304
|
+
}, {
|
305
|
+
default: withCtx(() => [
|
306
|
+
createVNode(_component_el_radio_group, {
|
307
|
+
modelValue: selectedCubes.value[selectedAreaIndex.value].clickType,
|
308
|
+
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => selectedCubes.value[selectedAreaIndex.value].clickType = $event)
|
309
|
+
}, {
|
310
|
+
default: withCtx(() => [
|
311
|
+
createVNode(_component_el_radio, { value: "path" }, {
|
312
|
+
default: withCtx(() => [
|
313
|
+
createTextVNode("\u8DF3\u8F6C\u9875\u9762")
|
314
|
+
]),
|
315
|
+
_: 1
|
316
|
+
/* STABLE */
|
317
|
+
}),
|
318
|
+
createVNode(_component_el_radio, { value: "event" }, {
|
319
|
+
default: withCtx(() => [
|
320
|
+
createTextVNode("\u89E6\u53D1\u4E8B\u4EF6")
|
321
|
+
]),
|
322
|
+
_: 1
|
323
|
+
/* STABLE */
|
324
|
+
})
|
325
|
+
]),
|
326
|
+
_: 1
|
327
|
+
/* STABLE */
|
328
|
+
}, 8, ["modelValue"])
|
329
|
+
]),
|
330
|
+
_: 1
|
331
|
+
/* STABLE */
|
332
|
+
}),
|
333
|
+
selectedCubes.value[selectedAreaIndex.value].clickType === "path" ? (openBlock(), createBlock(_component_el_form_item, {
|
334
|
+
key: 0,
|
335
|
+
label: "\u5730\u5740",
|
336
|
+
style: { "padding": "10px 0" }
|
337
|
+
}, {
|
338
|
+
default: withCtx(() => [
|
339
|
+
createVNode(_component_dk_url_input, {
|
340
|
+
modelValue: selectedCubes.value[selectedAreaIndex.value].path,
|
341
|
+
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => selectedCubes.value[selectedAreaIndex.value].path = $event)
|
342
|
+
}, null, 8, ["modelValue"])
|
343
|
+
]),
|
344
|
+
_: 1
|
345
|
+
/* STABLE */
|
346
|
+
})) : createCommentVNode("v-if", true),
|
347
|
+
selectedCubes.value[selectedAreaIndex.value].clickType === "event" ? (openBlock(), createBlock(_component_el_form_item, {
|
348
|
+
key: 1,
|
349
|
+
label: "\u4E8B\u4EF6"
|
350
|
+
}, {
|
351
|
+
default: withCtx(() => [
|
352
|
+
createVNode(DkEventSelectInput, {
|
353
|
+
modelValue: selectedCubes.value[selectedAreaIndex.value].event,
|
354
|
+
"onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => selectedCubes.value[selectedAreaIndex.value].event = $event)
|
355
|
+
}, null, 8, ["modelValue"])
|
356
|
+
]),
|
357
|
+
_: 1
|
358
|
+
/* STABLE */
|
359
|
+
})) : createCommentVNode("v-if", true)
|
360
|
+
])) : createCommentVNode("v-if", true)
|
361
|
+
]),
|
362
|
+
_: 1
|
363
|
+
/* STABLE */
|
364
|
+
}, 8, ["model"])
|
365
|
+
]);
|
366
|
+
};
|
367
|
+
}
|
368
|
+
});
|
369
|
+
|
370
|
+
export { _sfc_main as default };
|
371
|
+
//# sourceMappingURL=DkCubeImageInput.vue2.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DkCubeImageInput.vue2.mjs","sources":["../../../../../src/page-diy/src/components/forms/DkCubeImageInput.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkCubeImageInput',\n});\n</script>\n<template>\n <div>\n <el-form :model=\"form\" label-width=\"auto\" style=\"max-width: 400px\" label-position=\"left\">\n <el-form-item label=\"魔方密度\">\n <el-select v-model=\"form.density\" @change=\"onChangeDensity()\">\n <el-option label=\"4x4\" :value=\"4\" />\n <el-option label=\"5x5\" :value=\"5\" />\n <el-option label=\"6x6\" :value=\"6\" />\n </el-select>\n </el-form-item>\n <el-form-item style=\"margin: 10px 0\">\n <div ref=\"designCube\" class=\"design-cube\">\n <ul v-for=\"col in form.density\" :key=\"col\" class=\"cube-col\">\n <li\n v-for=\"item in form.density\"\n :key=\"item\"\n :class=\"{\n 'item-selected': selectionStart?.x === col && selectionStart?.y === item,\n 'item-selecting': checkSelecting(col, item),\n }\"\n class=\"cube-item\"\n :data-x=\"col\"\n :data-y=\"item\"\n :style=\"itemStyle\"\n @click=\"onSelectCube(col, item)\"\n @mouseenter=\"onMousemove(col, item)\"\n >\n +\n </li>\n </ul>\n <!-- 已选中区域的覆盖层 -->\n <div\n v-for=\"(cube, index) in selectedCubes\"\n :key=\"index\"\n class=\"selected-area\"\n :class=\"{ 'selected-area-choose': selectedAreaIndex === index }\"\n :style=\"getSelectedAreaStyle(cube)\"\n @click=\"onClickSelectedArea(index)\"\n >\n <dk-icon icon=\"Close\" class=\"cube-close\" @click=\"onDeleteCubes(index)\"></dk-icon>\n <div v-if=\"!cube.image\">\n <div class=\"cube-selected-text\">{{ getReferenceSize(cube) }}</div>\n </div>\n <div v-else>\n <img :src=\"cube.image\" alt=\"\" />\n </div>\n </div>\n </div>\n </el-form-item>\n <div v-if=\"selectedCubes[selectedAreaIndex]\">\n <el-form-item label=\"选择图片\">\n <dk-image-input v-model=\"selectedCubes[selectedAreaIndex].image\"></dk-image-input>\n </el-form-item>\n <el-form-item label=\"点击效果\" style=\"padding: 10px 0\">\n <el-radio-group v-model=\"selectedCubes[selectedAreaIndex].clickType\">\n <el-radio value=\"path\">跳转页面</el-radio>\n <el-radio value=\"event\">触发事件</el-radio>\n </el-radio-group>\n </el-form-item>\n <el-form-item v-if=\"selectedCubes[selectedAreaIndex].clickType === 'path'\" label=\"地址\" style=\"padding: 10px 0\">\n <dk-url-input v-model=\"selectedCubes[selectedAreaIndex].path\"> </dk-url-input>\n </el-form-item>\n <el-form-item v-if=\"selectedCubes[selectedAreaIndex].clickType === 'event'\" label=\"事件\">\n <DkEventSelectInput v-model=\"selectedCubes[selectedAreaIndex].event\"> </DkEventSelectInput>\n </el-form-item>\n </div>\n </el-form>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, reactive, watch, ref, onMounted } from 'vue'\nimport { useElementSize } from '@vueuse/core'\nimport DkEventSelectInput from './DkEventSelectInput.vue'\n\n\nconst designCube: any = ref(null)\nconst { width } = useElementSize(designCube) // 当前组件宽度\n\nconst props = defineProps({\n modelValue: {\n default: () => {\n return {}\n },\n type: Object,\n },\n imageStyle: {\n default: () => {\n return {}\n },\n type: Object,\n },\n})\n\nconst form: any = reactive({\n density: 4,\n})\n\nconst itemStyle = computed(() => {\n const size = width.value / form.density\n return {\n width: size + 'px',\n height: size + 'px',\n }\n})\n\n// 定义选择区域的起点和终点\nconst selectionStart = ref<{ x: number; y: number } | null>(null)\nconst selectionEnd = ref<{ x: number; y: number } | null>(null)\nconst selectedCubes: any = ref([])\n\nconst emit = defineEmits(['input', 'update:modelValue'])\nconst emitData = computed(() => {\n return {\n density: form.density,\n selectedCubes: selectedCubes.value,\n }\n})\n\nconst onChangeDensity = () => {\n selectedCubes.value = []\n selectionStart.value = null\n}\n\nwatch(\n () => emitData,\n () => {\n emit('update:modelValue', emitData.value)\n },\n {\n deep: true,\n }\n)\nwatch(\n () => props.modelValue,\n () => {\n form.density = props.modelValue.density\n selectedCubes.value = props.modelValue.selectedCubes\n }\n)\nonMounted(() => {\n form.density = props.modelValue.density || 4\n selectedCubes.value = props.modelValue.selectedCubes || []\n})\n// 检查给定坐标是否在选择区域内或已被选中\nconst checkSelecting = (x: number, y: number) => {\n // 检查是否为已选中的矩形区域内的方块\n const isSelected = selectedCubes.value.some((cube: any) => {\n const startX = Math.min(cube.start.x, cube.end.x)\n const endX = Math.max(cube.start.x, cube.end.x)\n const startY = Math.min(cube.start.y, cube.end.y)\n const endY = Math.max(cube.start.y, cube.end.y)\n return x >= startX && x <= endX && y >= startY && y <= endY\n })\n\n if (isSelected) return false // 如果是已选中的区域,则不考虑为当前选择\n\n // 如果没有正在进行的选择操作,则仅返回是否已选中\n if (!selectionStart.value || !selectionEnd.value) return false\n\n // 计算当前拖动选择区域的边界\n const startX = Math.min(selectionStart.value.x, selectionEnd.value.x)\n const endX = Math.max(selectionStart.value.x, selectionEnd.value.x)\n const startY = Math.min(selectionStart.value.y, selectionEnd.value.y)\n const endY = Math.max(selectionStart.value.y, selectionEnd.value.y)\n\n // 检查新选择区域是否与任何已选中的区域重叠\n const overlapsWithSelected = selectedCubes.value.some((cube: any) => {\n const selStartX = Math.min(cube.start.x, cube.end.x)\n const selEndX = Math.max(cube.start.x, cube.end.x)\n const selStartY = Math.min(cube.start.y, cube.end.y)\n const selEndY = Math.max(cube.start.y, cube.end.y)\n\n // 检查是否有重叠\n return !(endX < selStartX || startX > selEndX || endY < selStartY || startY > selEndY)\n })\n\n if (overlapsWithSelected) return false // 如果有重叠,则不考虑为当前选择\n\n // 检查坐标是否位于当前拖动的选择区域内\n return x >= startX && x <= endX && y >= startY && y <= endY\n}\n\nconst moduleSize = computed(() => width.value / form.density)\n\nconst getSelectedAreaStyle = (cube: { start: { x: number; y: number }; end: { x: number; y: number } }) => {\n const startX = Math.min(cube.start.x, cube.end.x) - 1\n const endX = Math.max(cube.start.x, cube.end.x)\n const startY = Math.min(cube.start.y, cube.end.y) - 1\n const endY = Math.max(cube.start.y, cube.end.y)\n\n return {\n width: `${(endX - startX) * moduleSize.value}px`,\n height: `${(endY - startY) * moduleSize.value}px`,\n top: `${startY * moduleSize.value}px`,\n left: `${startX * moduleSize.value}px`,\n }\n}\n\nconst referenceWidth = 750 // 固定宽度\n\n// 计算参考尺寸的方法\nconst getReferenceSize = (cube: { start: { x: number; y: number }; end: { x: number; y: number } }) => {\n const startX = Math.min(cube.start.x, cube.end.x)\n const endX = Math.max(cube.start.x, cube.end.x)\n const startY = Math.min(cube.start.y, cube.end.y)\n const endY = Math.max(cube.start.y, cube.end.y)\n\n // 模块宽度和高度(假设魔方网格是正方形)\n const moduleWidth = referenceWidth / form.density\n\n // 如果选择的是单个模块,则宽度和高度都应该是单个模块的尺寸\n const width = (endX - startX + 1) * moduleWidth\n const height = (endY - startY + 1) * moduleWidth\n\n return `${Math.round(width)} x ${Math.round(height)} 像素`\n}\n\nconst selectedAreaIndex = ref(-1)\nconst onClickSelectedArea = (k: number) => {\n selectedAreaIndex.value = k\n}\n\nconst onDeleteCubes = (k: number) => {\n selectedAreaIndex.value = -1\n selectedCubes.value.splice(k, 1)\n}\n\nconst onSelectCube = (x: number, y: number) => {\n if (selectionStart.value == null) {\n selectionStart.value = {\n x,\n y,\n }\n } else if (checkSelecting(x, y)) {\n selectedCubes.value.push({\n start: selectionStart.value,\n end: { x, y },\n path: '',\n clickType: 'path',\n })\n selectionStart.value = null\n selectedAreaIndex.value = selectedCubes.value.length - 1\n }\n}\n\nconst onMousemove = (x: number, y: number) => {\n selectionEnd.value = { x, y }\n}\n</script>\n\n<style scoped lang=\"scss\"></style>\n"],"names":["__MACROS_defineComponent","startX","endX","startY","endY","width"],"mappings":"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"}
|
@@ -7,10 +7,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
7
7
|
default: string;
|
8
8
|
type: StringConstructor;
|
9
9
|
};
|
10
|
-
label: {
|
11
|
-
default: string;
|
12
|
-
type: StringConstructor;
|
13
|
-
};
|
14
10
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue" | "change")[], "input" | "update:modelValue" | "change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
15
11
|
modelValue: {
|
16
12
|
default: string;
|
@@ -20,17 +16,12 @@ declare const _default: import("vue").DefineComponent<{
|
|
20
16
|
default: string;
|
21
17
|
type: StringConstructor;
|
22
18
|
};
|
23
|
-
label: {
|
24
|
-
default: string;
|
25
|
-
type: StringConstructor;
|
26
|
-
};
|
27
19
|
}>> & {
|
28
20
|
onInput?: ((...args: any[]) => any) | undefined;
|
29
21
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
30
22
|
onChange?: ((...args: any[]) => any) | undefined;
|
31
23
|
}, {
|
32
24
|
modelValue: string;
|
33
|
-
label: string;
|
34
25
|
placeholder: string;
|
35
26
|
}, {}>;
|
36
27
|
export default _default;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DkEventCreateInput.vue2.mjs","sources":["../../../../../src/page-diy/src/components/forms/DkEventCreateInput.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkEventCreateInput',\n});\n</script>\n<template>\n <div>\n <el-input v-model=\"data\" :placeholder=\"placeholder\" clearable>\n <template #append>\n <el-button @click=\"onClick\">随机</el-button>\n </template>\n </el-input>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, watch } from 'vue'\n\n\n\nconst props = defineProps({\n modelValue: {\n default: '',\n type: String,\n },\n placeholder: {\n default: '',\n type: String,\n },\n
|
1
|
+
{"version":3,"file":"DkEventCreateInput.vue2.mjs","sources":["../../../../../src/page-diy/src/components/forms/DkEventCreateInput.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkEventCreateInput',\n});\n</script>\n<template>\n <div>\n <el-input v-model=\"data\" :placeholder=\"placeholder\" clearable>\n <template #append>\n <el-button @click=\"onClick\">随机</el-button>\n </template>\n </el-input>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, watch } from 'vue'\n\n\n\nconst props = defineProps({\n modelValue: {\n default: '',\n type: String,\n },\n placeholder: {\n default: '',\n type: String,\n },\n})\n\nconst data = ref(props.modelValue || '')\n\nconst emit = defineEmits(['input', 'update:modelValue', 'change'])\nwatch(\n () => props.modelValue,\n (val) => {\n data.value = val\n }\n)\nwatch(\n () => data.value,\n (val) => {\n emit('change', val)\n emit('update:modelValue', val)\n emit('input', val)\n }\n)\n\nconst randomString = (e: any) => {\n e = e || 32\n const t = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'\n const a = t.length\n let n = ''\n for (let i = 0; i < e; i++) {\n n += t.charAt(Math.floor(Math.random() * a))\n }\n return n\n}\nconst onClick = () => {\n data.value = randomString(6)\n}\n</script>\n\n<style scoped lang=\"scss\"></style>\n"],"names":["__MACROS_defineComponent"],"mappings":";;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,oBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;;AA4BD,IAAA,MAAM,IAAO,GAAA,GAAA,CAAI,KAAM,CAAA,UAAA,IAAc,EAAE,CAAA,CAAA;AAGvC,IAAA,KAAA;AAAA,MACE,MAAM,KAAM,CAAA,UAAA;AAAA,MACZ,CAAC,GAAQ,KAAA;AACP,QAAA,IAAA,CAAK,KAAQ,GAAA,GAAA,CAAA;AAAA,OACf;AAAA,KACF,CAAA;AACA,IAAA,KAAA;AAAA,MACE,MAAM,IAAK,CAAA,KAAA;AAAA,MACX,CAAC,GAAQ,KAAA;AACP,QAAA,IAAA,CAAK,UAAU,GAAG,CAAA,CAAA;AAClB,QAAA,IAAA,CAAK,qBAAqB,GAAG,CAAA,CAAA;AAC7B,QAAA,IAAA,CAAK,SAAS,GAAG,CAAA,CAAA;AAAA,OACnB;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,CAAC,CAAW,KAAA;AAC/B,MAAA,CAAA,GAAI,CAAK,IAAA,EAAA,CAAA;AACT,MAAA,MAAM,CAAI,GAAA,kDAAA,CAAA;AACV,MAAA,MAAM,IAAI,CAAE,CAAA,MAAA,CAAA;AACZ,MAAA,IAAI,CAAI,GAAA,EAAA,CAAA;AACR,MAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,CAAA,EAAG,CAAK,EAAA,EAAA;AAC1B,QAAK,CAAA,IAAA,CAAA,CAAE,OAAO,IAAK,CAAA,KAAA,CAAM,KAAK,MAAO,EAAA,GAAI,CAAC,CAAC,CAAA,CAAA;AAAA,OAC7C;AACA,MAAO,OAAA,CAAA,CAAA;AAAA,KACT,CAAA;AACA,IAAA,MAAM,UAAU,MAAM;AACpB,MAAK,IAAA,CAAA,KAAA,GAAQ,aAAa,CAAC,CAAA,CAAA;AAAA,KAC7B,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -69,21 +69,18 @@ const _sfc_main = {
|
|
69
69
|
const propsData = children.props;
|
70
70
|
// 当前节点的配置数据
|
71
71
|
const config = children.config.config;
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
const
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
}
|
85
|
-
});
|
86
|
-
}
|
72
|
+
// 表单配置数据
|
73
|
+
const eventProps = config.props();
|
74
|
+
this.findDkEventCreateInput(eventProps, propsData).forEach((item) => {
|
75
|
+
const data = {
|
76
|
+
id: children._id,
|
77
|
+
label: item.props?.label || config.label,
|
78
|
+
value: propsData[item.field],
|
79
|
+
};
|
80
|
+
if (data.value && data.id && data.label) {
|
81
|
+
this.EventData.addEvent(data);
|
82
|
+
}
|
83
|
+
});
|
87
84
|
}
|
88
85
|
}
|
89
86
|
this.eventData = this.EventData.getAllEvents();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DkEventSelectInput.vue.mjs","sources":["../../../../../src/page-diy/src/components/forms/DkEventSelectInput.vue"],"sourcesContent":["<template>\n <div style=\"display: flex\">\n <el-select v-model=\"data\" placeholder=\"请选择要触发事件\" style=\"width: 100%\" allow-create filterable>\n <el-option\n v-for=\"item in eventData\"\n :key=\"item.value\"\n :label=\"item.label + '(' + item.value + ')'\"\n :value=\"item.value\"\n >\n <span style=\"float: left\">{{ item.label }}</span>\n <span style=\"float: right; font-size: 13px; color: #8492a6\">{{ item.value }}</span>\n </el-option>\n </el-select>\n <el-button :loading=\"loading\" @click=\"updateEvent\">刷新</el-button>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'DkEventSelectInput',\n inject: ['diy'],\n props: {\n modelValue: {\n default: '',\n type: String,\n },\n placeholder: {\n default: '',\n type: String,\n },\n },\n emits: ['update:modelValue'],\n data() {\n return {\n data: '',\n loading: false,\n eventData: [],\n }\n },\n computed: {\n EventData() {\n return this.diy.proxy.eventData\n },\n children() {\n return this.diy.proxy.children\n },\n },\n watch: {\n data() {\n this.$emit('update:modelValue', this.data)\n },\n },\n mounted() {\n this.data = this.modelValue || ''\n this.updateEvent()\n },\n methods: {\n updateEvent() {\n this.loading = true\n this.EventData.removeAllEvent()\n this.onUpdateEvent()\n this.loading = false\n },\n onClick() {\n this.data = this.randomString(10)\n },\n randomString(e) {\n e = e || 32\n const t = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'\n const a = t.length\n let n = ''\n for (let i = 0; i < e; i++) {\n n += t.charAt(Math.floor(Math.random() * a))\n }\n return n\n },\n // 更新事件\n onUpdateEvent() {\n for (let i = 0; i < this.children.length; i++) {\n if (this.children[i].children.length > 0) {\n // 当前节点\n const children = this.children[i].children[0]\n // 当前节点的props数据\n const propsData = children.props\n // 当前节点的配置数据\n const config = children.config.config\n
|
1
|
+
{"version":3,"file":"DkEventSelectInput.vue.mjs","sources":["../../../../../src/page-diy/src/components/forms/DkEventSelectInput.vue"],"sourcesContent":["<template>\n <div style=\"display: flex\">\n <el-select v-model=\"data\" placeholder=\"请选择要触发事件\" style=\"width: 100%\" allow-create filterable>\n <el-option\n v-for=\"item in eventData\"\n :key=\"item.value\"\n :label=\"item.label + '(' + item.value + ')'\"\n :value=\"item.value\"\n >\n <span style=\"float: left\">{{ item.label }}</span>\n <span style=\"float: right; font-size: 13px; color: #8492a6\">{{ item.value }}</span>\n </el-option>\n </el-select>\n <el-button :loading=\"loading\" @click=\"updateEvent\">刷新</el-button>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'DkEventSelectInput',\n inject: ['diy'],\n props: {\n modelValue: {\n default: '',\n type: String,\n },\n placeholder: {\n default: '',\n type: String,\n },\n },\n emits: ['update:modelValue'],\n data() {\n return {\n data: '',\n loading: false,\n eventData: [],\n }\n },\n computed: {\n EventData() {\n return this.diy.proxy.eventData\n },\n children() {\n return this.diy.proxy.children\n },\n },\n watch: {\n data() {\n this.$emit('update:modelValue', this.data)\n },\n },\n mounted() {\n this.data = this.modelValue || ''\n this.updateEvent()\n },\n methods: {\n updateEvent() {\n this.loading = true\n this.EventData.removeAllEvent()\n this.onUpdateEvent()\n this.loading = false\n },\n onClick() {\n this.data = this.randomString(10)\n },\n randomString(e) {\n e = e || 32\n const t = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'\n const a = t.length\n let n = ''\n for (let i = 0; i < e; i++) {\n n += t.charAt(Math.floor(Math.random() * a))\n }\n return n\n },\n // 更新事件\n onUpdateEvent() {\n for (let i = 0; i < this.children.length; i++) {\n if (this.children[i].children.length > 0) {\n // 当前节点\n const children = this.children[i].children[0]\n // 当前节点的props数据\n const propsData = children.props\n // 当前节点的配置数据\n const config = children.config.config\n // 表单配置数据\n const eventProps = config.props()\n this.findDkEventCreateInput(eventProps, propsData).forEach((item) => {\n const data = {\n id: children._id,\n label: item.props?.label || config.label,\n value: propsData[item.field],\n }\n if (data.value && data.id && data.label) {\n this.EventData.addEvent(data)\n }\n })\n }\n }\n this.eventData = this.EventData.getAllEvents()\n },\n // 寻找事件\n findDkEventCreateInput(data, propsData) {\n const result = []\n data.forEach((element) => {\n if (element.children) {\n result.push(...this.findDkEventCreateInput(element.children))\n }\n if (element.control && Array.isArray(element.control)) {\n element.control.forEach((control) => {\n if (control.rule.length > 0) {\n result.push(...this.findDkEventCreateInput(control.rule))\n }\n })\n }\n if (element.type === 'DkEventCreateInput') {\n result.push(element)\n }\n })\n return result\n },\n },\n}\n</script>\n"],"names":["_openBlock","_createElementBlock","_createVNode","_Fragment","_renderList","_createBlock","_createElementVNode","_toDisplayString"],"mappings":"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"}
|