@vipl520/dk-ui 1.0.54 → 1.0.57

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. package/dist/index.js +46 -8
  2. package/dist/index.min.js +4 -4
  3. package/dist/index.min.js.map +1 -1
  4. package/dist/index.min.mjs +4 -4
  5. package/dist/index.min.mjs.map +1 -1
  6. package/dist/index.mjs +46 -8
  7. package/dist/web-types.json +1 -1
  8. package/es/attachment/src/attachment.vue2.mjs +7 -1
  9. package/es/attachment/src/attachment.vue2.mjs.map +1 -1
  10. package/es/attachment-dialog/src/attachment-dialog.vue2.mjs +2 -0
  11. package/es/attachment-dialog/src/attachment-dialog.vue2.mjs.map +1 -1
  12. package/es/group/src/group.vue2.mjs +13 -1
  13. package/es/group/src/group.vue2.mjs.map +1 -1
  14. package/es/hot-area-input/src/component/hot-area-content.vue2.mjs +1 -1
  15. package/es/hot-area-input/src/component/hot-area-content.vue2.mjs.map +1 -1
  16. package/es/page-diy/src/views/min/DkMinGrid.vue.mjs +2 -1
  17. package/es/page-diy/src/views/min/DkMinGrid.vue.mjs.map +1 -1
  18. package/es/style-box-input/src/style-box-input.vue2.mjs +1 -1
  19. package/es/style-box-input/src/style-box-input.vue2.mjs.map +1 -1
  20. package/es/url-input/index.d.ts +3 -1
  21. package/es/url-input/src/url-input-content.vue2.mjs +11 -3
  22. package/es/url-input/src/url-input-content.vue2.mjs.map +1 -1
  23. package/es/url-input/src/url-input.vue.d.ts +3 -1
  24. package/es/url-input/src/url-input.vue2.mjs +11 -2
  25. package/es/url-input/src/url-input.vue2.mjs.map +1 -1
  26. package/es/url-input/style/index.scss +26 -27
  27. package/lib/attachment/src/attachment.vue2.js +7 -1
  28. package/lib/attachment/src/attachment.vue2.js.map +1 -1
  29. package/lib/attachment-dialog/src/attachment-dialog.vue2.js +2 -0
  30. package/lib/attachment-dialog/src/attachment-dialog.vue2.js.map +1 -1
  31. package/lib/group/src/group.vue2.js +13 -1
  32. package/lib/group/src/group.vue2.js.map +1 -1
  33. package/lib/hot-area-input/src/component/hot-area-content.vue2.js +1 -1
  34. package/lib/hot-area-input/src/component/hot-area-content.vue2.js.map +1 -1
  35. package/lib/page-diy/src/views/min/DkMinGrid.vue.js +2 -1
  36. package/lib/page-diy/src/views/min/DkMinGrid.vue.js.map +1 -1
  37. package/lib/style-box-input/src/style-box-input.vue2.js +1 -1
  38. package/lib/style-box-input/src/style-box-input.vue2.js.map +1 -1
  39. package/lib/url-input/index.d.ts +3 -1
  40. package/lib/url-input/src/url-input-content.vue2.js +10 -2
  41. package/lib/url-input/src/url-input-content.vue2.js.map +1 -1
  42. package/lib/url-input/src/url-input.vue.d.ts +3 -1
  43. package/lib/url-input/src/url-input.vue2.js +10 -1
  44. package/lib/url-input/src/url-input.vue2.js.map +1 -1
  45. package/lib/url-input/style/index.scss +26 -27
  46. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"group.vue2.js","sources":["../../../src/group/src/group.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkGroup',\n});\n</script>\n<template>\n <div :class=\"'dk-group _fc-group ' + (disabled ? '_fc-group-disabled' : '')\">\n <el-divider v-if=\"props.title\">{{ props.title }}</el-divider>\n <div v-if=\"data.sort.length === 0\">\n <el-button :key=\"'a_def'\" style=\"width: 100%\" type=\"primary\" @click=\"add\"> 添加数据 </el-button>\n </div>\n <draggable\n tag=\"el-collapse\"\n :list=\"props.modelValue\"\n :component-data=\"collapseComponentData\"\n item-key=\"id\"\n handle=\".collapse-title-rank\"\n >\n <template #item=\"{ element, index }\">\n <el-collapse-item :title=\"element.title\" :name=\"index\">\n <template #title>\n <div class=\"collapse-title\">\n <dk-icon icon=\"Rank\" class=\"collapse-title-rank\"></dk-icon>\n <span>{{ getTitle(index) }}</span>\n </div>\n </template>\n <template #default>\n <div :key=\"index\" class=\"_dk-group-container\">\n <Type\n :key=\"index\"\n :in-for=\"true\"\n :model-value=\"getFieldValue(index)\"\n :rule=\"data.cacheRule[index].rule\"\n :option=\"data.cacheRule[index].options\"\n :extend-option=\"true\"\n @update:modelValue=\"formData(index, $event)\"\n @emit-event=\"(name: any, ...args: any) => emitEvent(name, args, index)\"\n @update:api=\"($f: any) => add$f(index, $f)\"\n />\n <div class=\"_dk-group-handle\">\n <el-button-group>\n <el-button icon=\"Plus\" plain @click=\"add\" />\n <el-button icon=\"Delete\" plain @click=\"del(index, index + 1)\" />\n </el-button-group>\n </div>\n </div>\n </template>\n </el-collapse-item>\n </template>\n </draggable>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { markRaw, nextTick, reactive, watch, onMounted } from 'vue'\nimport { deepCopy, deepExtend, hasProperty } from '../utils/utils'\nimport extend from '../utils/extend'\n// import draggable from 'vuedraggable'\nimport { groupProps } from './props'\n\n\n\nconst props = defineProps(groupProps)\nconst emit = defineEmits(['update:modelValue', 'change', 'itemMounted', 'remove', 'add'])\nconst data: any = reactive({\n len: 0,\n cacheRule: {},\n cacheValue: {},\n sort: [],\n form: markRaw(props.formCreateInject.form.$form()),\n loading: true,\n})\n\nconst collapseComponentData = reactive({\n modelValue: [0],\n})\n\nconst Type = data.form\n\nwatch(\n () => props.rule, // 侦听 rule 属性\n (n, o) => {\n // 您原来的 handler 逻辑\n Object.keys(data.cacheRule).forEach((v) => {\n const item = data.cacheRule[v]\n if (item.$f) {\n const val = item.$f.formData()\n if (n === o) {\n item.$f.deferSyncValue(() => {\n deepExtend(item.rule, n, false)\n item.$f.setValue(val)\n }, true)\n } else {\n const val = item.$f.formData()\n item.$f.once('reloading', () => {\n item.$f.setValue(val)\n })\n item.rule = deepCopy(n)\n }\n }\n })\n },\n { deep: true } // 深度侦听\n)\n\nwatch(\n () => props.disabled, // 侦听 disabled 属性\n (n) => {\n // 您原来的 disabled 逻辑\n if (props.syncDisabled) {\n const lst = data.cacheRule\n Object.keys(lst).forEach((k) => {\n lst[k].$f.disabled(n)\n })\n }\n }\n)\n\nwatch(\n () => props.expand, // 侦听 expand 属性\n (n) => {\n // 您原来的 expand 逻辑\n const d = n - props.modelValue.length\n if (d > 0) {\n expandRule(d)\n }\n }\n)\n\nwatch(\n () => props.modelValue, // 侦听 modelValue 属性\n (n) => {\n // 您原来的 modelValue 逻辑\n n = n || []\n const keys = Object.keys(data.cacheRule)\n const total = keys.length // 缓存数\n const len = total - n.length // 缓存数-value数\n if (len < 0) {\n for (let i = len; i < 0; i++) {\n addRule(n.length - 1, true)\n }\n for (let i = 0; i < total; i++) {\n setValue(keys[i], n[i])\n }\n } else {\n if (len > 0) {\n for (let i = 0; i < len; i++) {\n console.log('keys[total - i - 1]', keys[total - i - 1])\n removeRule(keys[total - i - 1])\n }\n }\n n.forEach((val, i) => {\n setValue(keys[i], n[i])\n })\n }\n },\n { deep: true } // 深度侦听\n)\n\nwatch(\n () => ({ ...data.cacheRule }),\n (n) => {\n data.sort = Object.keys(n)\n },\n { immediate: true }\n)\n\nconst getFieldValue = (index: number) => {\n if (props.field) {\n return { [props.field]: _value(props.modelValue[index]) }\n } else {\n return props.modelValue[index]\n }\n}\n\nconst getTitle = (index: number) => {\n if (data.cacheRule[index]) {\n const { rule } = data.cacheRule[index]\n const defaultField = props.titleField ? props.titleField : rule[0]?.field\n return data.cacheRule[index].$f?.getValue(defaultField) || '点击展开'\n } else {\n return '点击展开'\n }\n}\nconst _value = (v: any) => {\n return v && hasProperty(v, props.field) ? v[props.field] : v\n}\nconst cache = (k: any, val: any) => {\n data.cacheValue[k] = JSON.stringify(val)\n}\nconst input = (value: any) => {\n emit('update:modelValue', value)\n emit('change', value)\n}\nconst formData = (index: any, formData: any) => {\n nextTick(() => {\n const keys = Object.keys(data.cacheRule)\n const value = keys.map((k: any) => {\n const _data = index === k ? formData : { ...data.cacheRule[k].$f.form }\n const value = props.field ? _data[props.field] || null : _data\n cache(k, value)\n return value\n })\n input(value)\n })\n}\n\nconst add$f = (index: any, $f: any) => {\n data.cacheRule[index].$f = $f\n nextTick(() => {\n if (props.syncDisabled) {\n $f.disabled(props.disabled)\n }\n emit('itemMounted', $f, Object.keys(data.cacheRule).indexOf(index))\n })\n}\n\nonMounted(() => {\n data.loading = false\n})\n\nconst setValue = (key: any, value: any) => {\n const field = props.field\n if (field) {\n value = { [field]: _value(value) }\n }\n if (data.cacheValue[key] === JSON.stringify(field ? value[field] : value)) {\n return\n }\n cache(key, value)\n}\nconst addRule = (index: any, isEmit = false) => {\n const rule = props.formCreateInject.form.copyRules(props.rule || [])\n const options: any = props.options\n ? { ...props.options }\n : {\n submitBtn: false,\n resetBtn: false,\n }\n if (props.defaultValue) {\n if (!options.formData) options.formData = {}\n const defVal = deepCopy(props.defaultValue)\n extend(options.formData, props.field ? { [props.field]: defVal } : defVal)\n }\n props.parse && props.parse({ rule, options, index: data.sort.length })\n data.cacheRule[index] = { rule, options }\n if (isEmit) {\n nextTick(() => emit('add', rule, Object.keys(data.cacheRule).length - 1))\n }\n}\n\nconst removeRule = (index: any, isEmit = false) => {\n delete data.cacheRule[index]\n delete data.cacheValue[index]\n if (isEmit) {\n nextTick(() => emit('remove', index))\n }\n}\nconst add = () => {\n if (props.disabled || props.onBeforeAdd(props.modelValue) === false) {\n return\n }\n const value = [...props.modelValue]\n value.push(props.defaultValue ? deepCopy(props.defaultValue) : props.field ? null : {})\n input(value)\n collapseComponentData.modelValue = [value.length - 1]\n}\nconst del = (index: number, key: number) => {\n if (props.disabled || props.onBeforeRemove(props.modelValue, index) === false) {\n return\n }\n const value = [...props.modelValue]\n value.splice(index, 1)\n input(value)\n}\n\nconst emitEvent = (name: any, args: any, index: any) => {\n emit(name, ...args, data.cacheRule[index].$f, index)\n}\n\nconst expandRule = (n: any) => {\n for (let i = 0; i < n; i++) {\n // eslint-disable-next-line vue/no-mutating-props\n props.modelValue.push(props.field ? null : {})\n }\n}\n\nconst d = (props.expand || 0) - props.modelValue.length\nfor (let i = 0; i < props.modelValue.length; i++) {\n addRule(i)\n}\nif (d > 0) {\n expandRule(d)\n}\n</script>\n"],"names":["__MACROS_defineComponent","reactive","markRaw","watch","deepExtend","val","deepCopy","d","hasProperty","formData","nextTick","value","onMounted","extend"],"mappings":"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"}
1
+ {"version":3,"file":"group.vue2.js","sources":["../../../src/group/src/group.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkGroup',\n});\n</script>\n<template>\n <div :class=\"'dk-group _fc-group ' + (disabled ? '_fc-group-disabled' : '')\">\n <el-divider v-if=\"props.title\">{{ props.title }}</el-divider>\n <div v-if=\"data.sort.length === 0\">\n <el-button :key=\"'a_def'\" style=\"width: 100%\" type=\"primary\" @click=\"add\"> 添加数据 </el-button>\n </div>\n <draggable\n tag=\"el-collapse\"\n :list=\"props.modelValue\"\n :component-data=\"collapseComponentData\"\n item-key=\"id\"\n handle=\".collapse-title-rank\"\n >\n <template #item=\"{ element, index }\">\n <el-collapse-item :title=\"element.title\" :name=\"index\">\n <template #title>\n <div class=\"collapse-title\">\n <dk-icon icon=\"Rank\" class=\"collapse-title-rank\"></dk-icon>\n <span>{{ getTitle(index) }}</span>\n </div>\n </template>\n <template #default>\n <div :key=\"index\" class=\"_dk-group-container\">\n <Type\n :key=\"index\"\n :in-for=\"true\"\n :model-value=\"getFieldValue(index)\"\n :rule=\"data.cacheRule[index].rule\"\n :option=\"data.cacheRule[index].options\"\n :extend-option=\"true\"\n @update:modelValue=\"formData(index, $event)\"\n @emit-event=\"(name: any, ...args: any) => emitEvent(name, args, index)\"\n @update:api=\"($f: any) => add$f(index, $f)\"\n />\n <div class=\"_dk-group-handle\">\n <el-button-group>\n <el-button icon=\"Plus\" plain @click=\"add\">增加</el-button>\n <el-button icon=\"Delete\" plain @click=\"del(index, index + 1)\">删除</el-button>\n </el-button-group>\n </div>\n </div>\n </template>\n </el-collapse-item>\n </template>\n </draggable>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { markRaw, nextTick, reactive, watch, onMounted } from 'vue'\nimport { deepCopy, deepExtend, hasProperty } from '../utils/utils'\nimport extend from '../utils/extend'\n// import draggable from 'vuedraggable'\nimport { groupProps } from './props'\n\n\n\nconst props = defineProps(groupProps)\nconst emit = defineEmits(['update:modelValue', 'change', 'itemMounted', 'remove', 'add'])\nconst data: any = reactive({\n len: 0,\n cacheRule: {},\n cacheValue: {},\n sort: [],\n form: markRaw(props.formCreateInject.form.$form()),\n loading: true,\n})\n\nconst collapseComponentData = reactive({\n modelValue: [0],\n})\n\nconst Type = data.form\n\nwatch(\n () => props.rule, // 侦听 rule 属性\n (n, o) => {\n // 您原来的 handler 逻辑\n Object.keys(data.cacheRule).forEach((v) => {\n const item = data.cacheRule[v]\n if (item.$f) {\n const val = item.$f.formData()\n if (n === o) {\n item.$f.deferSyncValue(() => {\n deepExtend(item.rule, n, false)\n item.$f.setValue(val)\n }, true)\n } else {\n const val = item.$f.formData()\n item.$f.once('reloading', () => {\n item.$f.setValue(val)\n })\n item.rule = deepCopy(n)\n }\n }\n })\n },\n { deep: true } // 深度侦听\n)\n\nwatch(\n () => props.disabled, // 侦听 disabled 属性\n (n) => {\n // 您原来的 disabled 逻辑\n if (props.syncDisabled) {\n const lst = data.cacheRule\n Object.keys(lst).forEach((k) => {\n lst[k].$f.disabled(n)\n })\n }\n }\n)\n\nwatch(\n () => props.expand, // 侦听 expand 属性\n (n) => {\n // 您原来的 expand 逻辑\n const d = n - props.modelValue.length\n if (d > 0) {\n expandRule(d)\n }\n }\n)\n\nwatch(\n () => props.modelValue, // 侦听 modelValue 属性\n (n) => {\n // 您原来的 modelValue 逻辑\n n = n || []\n const keys = Object.keys(data.cacheRule)\n const total = keys.length // 缓存数\n const len = total - n.length // 缓存数-value数\n if (len < 0) {\n for (let i = len; i < 0; i++) {\n addRule(n.length - 1, true)\n }\n for (let i = 0; i < total; i++) {\n setValue(keys[i], n[i])\n }\n } else {\n if (len > 0) {\n for (let i = 0; i < len; i++) {\n console.log('keys[total - i - 1]', keys[total - i - 1])\n removeRule(keys[total - i - 1])\n }\n }\n n.forEach((val, i) => {\n setValue(keys[i], n[i])\n })\n }\n },\n { deep: true } // 深度侦听\n)\n\nwatch(\n () => ({ ...data.cacheRule }),\n (n) => {\n data.sort = Object.keys(n)\n },\n { immediate: true }\n)\n\nconst getFieldValue = (index: number) => {\n if (props.field) {\n return { [props.field]: _value(props.modelValue[index]) }\n } else {\n return props.modelValue[index]\n }\n}\n\nconst getTitle = (index: number) => {\n if (data.cacheRule[index]) {\n const { rule } = data.cacheRule[index]\n const defaultField = props.titleField ? props.titleField : rule[0]?.field\n return data.cacheRule[index].$f?.getValue(defaultField) || '点击展开'\n } else {\n return '点击展开'\n }\n}\nconst _value = (v: any) => {\n return v && hasProperty(v, props.field) ? v[props.field] : v\n}\nconst cache = (k: any, val: any) => {\n data.cacheValue[k] = JSON.stringify(val)\n}\nconst input = (value: any) => {\n emit('update:modelValue', value)\n emit('change', value)\n}\nconst formData = (index: any, formData: any) => {\n nextTick(() => {\n const keys = Object.keys(data.cacheRule)\n const value = keys.map((k: any) => {\n const _data = index === k ? formData : { ...data.cacheRule[k].$f.form }\n const value = props.field ? _data[props.field] || null : _data\n cache(k, value)\n return value\n })\n input(value)\n })\n}\n\nconst add$f = (index: any, $f: any) => {\n data.cacheRule[index].$f = $f\n nextTick(() => {\n if (props.syncDisabled) {\n $f.disabled(props.disabled)\n }\n emit('itemMounted', $f, Object.keys(data.cacheRule).indexOf(index))\n })\n}\n\nonMounted(() => {\n data.loading = false\n})\n\nconst setValue = (key: any, value: any) => {\n const field = props.field\n if (field) {\n value = { [field]: _value(value) }\n }\n if (data.cacheValue[key] === JSON.stringify(field ? value[field] : value)) {\n return\n }\n cache(key, value)\n}\nconst addRule = (index: any, isEmit = false) => {\n const rule = props.formCreateInject.form.copyRules(props.rule || [])\n const options: any = props.options\n ? { ...props.options }\n : {\n submitBtn: false,\n resetBtn: false,\n }\n if (props.defaultValue) {\n if (!options.formData) options.formData = {}\n const defVal = deepCopy(props.defaultValue)\n extend(options.formData, props.field ? { [props.field]: defVal } : defVal)\n }\n props.parse && props.parse({ rule, options, index: data.sort.length })\n data.cacheRule[index] = { rule, options }\n if (isEmit) {\n nextTick(() => emit('add', rule, Object.keys(data.cacheRule).length - 1))\n }\n}\n\nconst removeRule = (index: any, isEmit = false) => {\n delete data.cacheRule[index]\n delete data.cacheValue[index]\n if (isEmit) {\n nextTick(() => emit('remove', index))\n }\n}\nconst add = () => {\n if (props.disabled || props.onBeforeAdd(props.modelValue) === false) {\n return\n }\n const value = [...props.modelValue]\n value.push(props.defaultValue ? deepCopy(props.defaultValue) : props.field ? null : {})\n input(value)\n collapseComponentData.modelValue = [value.length - 1]\n}\nconst del = (index: number, key: number) => {\n if (props.disabled || props.onBeforeRemove(props.modelValue, index) === false) {\n return\n }\n const value = [...props.modelValue]\n value.splice(index, 1)\n input(value)\n}\n\nconst emitEvent = (name: any, args: any, index: any) => {\n emit(name, ...args, data.cacheRule[index].$f, index)\n}\n\nconst expandRule = (n: any) => {\n for (let i = 0; i < n; i++) {\n // eslint-disable-next-line vue/no-mutating-props\n props.modelValue.push(props.field ? null : {})\n }\n}\n\nconst d = (props.expand || 0) - props.modelValue.length\nfor (let i = 0; i < props.modelValue.length; i++) {\n addRule(i)\n}\nif (d > 0) {\n expandRule(d)\n}\n</script>\n"],"names":["__MACROS_defineComponent","reactive","markRaw","watch","deepExtend","val","deepCopy","d","hasProperty","formData","nextTick","value","onMounted","extend"],"mappings":"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"}
@@ -22,7 +22,7 @@ const _hoisted_6 = /* @__PURE__ */ vue.createElementVNode(
22
22
  -1
23
23
  /* HOISTED */
24
24
  );
25
- const _hoisted_7 = { style: { "width": "100%", "display": "flex", "justify-content": "space-between" } };
25
+ const _hoisted_7 = { style: { "display": "flex", "justify-content": "space-between", "width": "100%" } };
26
26
  const __default__ = vue.defineComponent({
27
27
  name: "HotAreaContent"
28
28
  });
@@ -1 +1 @@
1
- {"version":3,"file":"hot-area-content.vue2.js","sources":["../../../../src/hot-area-input/src/component/hot-area-content.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'HotAreaContent',\n});\n</script>\n<template>\n <div class=\"hot-area-content\">\n <div class=\"hot-area-draggable\">\n <div\n v-if=\"hotData.background\"\n :style=\"{\n width: hotData.width + 'px',\n height: hotData.height + 'px',\n backgroundImage: 'url(' + hotData.background + ')',\n }\"\n style=\"background-size: 100% 100%\"\n @contextmenu.prevent\n >\n <vue3-draggable-resizable\n v-for=\"(item, key) in hotData.views\"\n :key=\"key\"\n ref=\"draggables\"\n v-model:h=\"item.css.height\"\n v-model:x=\"item.css.left\"\n v-model:y=\"item.css.top\"\n v-model:w=\"item.css.width\"\n :init-w=\"item.css.width\"\n :init-h=\"item.css.height\"\n :parent=\"true\"\n style=\"cursor: move\"\n :min-width=\"20\"\n :min-height=\"20\"\n @resizing=\"onResize\"\n @dragging=\"onDrag\"\n @mousedown=\"index = key\"\n >\n <div class=\"hot-item-content\" style=\"position: relative; width: 100%; height: 100%; background: #0003\">\n {{ key + 1 }}\n </div>\n </vue3-draggable-resizable>\n </div>\n <div v-else style=\"width: 500px; height: 500px\">\n <el-empty description=\"请上传图片\"></el-empty>\n </div>\n </div>\n <div class=\"hot-area-form\">\n <h3 style=\"margin-top: 0; font-size: 16px; font-weight: 500\">热区管理</h3>\n <el-form label-width=\"80px\" label-position=\"left\">\n <el-form-item label=\"背景图 \">\n <dk-image-input v-model=\"hotData.background\" />\n </el-form-item>\n <el-form-item v-for=\"(item, key) in hotData.views\" :key=\"key\" :label=\"'热区地址' + (key + 1)\">\n <div style=\"width: 100%; display: flex; justify-content: space-between\">\n <dk-url-input\n v-model=\"hotData.views[key].url\"\n placeholder=\"填写跳转地址\"\n style=\"width: 100%; margin-right: 5px\"\n />\n <el-button type=\"danger\" plain @click=\"delView(key)\">\n <dk-icon icon=\"Delete\"></dk-icon>\n </el-button>\n </div>\n </el-form-item>\n </el-form>\n <el-button :disabled=\"!hotData.background\" type=\"primary\" @click=\"addView()\">{{\n hotData.background ? '添加热区' : '请先上传图片'\n }}</el-button>\n </div>\n </div>\n</template>\n<script setup lang=\"ts\">\n// import Vue3DraggableResizable, { DraggableContainer } from 'vue3-draggable-resizable'\nimport { reactive, ref, watch, onMounted } from 'vue'\n\n\nconst props = defineProps({\n hotDataValue: {\n default: () => {\n return {\n views: [],\n width: 400,\n height: 400,\n background: null,\n }\n },\n type: Object,\n },\n})\nconst index = ref(0)\nconst hotData = reactive(props.hotDataValue)\nconst addView = () => {\n // 这里hotData可以能没有views,如果没有就添加上views\n if (!Array.isArray(hotData.views)) {\n hotData.views = []\n }\n hotData.views.push({\n css: {\n left: 0,\n top: 0,\n width: 80,\n height: 80,\n borderRadius: 0,\n borderColor: '#fff',\n },\n url: '',\n })\n}\n\nconst delView = (indexToDelete: any) => {\n if (indexToDelete >= 0 && indexToDelete < hotData.views.length) {\n hotData.views.splice(indexToDelete, 1)\n }\n}\n\nconst onDrag = (p: any) => {\n const css = hotData.views[index.value].css\n css.left = p.x\n css.top = p.y\n}\nconst onResize = (p: any) => {\n const css = hotData.views[index.value].css\n css.left = p.x\n css.top = p.y\n css.width = p.w\n css.height = p.h\n}\n\nonMounted(() => {\n resetSize()\n})\n\nwatch(\n () => hotData?.background,\n () => {\n resetSize()\n }\n)\n\nconst resetSize = () => {\n if (hotData.background) {\n getImageSize(hotData.background)\n .then((image: any) => {\n hotData.width = 500\n hotData.height = (image.height * 500) / image.width\n setTimeout(() => {\n // checkParentSize()\n }, 200)\n })\n .catch(() => {})\n }\n}\n\nconst getImageSize = (url: any) => {\n return new Promise(function (resolve, reject) {\n const image = new Image()\n image.onload = function () {\n resolve({\n width: image.width,\n height: image.height,\n })\n }\n image.onerror = function () {\n reject(new Error('error'))\n }\n image.src = url\n })\n}\n</script>\n"],"names":["__MACROS_defineComponent","ref","reactive","onMounted","watch"],"mappings":"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"}
1
+ {"version":3,"file":"hot-area-content.vue2.js","sources":["../../../../src/hot-area-input/src/component/hot-area-content.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'HotAreaContent',\n});\n</script>\n<template>\n <div class=\"hot-area-content\">\n <div class=\"hot-area-draggable\">\n <div\n v-if=\"hotData.background\"\n :style=\"{\n width: hotData.width + 'px',\n height: hotData.height + 'px',\n backgroundImage: 'url(' + hotData.background + ')',\n }\"\n style=\"background-size: 100% 100%\"\n @contextmenu.prevent\n >\n <vue3-draggable-resizable\n v-for=\"(item, key) in hotData.views\"\n :key=\"key\"\n ref=\"draggables\"\n v-model:h=\"item.css.height\"\n v-model:x=\"item.css.left\"\n v-model:y=\"item.css.top\"\n v-model:w=\"item.css.width\"\n :init-w=\"item.css.width\"\n :init-h=\"item.css.height\"\n :parent=\"true\"\n style=\"cursor: move\"\n :min-width=\"20\"\n :min-height=\"20\"\n @resizing=\"onResize\"\n @dragging=\"onDrag\"\n @mousedown=\"index = key\"\n >\n <div class=\"hot-item-content\" style=\"position: relative; width: 100%; height: 100%; background: #0003\">\n {{ key + 1 }}\n </div>\n </vue3-draggable-resizable>\n </div>\n <div v-else style=\"width: 500px; height: 500px\">\n <el-empty description=\"请上传图片\"></el-empty>\n </div>\n </div>\n <div class=\"hot-area-form\">\n <h3 style=\"margin-top: 0; font-size: 16px; font-weight: 500\">热区管理</h3>\n <el-form label-width=\"80px\" label-position=\"left\">\n <el-form-item label=\"背景图 \">\n <dk-image-input v-model=\"hotData.background\" />\n </el-form-item>\n <el-form-item v-for=\"(item, key) in hotData.views\" :key=\"key\" :label=\"'热区地址' + (key + 1)\">\n <div style=\"display: flex; justify-content: space-between; width: 100%\">\n <dk-url-input\n v-model=\"hotData.views[key].url\"\n placeholder=\"填写跳转地址\"\n style=\"width: 100%; margin-right: 5px\"\n />\n <el-button type=\"danger\" plain @click=\"delView(key)\">\n <dk-icon icon=\"Delete\"></dk-icon>\n </el-button>\n </div>\n </el-form-item>\n </el-form>\n <el-button :disabled=\"!hotData.background\" type=\"primary\" @click=\"addView()\">{{\n hotData.background ? '添加热区' : '请先上传图片'\n }}</el-button>\n </div>\n </div>\n</template>\n<script setup lang=\"ts\">\n// import Vue3DraggableResizable, { DraggableContainer } from 'vue3-draggable-resizable'\nimport { reactive, ref, watch, onMounted } from 'vue'\n\n\nconst props = defineProps({\n hotDataValue: {\n default: () => {\n return {\n views: [],\n width: 400,\n height: 400,\n background: null,\n }\n },\n type: Object,\n },\n})\nconst index = ref(0)\nconst hotData = reactive(props.hotDataValue)\nconst addView = () => {\n // 这里hotData可以能没有views,如果没有就添加上views\n if (!Array.isArray(hotData.views)) {\n hotData.views = []\n }\n hotData.views.push({\n css: {\n left: 0,\n top: 0,\n width: 80,\n height: 80,\n borderRadius: 0,\n borderColor: '#fff',\n },\n url: '',\n })\n}\n\nconst delView = (indexToDelete: any) => {\n if (indexToDelete >= 0 && indexToDelete < hotData.views.length) {\n hotData.views.splice(indexToDelete, 1)\n }\n}\n\nconst onDrag = (p: any) => {\n const css = hotData.views[index.value].css\n css.left = p.x\n css.top = p.y\n}\nconst onResize = (p: any) => {\n const css = hotData.views[index.value].css\n css.left = p.x\n css.top = p.y\n css.width = p.w\n css.height = p.h\n}\n\nonMounted(() => {\n resetSize()\n})\n\nwatch(\n () => hotData?.background,\n () => {\n resetSize()\n }\n)\n\nconst resetSize = () => {\n if (hotData.background) {\n getImageSize(hotData.background)\n .then((image: any) => {\n hotData.width = 500\n hotData.height = (image.height * 500) / image.width\n setTimeout(() => {\n // checkParentSize()\n }, 200)\n })\n .catch(() => {})\n }\n}\n\nconst getImageSize = (url: any) => {\n return new Promise(function (resolve, reject) {\n const image = new Image()\n image.onload = function () {\n resolve({\n width: image.width,\n height: image.height,\n })\n }\n image.onerror = function () {\n reject(new Error('error'))\n }\n image.src = url\n })\n}\n</script>\n"],"names":["__MACROS_defineComponent","ref","reactive","onMounted","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAA6B,cAAAA,mBAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,gBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;;;;AAqFD,IAAM,MAAA,KAAA,GAAQC,QAAI,CAAC,CAAA,CAAA;AACnB,IAAM,MAAA,OAAA,GAAUC,YAAS,CAAA,KAAA,CAAM,YAAY,CAAA,CAAA;AAC3C,IAAA,MAAM,UAAU,MAAM;AAEpB,MAAA,IAAI,CAAC,KAAA,CAAM,OAAQ,CAAA,OAAA,CAAQ,KAAK,CAAG,EAAA;AACjC,QAAA,OAAA,CAAQ,QAAQ,EAAC,CAAA;AAAA,OACnB;AACA,MAAA,OAAA,CAAQ,MAAM,IAAK,CAAA;AAAA,QACjB,GAAK,EAAA;AAAA,UACH,IAAM,EAAA,CAAA;AAAA,UACN,GAAK,EAAA,CAAA;AAAA,UACL,KAAO,EAAA,EAAA;AAAA,UACP,MAAQ,EAAA,EAAA;AAAA,UACR,YAAc,EAAA,CAAA;AAAA,UACd,WAAa,EAAA,MAAA;AAAA,SACf;AAAA,QACA,GAAK,EAAA,EAAA;AAAA,OACN,CAAA,CAAA;AAAA,KACH,CAAA;AAEA,IAAM,MAAA,OAAA,GAAU,CAAC,aAAuB,KAAA;AACtC,MAAA,IAAI,aAAiB,IAAA,CAAA,IAAK,aAAgB,GAAA,OAAA,CAAQ,MAAM,MAAQ,EAAA;AAC9D,QAAQ,OAAA,CAAA,KAAA,CAAM,MAAO,CAAA,aAAA,EAAe,CAAC,CAAA,CAAA;AAAA,OACvC;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,MAAA,GAAS,CAAC,CAAW,KAAA;AACzB,MAAA,MAAM,GAAM,GAAA,OAAA,CAAQ,KAAM,CAAA,KAAA,CAAM,KAAK,CAAE,CAAA,GAAA,CAAA;AACvC,MAAA,GAAA,CAAI,OAAO,CAAE,CAAA,CAAA,CAAA;AACb,MAAA,GAAA,CAAI,MAAM,CAAE,CAAA,CAAA,CAAA;AAAA,KACd,CAAA;AACA,IAAM,MAAA,QAAA,GAAW,CAAC,CAAW,KAAA;AAC3B,MAAA,MAAM,GAAM,GAAA,OAAA,CAAQ,KAAM,CAAA,KAAA,CAAM,KAAK,CAAE,CAAA,GAAA,CAAA;AACvC,MAAA,GAAA,CAAI,OAAO,CAAE,CAAA,CAAA,CAAA;AACb,MAAA,GAAA,CAAI,MAAM,CAAE,CAAA,CAAA,CAAA;AACZ,MAAA,GAAA,CAAI,QAAQ,CAAE,CAAA,CAAA,CAAA;AACd,MAAA,GAAA,CAAI,SAAS,CAAE,CAAA,CAAA,CAAA;AAAA,KACjB,CAAA;AAEA,IAAAC,aAAA,CAAU,MAAM;AACd,MAAU,SAAA,EAAA,CAAA;AAAA,KACX,CAAA,CAAA;AAED,IAAAC,SAAA;AAAA,MACE,MAAM,OAAS,EAAA,UAAA;AAAA,MACf,MAAM;AACJ,QAAU,SAAA,EAAA,CAAA;AAAA,OACZ;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,YAAY,MAAM;AACtB,MAAA,IAAI,QAAQ,UAAY,EAAA;AACtB,QAAA,YAAA,CAAa,OAAQ,CAAA,UAAU,CAC5B,CAAA,IAAA,CAAK,CAAC,KAAe,KAAA;AACpB,UAAA,OAAA,CAAQ,KAAQ,GAAA,GAAA,CAAA;AAChB,UAAA,OAAA,CAAQ,MAAU,GAAA,KAAA,CAAM,MAAS,GAAA,GAAA,GAAO,KAAM,CAAA,KAAA,CAAA;AAC9C,UAAA,UAAA,CAAW,MAAM;AAAA,aAEd,GAAG,CAAA,CAAA;AAAA,SACP,CACA,CAAA,KAAA,CAAM,MAAM;AAAA,SAAE,CAAA,CAAA;AAAA,OACnB;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,CAAC,GAAa,KAAA;AACjC,MAAA,OAAO,IAAI,OAAA,CAAQ,SAAU,OAAA,EAAS,MAAQ,EAAA;AAC5C,QAAM,MAAA,KAAA,GAAQ,IAAI,KAAM,EAAA,CAAA;AACxB,QAAA,KAAA,CAAM,SAAS,WAAY;AACzB,UAAQ,OAAA,CAAA;AAAA,YACN,OAAO,KAAM,CAAA,KAAA;AAAA,YACb,QAAQ,KAAM,CAAA,MAAA;AAAA,WACf,CAAA,CAAA;AAAA,SACH,CAAA;AACA,QAAA,KAAA,CAAM,UAAU,WAAY;AAC1B,UAAO,MAAA,CAAA,IAAI,KAAM,CAAA,OAAO,CAAC,CAAA,CAAA;AAAA,SAC3B,CAAA;AACA,QAAA,KAAA,CAAM,GAAM,GAAA,GAAA,CAAA;AAAA,OACb,CAAA,CAAA;AAAA,KACH,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -28,7 +28,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
28
28
  key: 0,
29
29
  border: false,
30
30
  "column-num": $props.columnNum,
31
- class: "min-h-30px dk-app-gold-grid"
31
+ class: "min-h-30px dk-app-gold-grid",
32
+ style: {"--van-grid-item-content-background":"none"}
32
33
  }, {
33
34
  default: vue.withCtx(() => [
34
35
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList($props.list, (item, key) => {
@@ -1 +1 @@
1
- {"version":3,"file":"DkMinGrid.vue.js","sources":["../../../../../src/page-diy/src/views/min/DkMinGrid.vue"],"sourcesContent":["<template>\n <van-grid v-if=\"list?.length > 0\" :border=\"false\" :column-num=\"columnNum\" class=\"min-h-30px dk-app-gold-grid\">\n <van-grid-item v-for=\"(item, key) in list\" :key=\"key\">\n <img v-if=\"item.image\" :src=\"item.image\" alt=\"\" :style=\"imageStyle\" />\n <div\n v-else\n class=\"flex justify-center items-center\"\n style=\"display: flex; background: #f3f5f7\"\n :style=\"imageStyle\"\n >\n <dk-icon icon=\"PictureFilled\" color=\"#BBBFC8\"></dk-icon>\n </div>\n <span :style=\"{ ...fontStyle }\">{{ item.title }}</span>\n </van-grid-item>\n </van-grid>\n <el-empty v-else></el-empty>\n</template>\n<script>\nexport default {\n name: 'DkMinGrid',\n props: ['list', 'columnNum', 'imageStyle', 'useImageStyle', 'fontStyle'],\n data: () => {\n return {\n value: '',\n }\n },\n}\n</script>\n"],"names":["_createBlock","_openBlock","_createElementBlock","_Fragment","_renderList","_normalizeStyle","_createVNode","_createElementVNode","_toDisplayString"],"mappings":";;;;;;;AAkBA,MAAK,SAAU,GAAA;AACb,EAAA,IAAI,EAAE,WAAW;AACjB,EAAA,KAAK,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,CAAC;AACxE,EAAA,IAAI,EAAE,MAAM;AACV,IAAA,OAAO;AACL,MAAA,KAAK,EAAE,EAAE;AACX,KAAA;GACD;AACH,EAAA;;;;;;;;;;AAzBkB,EAAA,OAAA,CAAA,MAAA,CAAA,IAAI,EAAE,MAAM,GAAA,CAAA;wBAA5BA,eAaW,CAAA,mBAAA,EAAA;;AAbwB,QAAA,MAAM,EAAE,KAAK;AAAG,QAAA,YAAU,EAAE,MAAS,CAAA,SAAA;AAAE,QAAA,KAAK,EAAC,6BAA6B;;6BAC5F,MAA2B;AAA1C,WAAAC,aAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,CAWgBC,YAXqB,EAAA,IAAA,EAAAC,cAAA,CAAA,MAAA,CAAA,IAAI,EAAlB,CAAA,IAAI,EAAE,GAAG,KAAA;qCAAhCJ,eAWgB,CAAA,wBAAA,EAAA,EAX4B,GAAG,EAAE,GAAG,EAAA,EAAA;mCAClD,MAAsE;AAA3D,gBAAA,CAAA,IAAI,CAAC,KAAK;sCAArBE,sBAAsE,CAAA,KAAA,EAAA;;sBAA9C,GAAG,EAAE,IAAI,CAAC,KAAK;AAAE,sBAAA,GAAG,EAAC,EAAE;AAAE,sBAAA,KAAK,qBAAE,MAAU,CAAA,UAAA,CAAA;;sCAClEA,sBAOM,CAAA,KAAA,EAAA;;AALJ,sBAAA,KAAK,EAAC,kCAAkC;sBACxC,KAA0C,EAAAG,kBAAA,CAAA,CAA1C,CAA0C,SAAA,CAAA,MAAA,CAAA,YAAA,CAAA,SAAA,CAAA,EAClC,MAAU,CAAA,UAAA,CAAA,CAAA;;sBAElBC,eAAwD,CAAA,kBAAA,EAAA;AAA/C,wBAAA,IAAI,EAAC,eAAe;AAAC,wBAAA,KAAK,EAAC,SAAS;;;gBAE/CC,sBAAuD,CAAA,MAAA,EAAA;AAAhD,kBAAA,KAAK,0BAAO,MAAS,CAAA,SAAA,EAAA,CAAA;AAAO,iBAAA,EAAAC,mBAAA,CAAA,IAAI,CAAC,KAAK,CAAA,EAAA,CAAA,mBAAA;;;;;;;;wBAGjDR,eAA4B,CAAA,mBAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;;;;;"}
1
+ {"version":3,"file":"DkMinGrid.vue.js","sources":["../../../../../src/page-diy/src/views/min/DkMinGrid.vue"],"sourcesContent":["<template>\n <van-grid\n v-if=\"list?.length > 0\"\n :border=\"false\"\n :column-num=\"columnNum\"\n class=\"min-h-30px dk-app-gold-grid\"\n style=\"--van-grid-item-content-background: none\"\n >\n <van-grid-item v-for=\"(item, key) in list\" :key=\"key\">\n <img v-if=\"item.image\" :src=\"item.image\" alt=\"\" :style=\"imageStyle\" />\n <div\n v-else\n class=\"flex justify-center items-center\"\n style=\"display: flex; background: #f3f5f7\"\n :style=\"imageStyle\"\n >\n <dk-icon icon=\"PictureFilled\" color=\"#BBBFC8\"></dk-icon>\n </div>\n <span :style=\"{ ...fontStyle }\">{{ item.title }}</span>\n </van-grid-item>\n </van-grid>\n <el-empty v-else></el-empty>\n</template>\n<script>\nexport default {\n name: 'DkMinGrid',\n props: ['list', 'columnNum', 'imageStyle', 'useImageStyle', 'fontStyle'],\n data: () => {\n return {\n value: '',\n }\n },\n}\n</script>\n"],"names":["_createBlock","_openBlock","_createElementBlock","_Fragment","_renderList","_normalizeStyle","_createVNode","_createElementVNode","_toDisplayString"],"mappings":";;;;;;;AAwBA,MAAK,SAAU,GAAA;AACb,EAAA,IAAI,EAAE,WAAW;AACjB,EAAA,KAAK,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,CAAC;AACxE,EAAA,IAAI,EAAE,MAAM;AACV,IAAA,OAAO;AACL,MAAA,KAAK,EAAE,EAAE;AACX,KAAA;GACD;AACH,EAAA;;;;;;;;;;AA9BU,EAAA,OAAA,CAAA,MAAA,CAAA,IAAI,EAAE,MAAM,GAAA,CAAA;wBADpBA,eAmBW,CAAA,mBAAA,EAAA;;AAjBR,QAAA,MAAM,EAAE,KAAK;AACb,QAAA,YAAU,EAAE,MAAS,CAAA,SAAA;AACtB,QAAA,KAAK,EAAC,6BAA6B;AACnC,QAAA,KAAgD,EAAhD,CAAgD,oCAAA,CAAA,MAAA,CAAA;;6BAEjC,MAA2B;AAA1C,WAAAC,aAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,CAWgBC,YAXqB,EAAA,IAAA,EAAAC,cAAA,CAAA,MAAA,CAAA,IAAI,EAAlB,CAAA,IAAI,EAAE,GAAG,KAAA;qCAAhCJ,eAWgB,CAAA,wBAAA,EAAA,EAX4B,GAAG,EAAE,GAAG,EAAA,EAAA;mCAClD,MAAsE;AAA3D,gBAAA,CAAA,IAAI,CAAC,KAAK;sCAArBE,sBAAsE,CAAA,KAAA,EAAA;;sBAA9C,GAAG,EAAE,IAAI,CAAC,KAAK;AAAE,sBAAA,GAAG,EAAC,EAAE;AAAE,sBAAA,KAAK,qBAAE,MAAU,CAAA,UAAA,CAAA;;sCAClEA,sBAOM,CAAA,KAAA,EAAA;;AALJ,sBAAA,KAAK,EAAC,kCAAkC;sBACxC,KAA0C,EAAAG,kBAAA,CAAA,CAA1C,CAA0C,SAAA,CAAA,MAAA,CAAA,YAAA,CAAA,SAAA,CAAA,EAClC,MAAU,CAAA,UAAA,CAAA,CAAA;;sBAElBC,eAAwD,CAAA,kBAAA,EAAA;AAA/C,wBAAA,IAAI,EAAC,eAAe;AAAC,wBAAA,KAAK,EAAC,SAAS;;;gBAE/CC,sBAAuD,CAAA,MAAA,EAAA;AAAhD,kBAAA,KAAK,0BAAO,MAAS,CAAA,SAAA,EAAA,CAAA;AAAO,iBAAA,EAAAC,mBAAA,CAAA,IAAI,CAAC,KAAK,CAAA,EAAA,CAAA,mBAAA;;;;;;;;wBAGjDR,eAA4B,CAAA,mBAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;;;;;"}
@@ -92,7 +92,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
92
92
  const height = vue.computed(() => {
93
93
  if (props.height === "auto") {
94
94
  const h = width.value / 1.8;
95
- return h > 300 ? 300 : h;
95
+ return h > 200 ? 200 : h;
96
96
  } else {
97
97
  return props.height;
98
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"style-box-input.vue2.js","sources":["../../../src/style-box-input/src/style-box-input.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkStyleBoxInput',\n});\n</script>\n<template>\n <div class=\"dk-style-box-input\">\n <div class=\"position-line\" :style=\"positionStyle\"></div>\n <div class=\"header\">\n <label class=\"items-center\">\n 内外边距 | 高宽\n <el-popover ref=\"popover\" placement=\"bottom\" title=\"说明\" :width=\"280\" trigger=\"hover\" :content=\"props.help\">\n <template #reference>\n <dk-icon icon=\"QuestionFilled\" class=\"m-l-5px vertical-text-top\"></dk-icon>\n </template>\n </el-popover>\n </label>\n <!-- <div class=\"float-right cursor-pointer\">-->\n <!-- <div class=\"name-header-operations\">-->\n <!-- <el-tooltip class=\"box-item\" effect=\"dark\" content=\"重置高宽\" placement=\"top-start\">-->\n <!-- <dk-icon icon=\"Refresh\" color=\"#303133\" @click=\"onRefresh('widthHeight')\"></dk-icon>-->\n <!-- </el-tooltip>-->\n <!-- </div>-->\n <!-- <div class=\"name-header-operations\">-->\n <!-- <el-tooltip class=\"box-item\" effect=\"dark\" content=\"重置内边距\" placement=\"top-start\">-->\n <!-- <dk-icon icon=\"Refresh\" color=\"var(&#45;&#45;el-color-success)\" @click=\"onRefresh('padding')\"></dk-icon>-->\n <!-- </el-tooltip>-->\n <!-- </div>-->\n <!-- <div class=\"name-header-operations\">-->\n <!-- <el-tooltip class=\"box-item\" effect=\"dark\" content=\"重置外边距\" placement=\"top-start\">-->\n <!-- <dk-icon icon=\"Refresh\" color=\"var(&#45;&#45;el-color-warning)\" @click=\"onRefresh('margin')\"></dk-icon>-->\n <!-- </el-tooltip>-->\n <!-- </div>-->\n <!-- </div>-->\n <div ref=\"box\" tabindex=\"0\" class=\"wrapper\" style=\"margin-top: 10px\" :style=\"{ height: height + 'px' }\">\n <div\n class=\"thumnail margin\"\n :class=\"moves.margin ? 'thumnail-heightlight' : ''\"\n @mousemove=\"onMouseMove('margin', 'move', $event)\"\n @mouseleave=\"onMouseMove('margin', 'leave', $event)\"\n >\n <!--外边距 Margin-->\n <div>\n <div v-for=\"(item, key) in margins\" :key=\"key\">\n <span\n :title=\"item.title\"\n :class=\"`anchor-tip-${item.position} value-indicator`\"\n @dblclick=\"onDblclick(item.value, key)\"\n >\n <span> {{ getValue(styles[item.value]) }}</span>\n </span>\n <input\n ref=\"inputField\"\n v-model=\"styles[item.value]\"\n :class=\"'input-box anchor-tip-' + item.position + (showStyles[item.value] ? ' show' : '')\"\n @blur=\"onBlur(item.value)\"\n />\n <svg\n :width=\"item.svg.width\"\n :height=\"item.svg.height\"\n :viewBox=\"item.svg.viewBox\"\n preserveAspectRatio=\"none\"\n :data-link-anchor=\"item.value\"\n :style=\"item.svg.style\"\n class=\"esm-modal-svg\"\n v-html=\"item.svg.content\"\n ></svg>\n </div>\n </div>\n <div style=\"position: absolute; display: none; width: 100%; height: 100%\"></div>\n <div class=\"anchor-wrapper\">\n <div\n v-for=\"(item, key) in ['left', 'right', 'top', 'bottom']\"\n :key=\"key\"\n class=\"anchor\"\n :class=\"'anchor-' + item\"\n @mousemove=\"handleMouseMove\"\n @mousedown=\"handleMouseDown('margin', item, $event)\"\n @mouseup=\"handleMouseUp\"\n ></div>\n </div>\n <span class=\"title\"> 外边距 </span>\n <div class=\"tools\">\n <el-tooltip :show-after=\"1000\" class=\"box-item\" effect=\"dark\" content=\"联动\" placement=\"top-start\">\n <dk-icon\n style=\"margin-right: 5px\"\n icon=\"Connection\"\n :color=\"bind.margin ? '#f00' : '#303133'\"\n @click=\"onBind('margin')\"\n ></dk-icon>\n </el-tooltip>\n <el-tooltip :show-after=\"1000\" class=\"box-item\" effect=\"dark\" content=\"重置外边距\" placement=\"top-start\">\n <dk-icon icon=\"Refresh\" color=\"#303133\" @click=\"onRefresh('margin')\"></dk-icon>\n </el-tooltip>\n </div>\n <!--外边距 Margin END-->\n\n <!--内边距 Padding-->\n <div class=\"thumnail border\">\n <div\n class=\"thumnail padding\"\n :class=\"moves.padding ? 'thumnail-heightlight' : ''\"\n @mousemove=\"onMouseMove('padding', 'move', $event)\"\n @mouseleave=\"onMouseMove('padding', 'leave', $event)\"\n >\n <div>\n <div v-for=\"(item, key) in paddings\" :key=\"key\">\n <span\n :title=\"item.title\"\n :class=\"`anchor-tip-${item.position} value-indicator`\"\n @dblclick=\"onDblclick(item.value, key + 4)\"\n >\n <span> {{ getValue(styles[item.value]) }}</span>\n </span>\n <input\n ref=\"inputField\"\n v-model=\"styles[item.value]\"\n :class=\"'input-box anchor-tip-' + item.position + (showStyles[item.value] ? ' show' : '')\"\n @blur=\"onBlur(item.value)\"\n />\n <svg\n :width=\"item.svg.width\"\n :height=\"item.svg.height\"\n :viewBox=\"item.svg.viewBox\"\n preserveAspectRatio=\"none\"\n :data-link-anchor=\"item.value\"\n :style=\"item.svg.style\"\n class=\"esm-modal-svg\"\n v-html=\"item.svg.content\"\n ></svg>\n </div>\n </div>\n <div class=\"anchor-wrapper\">\n <div\n v-for=\"(item, key) in ['left', 'right', 'top', 'bottom']\"\n :key=\"key\"\n class=\"anchor\"\n :class=\"'anchor-' + item\"\n @mousemove=\"handleMouseMove\"\n @mousedown=\"handleMouseDown('padding', item, $event)\"\n @mouseup=\"handleMouseUp\"\n ></div>\n </div>\n <span class=\"title\"> 内边距 </span>\n <div class=\"tools\">\n <el-tooltip :show-after=\"1000\" class=\"box-item\" effect=\"dark\" content=\"联动\" placement=\"top-start\">\n <dk-icon\n style=\"margin-right: 5px\"\n icon=\"Connection\"\n :color=\"bind.padding ? '#f00' : '#303133'\"\n @click=\"onBind('padding')\"\n ></dk-icon>\n </el-tooltip>\n <el-tooltip\n :show-after=\"1000\"\n class=\"box-item\"\n effect=\"dark\"\n content=\"重置内边距\"\n placement=\"top-start\"\n >\n <dk-icon icon=\"Refresh\" color=\"#303133\" @click=\"onRefresh('padding')\"></dk-icon>\n </el-tooltip>\n </div>\n <!--内边距 END-->\n <div\n class=\"thumnail width-height\"\n :class=\"moves.widthHeight ? 'thumnail-heightlight' : ''\"\n @mousemove=\"onMouseMove('widthHeight', 'move', $event)\"\n @mouseleave=\"onMouseMove('widthHeight', 'leave', $event)\"\n >\n <span class=\"title\">\n <span class=\"content-unit left-0\" @dblclick=\"onDblclick('width', 9)\">\n <em>{{ getValue(styles['width']) }}</em>\n </span>\n <input\n ref=\"inputWidth\"\n v-model=\"styles.width\"\n class=\"input-box absolute left-5% top-10px\"\n :class=\"showStyles['width'] ? ' show' : ''\"\n @blur=\"onBlur('width')\"\n />\n <span> x </span>\n <span class=\"content-unit right-0\" @dblclick=\"onDblclick('height', 9)\">\n <em>{{ getValue(styles['height']) }}</em>\n </span>\n <input\n ref=\"inputHeight\"\n v-model=\"styles.height\"\n class=\"input-box absolute right-5% top-10px\"\n :class=\"showStyles['height'] ? ' show' : ''\"\n @blur=\"onBlur('height')\"\n />\n </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { styleBoxInputProps } from './props'\nimport { nextTick, reactive, ref, watch, computed } from 'vue'\nimport { margins, paddings } from './html'\nimport { upper } from '@vipl520/utils'\nimport { useElementSize } from '@vueuse/core'\n\n\n\nconst props = defineProps(styleBoxInputProps)\n\nconst moves: any = reactive({\n margin: false,\n padding: false,\n widthHeight: false,\n})\n\nconst inputField = ref()\nconst inputWidth = ref()\nconst inputHeight = ref()\n\nconst styles: any = reactive({\n marginLeft: props.modelValue.marginLeft || '',\n marginRight: props.modelValue.marginRight || '',\n marginTop: props.modelValue.marginTop || '',\n marginBottom: props.modelValue.marginBottom || '',\n paddingLeft: props.modelValue.paddingLeft || '',\n paddingRight: props.modelValue.paddingRight || '',\n paddingTop: props.modelValue.paddingTop || '',\n paddingBottom: props.modelValue.paddingBottom || '',\n width: props.modelValue.width || '',\n height: props.modelValue.height || '',\n})\nconst emit = defineEmits(['update:modelValue', 'change'])\n\nconst box: any = ref(null)\nconst { width } = useElementSize(box) // 当前组件宽度\nconst bind: any = reactive({\n padding: false,\n margin: false,\n size: false,\n})\nconst height: any = computed(() => {\n if (props.height === 'auto') {\n const h = width.value / 1.8\n return h > 300 ? 300 : h\n } else {\n return props.height\n }\n})\n\nwatch(\n () => props.modelValue,\n (newVal, oldVal) => {\n const propertiesToWatch = [\n 'marginLeft',\n 'marginRight',\n 'marginTop',\n 'marginBottom',\n 'paddingLeft',\n 'paddingRight',\n 'paddingTop',\n 'paddingBottom',\n 'width',\n 'height',\n ]\n propertiesToWatch.forEach((property) => {\n if (newVal[property] !== oldVal[property]) {\n styles[property] = newVal[property] || ''\n }\n })\n },\n { deep: true }\n)\n\nwatch(styles, () => {\n // 过滤 styles 中值为''\n const _styles = Object.keys(styles).reduce((acc: any, key) => {\n if (styles[key] !== '') {\n acc[key] = styles[key]\n }\n return acc\n }, {})\n emit('update:modelValue', _styles)\n emit('change', _styles)\n})\n\nconst showStyles: any = reactive({\n marginLeft: false,\n marginRight: false,\n marginTop: false,\n marginBottom: false,\n paddingLeft: false,\n paddingRight: false,\n paddingTop: false,\n paddingBottom: false,\n width: false,\n height: false,\n})\n\nconst dragging = ref(false)\nconst startPosition: any = reactive({\n x: 0,\n y: 0,\n})\n\nconst trackMouseBound: any = ref(null)\nconst stopChangeBound: any = ref(null)\nconst dragPosition = reactive({\n type: '',\n position: '',\n})\nconst positionStyle: any = reactive({\n display: 'none',\n width: '0px',\n height: '0px',\n left: '0px',\n top: '0px',\n})\n\nconst handleMouseMove = (event: any) => {\n // 处理鼠标移动事件\n if (!dragging.value) return\n\n const p = dragPosition.position\n const type = dragPosition.type\n const value = type + upper(p)\n\n const updateStyle = (axis: 'x' | 'y', position: 'top' | 'bottom' | 'left' | 'right') => {\n const clientAxis = axis === 'x' ? 'clientX' : 'clientY'\n positionStyle[position] = event[clientAxis] + 'px'\n\n let difference = event[clientAxis] - startPosition[axis]\n if (p === 'top' || p === 'left') {\n difference = -difference\n }\n styles[value] = (parseInt(styles[value]) || 0) + difference + 'px'\n\n if (bind[type]) {\n styles[type + 'Top'] = styles[value]\n styles[type + 'Bottom'] = styles[value]\n styles[type + 'Left'] = styles[value]\n styles[type + 'Right'] = styles[value]\n }\n startPosition[axis] = event[clientAxis]\n }\n\n if (p === 'left' || p === 'right') {\n // 说明是左右移动\n updateStyle('x', 'left')\n } else if (p === 'top' || p === 'bottom') {\n updateStyle('y', 'top')\n }\n}\n\nconst handleMouseDown = (type: string, position: string, event: any) => {\n // 处理鼠标按下事件\n Object.assign(dragPosition, { position, type })\n trackMouseBound.value = handleMouseMove.bind(event)\n document.addEventListener('mousemove', trackMouseBound.value)\n stopChangeBound.value = handleMouseUp.bind(event)\n document.addEventListener('mouseup', stopChangeBound.value)\n dragging.value = true\n\n // const height = props.height\n const wrapperElement: any = document.querySelector('.wrapper')\n const width = wrapperElement ? wrapperElement.offsetWidth : 0\n const multiples: any = {\n margin: 0.9,\n padding: 0.9 * 0.7,\n }\n\n const { clientX, clientY } = event\n\n const setCursorAndDimensions = (cursor: string, left: string, top: string, width: string, height: string) => {\n document.body.style.cursor = cursor\n Object.assign(positionStyle, { left, top, width, height, display: 'block' })\n }\n\n startPosition.x = clientX\n startPosition.y = clientY\n\n if (position === 'left' || position === 'right') {\n setCursorAndDimensions(\n 'ew-resize',\n clientX + 'px',\n clientY - height.value * 0.5 * multiples[type] + 'px',\n '0.1px',\n height.value * multiples[type] + 'px'\n )\n } else {\n setCursorAndDimensions(\n 'ns-resize',\n clientX - width * 0.5 * multiples[type] + 'px',\n clientY + 'px',\n width * multiples[type] + 'px',\n '0.1px'\n )\n }\n}\n\nconst handleMouseUp = () => {\n // 处理鼠标抬起事件\n document.removeEventListener('mousemove', trackMouseBound.value)\n document.removeEventListener('mouseup', stopChangeBound.value)\n dragging.value = false\n positionStyle.display = 'none'\n document.body.style.cursor = 'default'\n startPosition.x = null\n startPosition.y = null\n}\n\nconst onMouseMove = (value: string, type: string = 'move', event: any) => {\n if (!dragging.value) {\n event.stopPropagation()\n }\n if (type !== 'move') {\n moves[value] = false\n } else {\n // 其他的为false\n Object.keys(moves).forEach((key) => {\n if (key !== value) {\n moves[key] = false\n }\n })\n // 当前的为true\n moves[value] = true\n }\n}\n\nconst onDblclick = (value: any, key: number) => {\n showStyles[value] = true\n nextTick(() => {\n if (value === 'width') {\n inputWidth.value.focus()\n } else if (value === 'height') {\n inputHeight.value.focus()\n } else {\n inputField.value[key].focus()\n }\n })\n}\n\nconst getValue = (value: any) => {\n // 判断value结尾是否存在px、vh、%、rem等\n if (value === 'auto') {\n return value\n }\n if (value === '0' || value === 0) {\n return 0\n }\n if (value === '') {\n return '-'\n }\n return value\n}\n\nconst onBlur = (value: any) => {\n showStyles[value] = false\n // styles[value] 这是一个css的值,用户会自己填写,内容不确定,但是我希望是:数字+单位,单位为:px/rem/%/vh这些,如果不是的话,则默认为px\n if (styles[value] === '' || styles[value] === 'auto') {\n return\n }\n const validValueRegex = /^(\\d*\\.?\\d+)(px|rem|%|vh)$/\n // 检查value是否匹配有效单位,如果不匹配则默认为px\n if (!validValueRegex.test(styles[value])) {\n const number = parseInt(styles[value])\n if (isNaN(number)) {\n styles[value] = ''\n } else {\n styles[value] = number + 'px'\n if (value.indexOf('padding') == 0 && bind.padding) {\n styles.paddingTop = styles[value]\n styles.paddingRight = styles[value]\n styles.paddingBottom = styles[value]\n styles.paddingLeft = styles[value]\n }\n if (value.indexOf('margin') == 0 && bind.padding) {\n styles.marginTop = styles[value]\n styles.marginRight = styles[value]\n styles.marginBottom = styles[value]\n styles.marginLeft = styles[value]\n }\n }\n }\n}\n\nconst onRefresh = (type: string) => {\n if (type === 'widthHeight') {\n styles.width = ''\n styles.height = ''\n } else if (type === 'margin') {\n styles.marginLeft = ''\n styles.marginRight = ''\n styles.marginTop = ''\n styles.marginBottom = ''\n } else if (type === 'padding') {\n styles.paddingLeft = ''\n styles.paddingRight = ''\n styles.paddingTop = ''\n styles.paddingBottom = ''\n }\n}\n\nconst onBind = (type: string) => {\n bind[type] = !bind[type]\n}\n</script>\n"],"names":["__MACROS_defineComponent","reactive","ref","useElementSize","computed","watch","upper","width","height","nextTick"],"mappings":"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"}
1
+ {"version":3,"file":"style-box-input.vue2.js","sources":["../../../src/style-box-input/src/style-box-input.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkStyleBoxInput',\n});\n</script>\n<template>\n <div class=\"dk-style-box-input\">\n <div class=\"position-line\" :style=\"positionStyle\"></div>\n <div class=\"header\">\n <label class=\"items-center\">\n 内外边距 | 高宽\n <el-popover ref=\"popover\" placement=\"bottom\" title=\"说明\" :width=\"280\" trigger=\"hover\" :content=\"props.help\">\n <template #reference>\n <dk-icon icon=\"QuestionFilled\" class=\"m-l-5px vertical-text-top\"></dk-icon>\n </template>\n </el-popover>\n </label>\n <!-- <div class=\"float-right cursor-pointer\">-->\n <!-- <div class=\"name-header-operations\">-->\n <!-- <el-tooltip class=\"box-item\" effect=\"dark\" content=\"重置高宽\" placement=\"top-start\">-->\n <!-- <dk-icon icon=\"Refresh\" color=\"#303133\" @click=\"onRefresh('widthHeight')\"></dk-icon>-->\n <!-- </el-tooltip>-->\n <!-- </div>-->\n <!-- <div class=\"name-header-operations\">-->\n <!-- <el-tooltip class=\"box-item\" effect=\"dark\" content=\"重置内边距\" placement=\"top-start\">-->\n <!-- <dk-icon icon=\"Refresh\" color=\"var(&#45;&#45;el-color-success)\" @click=\"onRefresh('padding')\"></dk-icon>-->\n <!-- </el-tooltip>-->\n <!-- </div>-->\n <!-- <div class=\"name-header-operations\">-->\n <!-- <el-tooltip class=\"box-item\" effect=\"dark\" content=\"重置外边距\" placement=\"top-start\">-->\n <!-- <dk-icon icon=\"Refresh\" color=\"var(&#45;&#45;el-color-warning)\" @click=\"onRefresh('margin')\"></dk-icon>-->\n <!-- </el-tooltip>-->\n <!-- </div>-->\n <!-- </div>-->\n <div ref=\"box\" tabindex=\"0\" class=\"wrapper\" style=\"margin-top: 10px\" :style=\"{ height: height + 'px' }\">\n <div\n class=\"thumnail margin\"\n :class=\"moves.margin ? 'thumnail-heightlight' : ''\"\n @mousemove=\"onMouseMove('margin', 'move', $event)\"\n @mouseleave=\"onMouseMove('margin', 'leave', $event)\"\n >\n <!--外边距 Margin-->\n <div>\n <div v-for=\"(item, key) in margins\" :key=\"key\">\n <span\n :title=\"item.title\"\n :class=\"`anchor-tip-${item.position} value-indicator`\"\n @dblclick=\"onDblclick(item.value, key)\"\n >\n <span> {{ getValue(styles[item.value]) }}</span>\n </span>\n <input\n ref=\"inputField\"\n v-model=\"styles[item.value]\"\n :class=\"'input-box anchor-tip-' + item.position + (showStyles[item.value] ? ' show' : '')\"\n @blur=\"onBlur(item.value)\"\n />\n <svg\n :width=\"item.svg.width\"\n :height=\"item.svg.height\"\n :viewBox=\"item.svg.viewBox\"\n preserveAspectRatio=\"none\"\n :data-link-anchor=\"item.value\"\n :style=\"item.svg.style\"\n class=\"esm-modal-svg\"\n v-html=\"item.svg.content\"\n ></svg>\n </div>\n </div>\n <div style=\"position: absolute; display: none; width: 100%; height: 100%\"></div>\n <div class=\"anchor-wrapper\">\n <div\n v-for=\"(item, key) in ['left', 'right', 'top', 'bottom']\"\n :key=\"key\"\n class=\"anchor\"\n :class=\"'anchor-' + item\"\n @mousemove=\"handleMouseMove\"\n @mousedown=\"handleMouseDown('margin', item, $event)\"\n @mouseup=\"handleMouseUp\"\n ></div>\n </div>\n <span class=\"title\"> 外边距 </span>\n <div class=\"tools\">\n <el-tooltip :show-after=\"1000\" class=\"box-item\" effect=\"dark\" content=\"联动\" placement=\"top-start\">\n <dk-icon\n style=\"margin-right: 5px\"\n icon=\"Connection\"\n :color=\"bind.margin ? '#f00' : '#303133'\"\n @click=\"onBind('margin')\"\n ></dk-icon>\n </el-tooltip>\n <el-tooltip :show-after=\"1000\" class=\"box-item\" effect=\"dark\" content=\"重置外边距\" placement=\"top-start\">\n <dk-icon icon=\"Refresh\" color=\"#303133\" @click=\"onRefresh('margin')\"></dk-icon>\n </el-tooltip>\n </div>\n <!--外边距 Margin END-->\n\n <!--内边距 Padding-->\n <div class=\"thumnail border\">\n <div\n class=\"thumnail padding\"\n :class=\"moves.padding ? 'thumnail-heightlight' : ''\"\n @mousemove=\"onMouseMove('padding', 'move', $event)\"\n @mouseleave=\"onMouseMove('padding', 'leave', $event)\"\n >\n <div>\n <div v-for=\"(item, key) in paddings\" :key=\"key\">\n <span\n :title=\"item.title\"\n :class=\"`anchor-tip-${item.position} value-indicator`\"\n @dblclick=\"onDblclick(item.value, key + 4)\"\n >\n <span> {{ getValue(styles[item.value]) }}</span>\n </span>\n <input\n ref=\"inputField\"\n v-model=\"styles[item.value]\"\n :class=\"'input-box anchor-tip-' + item.position + (showStyles[item.value] ? ' show' : '')\"\n @blur=\"onBlur(item.value)\"\n />\n <svg\n :width=\"item.svg.width\"\n :height=\"item.svg.height\"\n :viewBox=\"item.svg.viewBox\"\n preserveAspectRatio=\"none\"\n :data-link-anchor=\"item.value\"\n :style=\"item.svg.style\"\n class=\"esm-modal-svg\"\n v-html=\"item.svg.content\"\n ></svg>\n </div>\n </div>\n <div class=\"anchor-wrapper\">\n <div\n v-for=\"(item, key) in ['left', 'right', 'top', 'bottom']\"\n :key=\"key\"\n class=\"anchor\"\n :class=\"'anchor-' + item\"\n @mousemove=\"handleMouseMove\"\n @mousedown=\"handleMouseDown('padding', item, $event)\"\n @mouseup=\"handleMouseUp\"\n ></div>\n </div>\n <span class=\"title\"> 内边距 </span>\n <div class=\"tools\">\n <el-tooltip :show-after=\"1000\" class=\"box-item\" effect=\"dark\" content=\"联动\" placement=\"top-start\">\n <dk-icon\n style=\"margin-right: 5px\"\n icon=\"Connection\"\n :color=\"bind.padding ? '#f00' : '#303133'\"\n @click=\"onBind('padding')\"\n ></dk-icon>\n </el-tooltip>\n <el-tooltip\n :show-after=\"1000\"\n class=\"box-item\"\n effect=\"dark\"\n content=\"重置内边距\"\n placement=\"top-start\"\n >\n <dk-icon icon=\"Refresh\" color=\"#303133\" @click=\"onRefresh('padding')\"></dk-icon>\n </el-tooltip>\n </div>\n <!--内边距 END-->\n <div\n class=\"thumnail width-height\"\n :class=\"moves.widthHeight ? 'thumnail-heightlight' : ''\"\n @mousemove=\"onMouseMove('widthHeight', 'move', $event)\"\n @mouseleave=\"onMouseMove('widthHeight', 'leave', $event)\"\n >\n <span class=\"title\">\n <span class=\"content-unit left-0\" @dblclick=\"onDblclick('width', 9)\">\n <em>{{ getValue(styles['width']) }}</em>\n </span>\n <input\n ref=\"inputWidth\"\n v-model=\"styles.width\"\n class=\"input-box absolute left-5% top-10px\"\n :class=\"showStyles['width'] ? ' show' : ''\"\n @blur=\"onBlur('width')\"\n />\n <span> x </span>\n <span class=\"content-unit right-0\" @dblclick=\"onDblclick('height', 9)\">\n <em>{{ getValue(styles['height']) }}</em>\n </span>\n <input\n ref=\"inputHeight\"\n v-model=\"styles.height\"\n class=\"input-box absolute right-5% top-10px\"\n :class=\"showStyles['height'] ? ' show' : ''\"\n @blur=\"onBlur('height')\"\n />\n </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { styleBoxInputProps } from './props'\nimport { nextTick, reactive, ref, watch, computed } from 'vue'\nimport { margins, paddings } from './html'\nimport { upper } from '@vipl520/utils'\nimport { useElementSize } from '@vueuse/core'\n\n\n\nconst props = defineProps(styleBoxInputProps)\n\nconst moves: any = reactive({\n margin: false,\n padding: false,\n widthHeight: false,\n})\n\nconst inputField = ref()\nconst inputWidth = ref()\nconst inputHeight = ref()\n\nconst styles: any = reactive({\n marginLeft: props.modelValue.marginLeft || '',\n marginRight: props.modelValue.marginRight || '',\n marginTop: props.modelValue.marginTop || '',\n marginBottom: props.modelValue.marginBottom || '',\n paddingLeft: props.modelValue.paddingLeft || '',\n paddingRight: props.modelValue.paddingRight || '',\n paddingTop: props.modelValue.paddingTop || '',\n paddingBottom: props.modelValue.paddingBottom || '',\n width: props.modelValue.width || '',\n height: props.modelValue.height || '',\n})\nconst emit = defineEmits(['update:modelValue', 'change'])\n\nconst box: any = ref(null)\nconst { width } = useElementSize(box) // 当前组件宽度\nconst bind: any = reactive({\n padding: false,\n margin: false,\n size: false,\n})\nconst height: any = computed(() => {\n if (props.height === 'auto') {\n const h = width.value / 1.8\n return h > 200 ? 200 : h\n } else {\n return props.height\n }\n})\n\nwatch(\n () => props.modelValue,\n (newVal, oldVal) => {\n const propertiesToWatch = [\n 'marginLeft',\n 'marginRight',\n 'marginTop',\n 'marginBottom',\n 'paddingLeft',\n 'paddingRight',\n 'paddingTop',\n 'paddingBottom',\n 'width',\n 'height',\n ]\n propertiesToWatch.forEach((property) => {\n if (newVal[property] !== oldVal[property]) {\n styles[property] = newVal[property] || ''\n }\n })\n },\n { deep: true }\n)\n\nwatch(styles, () => {\n // 过滤 styles 中值为''\n const _styles = Object.keys(styles).reduce((acc: any, key) => {\n if (styles[key] !== '') {\n acc[key] = styles[key]\n }\n return acc\n }, {})\n emit('update:modelValue', _styles)\n emit('change', _styles)\n})\n\nconst showStyles: any = reactive({\n marginLeft: false,\n marginRight: false,\n marginTop: false,\n marginBottom: false,\n paddingLeft: false,\n paddingRight: false,\n paddingTop: false,\n paddingBottom: false,\n width: false,\n height: false,\n})\n\nconst dragging = ref(false)\nconst startPosition: any = reactive({\n x: 0,\n y: 0,\n})\n\nconst trackMouseBound: any = ref(null)\nconst stopChangeBound: any = ref(null)\nconst dragPosition = reactive({\n type: '',\n position: '',\n})\nconst positionStyle: any = reactive({\n display: 'none',\n width: '0px',\n height: '0px',\n left: '0px',\n top: '0px',\n})\n\nconst handleMouseMove = (event: any) => {\n // 处理鼠标移动事件\n if (!dragging.value) return\n\n const p = dragPosition.position\n const type = dragPosition.type\n const value = type + upper(p)\n\n const updateStyle = (axis: 'x' | 'y', position: 'top' | 'bottom' | 'left' | 'right') => {\n const clientAxis = axis === 'x' ? 'clientX' : 'clientY'\n positionStyle[position] = event[clientAxis] + 'px'\n\n let difference = event[clientAxis] - startPosition[axis]\n if (p === 'top' || p === 'left') {\n difference = -difference\n }\n styles[value] = (parseInt(styles[value]) || 0) + difference + 'px'\n\n if (bind[type]) {\n styles[type + 'Top'] = styles[value]\n styles[type + 'Bottom'] = styles[value]\n styles[type + 'Left'] = styles[value]\n styles[type + 'Right'] = styles[value]\n }\n startPosition[axis] = event[clientAxis]\n }\n\n if (p === 'left' || p === 'right') {\n // 说明是左右移动\n updateStyle('x', 'left')\n } else if (p === 'top' || p === 'bottom') {\n updateStyle('y', 'top')\n }\n}\n\nconst handleMouseDown = (type: string, position: string, event: any) => {\n // 处理鼠标按下事件\n Object.assign(dragPosition, { position, type })\n trackMouseBound.value = handleMouseMove.bind(event)\n document.addEventListener('mousemove', trackMouseBound.value)\n stopChangeBound.value = handleMouseUp.bind(event)\n document.addEventListener('mouseup', stopChangeBound.value)\n dragging.value = true\n\n // const height = props.height\n const wrapperElement: any = document.querySelector('.wrapper')\n const width = wrapperElement ? wrapperElement.offsetWidth : 0\n const multiples: any = {\n margin: 0.9,\n padding: 0.9 * 0.7,\n }\n\n const { clientX, clientY } = event\n\n const setCursorAndDimensions = (cursor: string, left: string, top: string, width: string, height: string) => {\n document.body.style.cursor = cursor\n Object.assign(positionStyle, { left, top, width, height, display: 'block' })\n }\n\n startPosition.x = clientX\n startPosition.y = clientY\n\n if (position === 'left' || position === 'right') {\n setCursorAndDimensions(\n 'ew-resize',\n clientX + 'px',\n clientY - height.value * 0.5 * multiples[type] + 'px',\n '0.1px',\n height.value * multiples[type] + 'px'\n )\n } else {\n setCursorAndDimensions(\n 'ns-resize',\n clientX - width * 0.5 * multiples[type] + 'px',\n clientY + 'px',\n width * multiples[type] + 'px',\n '0.1px'\n )\n }\n}\n\nconst handleMouseUp = () => {\n // 处理鼠标抬起事件\n document.removeEventListener('mousemove', trackMouseBound.value)\n document.removeEventListener('mouseup', stopChangeBound.value)\n dragging.value = false\n positionStyle.display = 'none'\n document.body.style.cursor = 'default'\n startPosition.x = null\n startPosition.y = null\n}\n\nconst onMouseMove = (value: string, type: string = 'move', event: any) => {\n if (!dragging.value) {\n event.stopPropagation()\n }\n if (type !== 'move') {\n moves[value] = false\n } else {\n // 其他的为false\n Object.keys(moves).forEach((key) => {\n if (key !== value) {\n moves[key] = false\n }\n })\n // 当前的为true\n moves[value] = true\n }\n}\n\nconst onDblclick = (value: any, key: number) => {\n showStyles[value] = true\n nextTick(() => {\n if (value === 'width') {\n inputWidth.value.focus()\n } else if (value === 'height') {\n inputHeight.value.focus()\n } else {\n inputField.value[key].focus()\n }\n })\n}\n\nconst getValue = (value: any) => {\n // 判断value结尾是否存在px、vh、%、rem等\n if (value === 'auto') {\n return value\n }\n if (value === '0' || value === 0) {\n return 0\n }\n if (value === '') {\n return '-'\n }\n return value\n}\n\nconst onBlur = (value: any) => {\n showStyles[value] = false\n // styles[value] 这是一个css的值,用户会自己填写,内容不确定,但是我希望是:数字+单位,单位为:px/rem/%/vh这些,如果不是的话,则默认为px\n if (styles[value] === '' || styles[value] === 'auto') {\n return\n }\n const validValueRegex = /^(\\d*\\.?\\d+)(px|rem|%|vh)$/\n // 检查value是否匹配有效单位,如果不匹配则默认为px\n if (!validValueRegex.test(styles[value])) {\n const number = parseInt(styles[value])\n if (isNaN(number)) {\n styles[value] = ''\n } else {\n styles[value] = number + 'px'\n if (value.indexOf('padding') == 0 && bind.padding) {\n styles.paddingTop = styles[value]\n styles.paddingRight = styles[value]\n styles.paddingBottom = styles[value]\n styles.paddingLeft = styles[value]\n }\n if (value.indexOf('margin') == 0 && bind.padding) {\n styles.marginTop = styles[value]\n styles.marginRight = styles[value]\n styles.marginBottom = styles[value]\n styles.marginLeft = styles[value]\n }\n }\n }\n}\n\nconst onRefresh = (type: string) => {\n if (type === 'widthHeight') {\n styles.width = ''\n styles.height = ''\n } else if (type === 'margin') {\n styles.marginLeft = ''\n styles.marginRight = ''\n styles.marginTop = ''\n styles.marginBottom = ''\n } else if (type === 'padding') {\n styles.paddingLeft = ''\n styles.paddingRight = ''\n styles.paddingTop = ''\n styles.paddingBottom = ''\n }\n}\n\nconst onBind = (type: string) => {\n bind[type] = !bind[type]\n}\n</script>\n"],"names":["__MACROS_defineComponent","reactive","ref","useElementSize","computed","watch","upper","width","height","nextTick"],"mappings":"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"}
@@ -11,7 +11,7 @@ export declare const UrlInput: import("@vipl520/utils").WithInstall<import("vue"
11
11
  default: () => never[];
12
12
  type: ArrayConstructor;
13
13
  };
14
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
14
+ }, {}, 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
15
  modelValue: {
16
16
  default: string;
17
17
  type: StringConstructor;
@@ -25,7 +25,9 @@ export declare const UrlInput: import("@vipl520/utils").WithInstall<import("vue"
25
25
  type: ArrayConstructor;
26
26
  };
27
27
  }>> & {
28
+ onInput?: ((...args: any[]) => any) | undefined;
28
29
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
30
+ onChange?: ((...args: any[]) => any) | undefined;
29
31
  }, {
30
32
  modelValue: string;
31
33
  urlData: unknown[];
@@ -44,12 +44,20 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
44
44
  emits: ["submit"],
45
45
  setup(__props, { emit }) {
46
46
  const props = __props;
47
+ const urlInputData = vue.inject("urlInputData", []);
47
48
  const _urlData = vue.computed(() => {
48
49
  console.log("urlData", props.urlData);
49
50
  if (props.urlData?.length > 0) {
50
51
  return props.urlData;
51
52
  } else {
52
- return vue.inject("urlInputData", []);
53
+ return urlInputData.urlData;
54
+ }
55
+ });
56
+ const _jumpMinApp = vue.computed(() => {
57
+ if (urlInputData.jumpMinApp !== void 0) {
58
+ return urlInputData.jumpMinApp;
59
+ } else {
60
+ return props.jumpMinApp;
53
61
  }
54
62
  });
55
63
  const minapp = vue.reactive({
@@ -185,7 +193,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
185
193
  vue.createVNode(_component_el_tab_pane, { label: "\u81EA\u5B9A\u4E49\u94FE\u63A5" }, {
186
194
  default: vue.withCtx(() => [
187
195
  vue.createElementVNode("div", _hoisted_12, [
188
- __props.jumpMinApp ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_13, [
196
+ _jumpMinApp.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_13, [
189
197
  vue.createVNode(_component_el_radio_group, {
190
198
  modelValue: urlType.value,
191
199
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => urlType.value = $event),
@@ -1 +1 @@
1
- {"version":3,"file":"url-input-content.vue2.js","sources":["../../../src/url-input/src/url-input-content.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkUrlInputContent',\n});\n</script>\n<template>\n <el-tabs tab-position=\"left\" style=\"height: 430px\" class=\"dk-url-input-content\" @tab-change=\"onTabChange()\">\n <el-tab-pane v-for=\"(item, key) in _urlData\" :key=\"key\" :label=\"item.title\">\n <div style=\"padding: 10px\">\n <div v-if=\"item.type === 'table'\">\n <dk-url-input-table :item=\"item\" @on-choose-url=\"onChooseUrl\"></dk-url-input-table>\n </div>\n <div v-else-if=\"item.type === 'component'\">\n <component :is=\"item.componentName\" @on-choose-url=\"onChooseUrl\"></component>\n </div>\n <div v-else>\n <div v-if=\"item.lists?.length > 0\">\n <div v-for=\"(val, k) in item.lists\" :key=\"k\">\n <div v-if=\"val.list\">\n <div style=\"padding-bottom: 10px; font-weight: 700; color: #000\">\n {{ val.title }}\n </div>\n <div class=\"url-list\">\n <div\n v-for=\"(v, k) in val.list\"\n :key=\"k\"\n class=\"url-box\"\n :class=\"chooseUrl == v.url ? 'choose' : ''\"\n @click=\"chooseUrl = v.url\"\n >\n {{ v.title }}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div v-else class=\"url-list\">\n <div\n v-for=\"(val, k) in item.list\"\n :key=\"k\"\n class=\"url-box\"\n :class=\"chooseUrl == val.url ? 'choose' : ''\"\n @click=\"chooseUrl = val.url\"\n >\n {{ val.title }}\n </div>\n </div>\n </div>\n </div>\n </el-tab-pane>\n <el-tab-pane label=\"自定义链接\">\n <div style=\"width: 500px; margin: 100px auto\">\n <div v-if=\"jumpMinApp\" style=\"padding-bottom: 20px\">\n <el-radio-group v-model=\"urlType\" class=\"ml-4\">\n <el-radio :value=\"1\" size=\"large\">链接或路径</el-radio>\n <el-radio :value=\"2\" size=\"large\">跳转其他小程序</el-radio>\n </el-radio-group>\n </div>\n <el-form label-width=\"100px\" label-position=\"top\" size=\"default\">\n <div v-if=\"urlType === 1\">\n <el-form-item label=\"填写地址或路径\" required>\n <el-input v-model=\"chooseUrl\" size=\"default\" />\n </el-form-item>\n </div>\n <div v-else>\n <el-form-item label=\"填写小程序APPID\" required>\n <el-input v-model=\"minapp.appid\" size=\"default\" />\n </el-form-item>\n <el-form-item label=\"填写小程序路径\">\n <el-input v-model=\"minapp.path\" size=\"default\" />\n </el-form-item>\n </div>\n </el-form>\n </div>\n </el-tab-pane>\n </el-tabs>\n <div style=\"text-align: center\">\n <el-button size=\"default\" style=\"width: 200px\" type=\"primary\" :disabled=\"!chooseUrl\" @click=\"onSubmit()\">\n 确定\n </el-button>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, reactive, ref, watch, inject } from 'vue'\nimport DkUrlInputTable from './url-input-table.vue'\n\n\nconst emit = defineEmits(['submit'])\n\nconst props = defineProps({\n urlData: {\n default: () => {\n return []\n },\n type: Array,\n },\n jumpMinApp: { default: false, type: Boolean },\n})\n\nconst _urlData: any = computed(() => {\n console.log('urlData', props.urlData)\n if (props.urlData?.length > 0) {\n return props.urlData\n } else {\n return inject('urlInputData', [])\n }\n})\n\nconst minapp = reactive({\n appid: '',\n path: '',\n})\nconst chooseUrl = ref('')\nconst urlType = ref(1)\n\nconst onTabChange = () => {\n chooseUrl.value = ''\n}\n\nconst onChooseUrl = (url: any) => {\n chooseUrl.value = url\n}\n\nwatch(\n () => minapp,\n () => {\n if (minapp.appid) {\n chooseUrl.value = minapp.appid + '@' + minapp.path || '/'\n }\n },\n {\n deep: true,\n }\n)\n\nconst onSubmit = () => {\n emit('submit', chooseUrl.value)\n}\n</script>\n"],"names":["__MACROS_defineComponent","computed","inject","reactive","ref","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAA6B,cAAAA,mBAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,mBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;AAgGD,IAAM,MAAA,QAAA,GAAgBC,aAAS,MAAM;AACnC,MAAQ,OAAA,CAAA,GAAA,CAAI,SAAW,EAAA,KAAA,CAAM,OAAO,CAAA,CAAA;AACpC,MAAI,IAAA,KAAA,CAAM,OAAS,EAAA,MAAA,GAAS,CAAG,EAAA;AAC7B,QAAA,OAAO,KAAM,CAAA,OAAA,CAAA;AAAA,OACR,MAAA;AACL,QAAO,OAAAC,UAAA,CAAO,cAAgB,EAAA,EAAE,CAAA,CAAA;AAAA,OAClC;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,SAASC,YAAS,CAAA;AAAA,MACtB,KAAO,EAAA,EAAA;AAAA,MACP,IAAM,EAAA,EAAA;AAAA,KACP,CAAA,CAAA;AACD,IAAM,MAAA,SAAA,GAAYC,QAAI,EAAE,CAAA,CAAA;AACxB,IAAM,MAAA,OAAA,GAAUA,QAAI,CAAC,CAAA,CAAA;AAErB,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,SAAA,CAAU,KAAQ,GAAA,EAAA,CAAA;AAAA,KACpB,CAAA;AAEA,IAAM,MAAA,WAAA,GAAc,CAAC,GAAa,KAAA;AAChC,MAAA,SAAA,CAAU,KAAQ,GAAA,GAAA,CAAA;AAAA,KACpB,CAAA;AAEA,IAAAC,SAAA;AAAA,MACE,MAAM,MAAA;AAAA,MACN,MAAM;AACJ,QAAA,IAAI,OAAO,KAAO,EAAA;AAChB,UAAA,SAAA,CAAU,KAAQ,GAAA,MAAA,CAAO,KAAQ,GAAA,GAAA,GAAM,OAAO,IAAQ,IAAA,GAAA,CAAA;AAAA,SACxD;AAAA,OACF;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,WAAW,MAAM;AACrB,MAAK,IAAA,CAAA,QAAA,EAAU,UAAU,KAAK,CAAA,CAAA;AAAA,KAChC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"url-input-content.vue2.js","sources":["../../../src/url-input/src/url-input-content.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkUrlInputContent',\n});\n</script>\n<template>\n <el-tabs tab-position=\"left\" style=\"height: 430px\" class=\"dk-url-input-content\" @tab-change=\"onTabChange()\">\n <el-tab-pane v-for=\"(item, key) in _urlData\" :key=\"key\" :label=\"item.title\">\n <div style=\"padding: 10px\">\n <div v-if=\"item.type === 'table'\">\n <dk-url-input-table :item=\"item\" @on-choose-url=\"onChooseUrl\"></dk-url-input-table>\n </div>\n <div v-else-if=\"item.type === 'component'\">\n <component :is=\"item.componentName\" @on-choose-url=\"onChooseUrl\"></component>\n </div>\n <div v-else>\n <div v-if=\"item.lists?.length > 0\">\n <div v-for=\"(val, k) in item.lists\" :key=\"k\">\n <div v-if=\"val.list\">\n <div style=\"padding-bottom: 10px; font-weight: 700; color: #000\">\n {{ val.title }}\n </div>\n <div class=\"url-list\">\n <div\n v-for=\"(v, k) in val.list\"\n :key=\"k\"\n class=\"url-box\"\n :class=\"chooseUrl == v.url ? 'choose' : ''\"\n @click=\"chooseUrl = v.url\"\n >\n {{ v.title }}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div v-else class=\"url-list\">\n <div\n v-for=\"(val, k) in item.list\"\n :key=\"k\"\n class=\"url-box\"\n :class=\"chooseUrl == val.url ? 'choose' : ''\"\n @click=\"chooseUrl = val.url\"\n >\n {{ val.title }}\n </div>\n </div>\n </div>\n </div>\n </el-tab-pane>\n <el-tab-pane label=\"自定义链接\">\n <div style=\"width: 500px; margin: 100px auto\">\n <div v-if=\"_jumpMinApp\" style=\"padding-bottom: 20px\">\n <el-radio-group v-model=\"urlType\" class=\"ml-4\">\n <el-radio :value=\"1\" size=\"large\">链接或路径</el-radio>\n <el-radio :value=\"2\" size=\"large\">跳转其他小程序</el-radio>\n </el-radio-group>\n </div>\n <el-form label-width=\"100px\" label-position=\"top\" size=\"default\">\n <div v-if=\"urlType === 1\">\n <el-form-item label=\"填写地址或路径\" required>\n <el-input v-model=\"chooseUrl\" size=\"default\" />\n </el-form-item>\n </div>\n <div v-else>\n <el-form-item label=\"填写小程序APPID\" required>\n <el-input v-model=\"minapp.appid\" size=\"default\" />\n </el-form-item>\n <el-form-item label=\"填写小程序路径\">\n <el-input v-model=\"minapp.path\" size=\"default\" />\n </el-form-item>\n </div>\n </el-form>\n </div>\n </el-tab-pane>\n </el-tabs>\n <div style=\"text-align: center\">\n <el-button size=\"default\" style=\"width: 200px\" type=\"primary\" :disabled=\"!chooseUrl\" @click=\"onSubmit()\">\n 确定\n </el-button>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, reactive, ref, watch, inject } from 'vue'\nimport DkUrlInputTable from './url-input-table.vue'\n\n\nconst emit = defineEmits(['submit'])\n\nconst props = defineProps({\n urlData: {\n default: () => {\n return []\n },\n type: Array,\n },\n jumpMinApp: { default: false, type: Boolean },\n})\n\nconst urlInputData: any = inject('urlInputData', [])\n\nconst _urlData: any = computed(() => {\n console.log('urlData', props.urlData)\n if (props.urlData?.length > 0) {\n return props.urlData\n } else {\n return urlInputData.urlData\n }\n})\n\nconst _jumpMinApp = computed(() => {\n if (urlInputData.jumpMinApp !== undefined) {\n return urlInputData.jumpMinApp\n } else {\n return props.jumpMinApp\n }\n})\n\nconst minapp = reactive({\n appid: '',\n path: '',\n})\nconst chooseUrl = ref('')\nconst urlType = ref(1)\n\nconst onTabChange = () => {\n chooseUrl.value = ''\n}\n\nconst onChooseUrl = (url: any) => {\n chooseUrl.value = url\n}\n\nwatch(\n () => minapp,\n () => {\n if (minapp.appid) {\n chooseUrl.value = minapp.appid + '@' + minapp.path || '/'\n }\n },\n {\n deep: true,\n }\n)\n\nconst onSubmit = () => {\n emit('submit', chooseUrl.value)\n}\n</script>\n"],"names":["__MACROS_defineComponent","inject","computed","reactive","ref","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAA6B,cAAAA,mBAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,mBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;AAgGD,IAAA,MAAM,YAAoB,GAAAC,UAAA,CAAO,cAAgB,EAAA,EAAE,CAAA,CAAA;AAEnD,IAAM,MAAA,QAAA,GAAgBC,aAAS,MAAM;AACnC,MAAQ,OAAA,CAAA,GAAA,CAAI,SAAW,EAAA,KAAA,CAAM,OAAO,CAAA,CAAA;AACpC,MAAI,IAAA,KAAA,CAAM,OAAS,EAAA,MAAA,GAAS,CAAG,EAAA;AAC7B,QAAA,OAAO,KAAM,CAAA,OAAA,CAAA;AAAA,OACR,MAAA;AACL,QAAA,OAAO,YAAa,CAAA,OAAA,CAAA;AAAA,OACtB;AAAA,KACD,CAAA,CAAA;AAED,IAAM,MAAA,WAAA,GAAcA,aAAS,MAAM;AACjC,MAAI,IAAA,YAAA,CAAa,eAAe,KAAW,CAAA,EAAA;AACzC,QAAA,OAAO,YAAa,CAAA,UAAA,CAAA;AAAA,OACf,MAAA;AACL,QAAA,OAAO,KAAM,CAAA,UAAA,CAAA;AAAA,OACf;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,SAASC,YAAS,CAAA;AAAA,MACtB,KAAO,EAAA,EAAA;AAAA,MACP,IAAM,EAAA,EAAA;AAAA,KACP,CAAA,CAAA;AACD,IAAM,MAAA,SAAA,GAAYC,QAAI,EAAE,CAAA,CAAA;AACxB,IAAM,MAAA,OAAA,GAAUA,QAAI,CAAC,CAAA,CAAA;AAErB,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,SAAA,CAAU,KAAQ,GAAA,EAAA,CAAA;AAAA,KACpB,CAAA;AAEA,IAAM,MAAA,WAAA,GAAc,CAAC,GAAa,KAAA;AAChC,MAAA,SAAA,CAAU,KAAQ,GAAA,GAAA,CAAA;AAAA,KACpB,CAAA;AAEA,IAAAC,SAAA;AAAA,MACE,MAAM,MAAA;AAAA,MACN,MAAM;AACJ,QAAA,IAAI,OAAO,KAAO,EAAA;AAChB,UAAA,SAAA,CAAU,KAAQ,GAAA,MAAA,CAAO,KAAQ,GAAA,GAAA,GAAM,OAAO,IAAQ,IAAA,GAAA,CAAA;AAAA,SACxD;AAAA,OACF;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,WAAW,MAAM;AACrB,MAAK,IAAA,CAAA,QAAA,EAAU,UAAU,KAAK,CAAA,CAAA;AAAA,KAChC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -11,7 +11,7 @@ declare const _default: import("vue").DefineComponent<{
11
11
  default: () => never[];
12
12
  type: ArrayConstructor;
13
13
  };
14
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
14
+ }, {}, 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
15
  modelValue: {
16
16
  default: string;
17
17
  type: StringConstructor;
@@ -25,7 +25,9 @@ declare const _default: import("vue").DefineComponent<{
25
25
  type: ArrayConstructor;
26
26
  };
27
27
  }>> & {
28
+ onInput?: ((...args: any[]) => any) | undefined;
28
29
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
30
+ onChange?: ((...args: any[]) => any) | undefined;
29
31
  }, {
30
32
  modelValue: string;
31
33
  urlData: unknown[];
@@ -13,16 +13,25 @@ const __default__ = vue.defineComponent({
13
13
  var _sfc_main = /* @__PURE__ */ vue.defineComponent({
14
14
  ...__default__,
15
15
  props: props.urlInputProps,
16
- emits: ["update:modelValue"],
16
+ emits: ["input", "update:modelValue", "change"],
17
17
  setup(__props, { emit }) {
18
18
  const props = __props;
19
19
  const show = vue.ref(false);
20
20
  const url = vue.ref(props.modelValue);
21
21
  const updateUrl = (value) => {
22
+ console.log("url", url);
22
23
  url.value = value;
23
24
  emit("update:modelValue", value);
24
25
  show.value = false;
25
26
  };
27
+ vue.watch(
28
+ () => url.value,
29
+ (val) => {
30
+ emit("update:modelValue", val);
31
+ emit("input", val);
32
+ emit("change", val);
33
+ }
34
+ );
26
35
  return (_ctx, _cache) => {
27
36
  const _component_el_button = vue.resolveComponent("el-button");
28
37
  const _component_el_input = vue.resolveComponent("el-input");
@@ -1 +1 @@
1
- {"version":3,"file":"url-input.vue2.js","sources":["../../../src/url-input/src/url-input.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkUrlInput',\n});\n</script>\n<template>\n <div class=\"dk-url-input\">\n <el-input v-model=\"url\">\n <template #append>\n <el-button @click=\"show = true\">选择</el-button>\n </template>\n </el-input>\n <dk-dialog v-model=\"show\" title=\"选择链接\" width=\"1000px\" append-to-body>\n <DkUrlInputContent\n v-if=\"show\"\n :url-data=\"urlData\"\n :jump-min-app=\"jumpMinApp\"\n @submit=\"updateUrl\"\n ></DkUrlInputContent>\n </dk-dialog>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue'\nimport DkUrlInputContent from './url-input-content.vue'\nimport { urlInputProps } from './props'\n\n\nconst show = ref(false)\n\nconst props = defineProps(urlInputProps)\n\nconst emit = defineEmits(['update:modelValue'])\nconst url = ref(props.modelValue)\nconst updateUrl = (value: string) => {\n url.value = value\n emit('update:modelValue', value)\n show.value = false\n}\n</script>\n\n<style></style>\n"],"names":["__MACROS_defineComponent","ref"],"mappings":";;;;;;;;;AAEA,MAA6B,cAAAA,mBAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,YAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AA0BD,IAAM,MAAA,IAAA,GAAOC,QAAI,KAAK,CAAA,CAAA;AAKtB,IAAM,MAAA,GAAA,GAAMA,OAAI,CAAA,KAAA,CAAM,UAAU,CAAA,CAAA;AAChC,IAAM,MAAA,SAAA,GAAY,CAAC,KAAkB,KAAA;AACnC,MAAA,GAAA,CAAI,KAAQ,GAAA,KAAA,CAAA;AACZ,MAAA,IAAA,CAAK,qBAAqB,KAAK,CAAA,CAAA;AAC/B,MAAA,IAAA,CAAK,KAAQ,GAAA,KAAA,CAAA;AAAA,KACf,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"url-input.vue2.js","sources":["../../../src/url-input/src/url-input.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkUrlInput',\n});\n</script>\n<template>\n <div class=\"dk-url-input\">\n <el-input v-model=\"url\">\n <template #append>\n <el-button @click=\"show = true\">选择</el-button>\n </template>\n </el-input>\n <dk-dialog v-model=\"show\" title=\"选择链接\" width=\"1000px\" append-to-body>\n <DkUrlInputContent\n v-if=\"show\"\n :url-data=\"urlData\"\n :jump-min-app=\"jumpMinApp\"\n @submit=\"updateUrl\"\n ></DkUrlInputContent>\n </dk-dialog>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch } from 'vue'\nimport DkUrlInputContent from './url-input-content.vue'\nimport { urlInputProps } from './props'\n\n\nconst show = ref(false)\n\nconst props = defineProps(urlInputProps)\n\nconst emit = defineEmits(['input', 'update:modelValue', 'change'])\nconst url = ref(props.modelValue)\nconst updateUrl = (value: string) => {\n console.log('url', url)\n url.value = value\n emit('update:modelValue', value)\n show.value = false\n}\n\nwatch(\n () => url.value,\n (val) => {\n emit('update:modelValue', val)\n emit('input', val)\n emit('change', val)\n }\n)\n</script>\n\n<style></style>\n"],"names":["__MACROS_defineComponent","ref","watch"],"mappings":";;;;;;;;;AAEA,MAA6B,cAAAA,mBAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,YAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AA0BD,IAAM,MAAA,IAAA,GAAOC,QAAI,KAAK,CAAA,CAAA;AAKtB,IAAM,MAAA,GAAA,GAAMA,OAAI,CAAA,KAAA,CAAM,UAAU,CAAA,CAAA;AAChC,IAAM,MAAA,SAAA,GAAY,CAAC,KAAkB,KAAA;AACnC,MAAQ,OAAA,CAAA,GAAA,CAAI,OAAO,GAAG,CAAA,CAAA;AACtB,MAAA,GAAA,CAAI,KAAQ,GAAA,KAAA,CAAA;AACZ,MAAA,IAAA,CAAK,qBAAqB,KAAK,CAAA,CAAA;AAC/B,MAAA,IAAA,CAAK,KAAQ,GAAA,KAAA,CAAA;AAAA,KACf,CAAA;AAEA,IAAAC,SAAA;AAAA,MACE,MAAM,GAAI,CAAA,KAAA;AAAA,MACV,CAAC,GAAQ,KAAA;AACP,QAAA,IAAA,CAAK,qBAAqB,GAAG,CAAA,CAAA;AAC7B,QAAA,IAAA,CAAK,SAAS,GAAG,CAAA,CAAA;AACjB,QAAA,IAAA,CAAK,UAAU,GAAG,CAAA,CAAA;AAAA,OACpB;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,38 +2,37 @@
2
2
  .dk-url-input {
3
3
  }
4
4
 
5
- .dk-url-input-content{
5
+ .dk-url-input-content {
6
+ .url-list {
7
+ display: -webkit-box;
8
+ display: -ms-flexbox;
9
+ display: flex;
10
+ flex-wrap: wrap;
6
11
 
7
- .url-list {
8
- display: -webkit-box;
9
- display: -ms-flexbox;
10
- display: flex;
11
- flex-wrap: wrap;
12
+ .url-box {
13
+ padding: 7px 30px;
14
+ margin-right: 10px;
15
+ margin-bottom: 10px;
16
+ font-size: 13px;
17
+ font-weight: 400;
18
+ color: rgb(0 0 0 / 85%);
19
+ text-align: center;
20
+ cursor: pointer;
21
+ user-select: none;
22
+ background: #fafafa;
23
+ border-radius: 3px;
12
24
 
13
- .url-box {
14
- padding: 7px 30px;
15
- margin-right: 10px;
16
- margin-bottom: 10px;
17
- font-size: 13px;
18
- font-weight: 400;
19
- color: rgb(0 0 0 / 85%);
20
- text-align: center;
21
- cursor: pointer;
22
- user-select: none;
23
- background: #fafafa;
24
- border-radius: 3px;
25
+ &:hover {
26
+ color: #333;
27
+ background-color: var(--el-color-primary-light-9);
28
+ }
25
29
 
26
- &:hover {
27
- color: #333;
28
- background-color: var(--el-color-primary-light-9);
29
- }
30
-
31
- &.choose {
32
- color: #fff;
33
- background-color: var(--el-color-primary);
30
+ &.choose {
31
+ color: #fff;
32
+ background-color: var(--el-color-primary);
33
+ }
34
34
  }
35
35
  }
36
36
  }
37
- }
38
37
 
39
38
  /* stylelint-enable */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vipl520/dk-ui",
3
- "version": "1.0.54",
3
+ "version": "1.0.57",
4
4
  "description": "多客怪兽框架核心组件,支持diy、crud动态表格、上传组件等",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.mjs",