@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":"style-box-input.vue2.mjs","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","width","height"],"mappings":"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"}
1
+ {"version":3,"file":"style-box-input.vue2.mjs","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","width","height"],"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[];
@@ -1,4 +1,4 @@
1
- import { defineComponent, computed, inject, reactive, ref, watch, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, renderList, createBlock, createElementVNode, resolveDynamicComponent, toDisplayString, normalizeClass, createCommentVNode, createTextVNode } from 'vue';
1
+ import { defineComponent, inject, computed, reactive, ref, watch, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, renderList, createBlock, createElementVNode, resolveDynamicComponent, toDisplayString, normalizeClass, createCommentVNode, createTextVNode } from 'vue';
2
2
  import DkUrlInputTable from './url-input-table.vue.mjs';
3
3
 
4
4
  const _hoisted_1 = { style: { "padding": "10px" } };
@@ -40,12 +40,20 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
40
40
  emits: ["submit"],
41
41
  setup(__props, { emit }) {
42
42
  const props = __props;
43
+ const urlInputData = inject("urlInputData", []);
43
44
  const _urlData = computed(() => {
44
45
  console.log("urlData", props.urlData);
45
46
  if (props.urlData?.length > 0) {
46
47
  return props.urlData;
47
48
  } else {
48
- return inject("urlInputData", []);
49
+ return urlInputData.urlData;
50
+ }
51
+ });
52
+ const _jumpMinApp = computed(() => {
53
+ if (urlInputData.jumpMinApp !== void 0) {
54
+ return urlInputData.jumpMinApp;
55
+ } else {
56
+ return props.jumpMinApp;
49
57
  }
50
58
  });
51
59
  const minapp = reactive({
@@ -181,7 +189,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
181
189
  createVNode(_component_el_tab_pane, { label: "\u81EA\u5B9A\u4E49\u94FE\u63A5" }, {
182
190
  default: withCtx(() => [
183
191
  createElementVNode("div", _hoisted_12, [
184
- __props.jumpMinApp ? (openBlock(), createElementBlock("div", _hoisted_13, [
192
+ _jumpMinApp.value ? (openBlock(), createElementBlock("div", _hoisted_13, [
185
193
  createVNode(_component_el_radio_group, {
186
194
  modelValue: urlType.value,
187
195
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => urlType.value = $event),
@@ -1 +1 @@
1
- {"version":3,"file":"url-input-content.vue2.mjs","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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,mBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;AAgGD,IAAM,MAAA,QAAA,GAAgB,SAAS,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,OAAA,MAAA,CAAO,cAAgB,EAAA,EAAE,CAAA,CAAA;AAAA,OAClC;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,SAAS,QAAS,CAAA;AAAA,MACtB,KAAO,EAAA,EAAA;AAAA,MACP,IAAM,EAAA,EAAA;AAAA,KACP,CAAA,CAAA;AACD,IAAM,MAAA,SAAA,GAAY,IAAI,EAAE,CAAA,CAAA;AACxB,IAAM,MAAA,OAAA,GAAU,IAAI,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,IAAA,KAAA;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.mjs","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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,mBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;AAgGD,IAAA,MAAM,YAAoB,GAAA,MAAA,CAAO,cAAgB,EAAA,EAAE,CAAA,CAAA;AAEnD,IAAM,MAAA,QAAA,GAAgB,SAAS,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,GAAc,SAAS,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,SAAS,QAAS,CAAA;AAAA,MACtB,KAAO,EAAA,EAAA;AAAA,MACP,IAAM,EAAA,EAAA;AAAA,KACP,CAAA,CAAA;AACD,IAAM,MAAA,SAAA,GAAY,IAAI,EAAE,CAAA,CAAA;AACxB,IAAM,MAAA,OAAA,GAAU,IAAI,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,IAAA,KAAA;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[];
@@ -1,4 +1,4 @@
1
- import { defineComponent, ref, resolveComponent, openBlock, createElementBlock, createVNode, withCtx, createTextVNode, createBlock, createCommentVNode } from 'vue';
1
+ import { defineComponent, ref, watch, resolveComponent, openBlock, createElementBlock, createVNode, withCtx, createTextVNode, createBlock, createCommentVNode } from 'vue';
2
2
  import DkUrlInputContent from './url-input-content.vue.mjs';
3
3
  import { urlInputProps } from './props.mjs';
4
4
 
@@ -9,16 +9,25 @@ const __default__ = defineComponent({
9
9
  var _sfc_main = /* @__PURE__ */ defineComponent({
10
10
  ...__default__,
11
11
  props: urlInputProps,
12
- emits: ["update:modelValue"],
12
+ emits: ["input", "update:modelValue", "change"],
13
13
  setup(__props, { emit }) {
14
14
  const props = __props;
15
15
  const show = ref(false);
16
16
  const url = ref(props.modelValue);
17
17
  const updateUrl = (value) => {
18
+ console.log("url", url);
18
19
  url.value = value;
19
20
  emit("update:modelValue", value);
20
21
  show.value = false;
21
22
  };
23
+ watch(
24
+ () => url.value,
25
+ (val) => {
26
+ emit("update:modelValue", val);
27
+ emit("input", val);
28
+ emit("change", val);
29
+ }
30
+ );
22
31
  return (_ctx, _cache) => {
23
32
  const _component_el_button = resolveComponent("el-button");
24
33
  const _component_el_input = resolveComponent("el-input");
@@ -1 +1 @@
1
- {"version":3,"file":"url-input.vue2.mjs","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"],"mappings":";;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,YAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AA0BD,IAAM,MAAA,IAAA,GAAO,IAAI,KAAK,CAAA,CAAA;AAKtB,IAAM,MAAA,GAAA,GAAM,GAAI,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.mjs","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"],"mappings":";;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,YAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AA0BD,IAAM,MAAA,IAAA,GAAO,IAAI,KAAK,CAAA,CAAA;AAKtB,IAAM,MAAA,GAAA,GAAM,GAAI,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,IAAA,KAAA;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 */
@@ -273,6 +273,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
273
273
  vue.createVNode(_component_el_input, {
274
274
  modelValue: searchFileName.value,
275
275
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchFileName.value = $event),
276
+ size: "default",
276
277
  placeholder: "\u8BF7\u8F93\u5165\u9644\u4EF6\u540D\u79F0",
277
278
  class: "input-with-select"
278
279
  }, {
@@ -321,6 +322,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
321
322
  ]),
322
323
  default: vue.withCtx(() => [
323
324
  vue.createVNode(_component_el_button, {
325
+ size: "default",
324
326
  type: "info",
325
327
  disabled: chooseFileKey.value.length <= 0
326
328
  }, {
@@ -335,6 +337,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
335
337
  /* STABLE */
336
338
  }),
337
339
  vue.createVNode(_component_el_button, {
340
+ size: "default",
338
341
  type: "danger",
339
342
  disabled: chooseFileKey.value.length <= 0,
340
343
  onClick: onDelete
@@ -360,7 +363,10 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
360
363
  "list-type": "text"
361
364
  }, {
362
365
  default: vue.withCtx(() => [
363
- vue.createVNode(_component_el_button, { type: "primary" }, {
366
+ vue.createVNode(_component_el_button, {
367
+ type: "primary",
368
+ size: "default"
369
+ }, {
364
370
  default: vue.withCtx(() => [
365
371
  vue.createTextVNode("\u4E0A\u4F20"),
366
372
  _hoisted_6
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.vue2.js","sources":["../../../src/attachment/src/attachment.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkAttachment',\n});\n</script>\n<template>\n <div class=\"dk-attachment attachment\">\n <!-- 顶部-->\n <div class=\"attachment-header flex justify-between pt-5px pb-5px\">\n <div class=\"header-form z\">\n <el-input v-model=\"searchFileName\" placeholder=\"请输入附件名称\" class=\"input-with-select\">\n <template #append>\n <el-button :icon=\"Search\" />\n </template>\n </el-input>\n </div>\n <div class=\"header-button y\">\n <el-dropdown class=\"mr\" trigger=\"click\" @command=\"handleMoveAttachment\">\n <el-button type=\"info\" :disabled=\"chooseFileKey.length <= 0\"> 移动 </el-button>\n <template #dropdown>\n <el-dropdown-menu>\n <el-dropdown-item v-for=\"(item, key) in groupList\" :key=\"key\" :command=\"item.id\">\n {{ item.name }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </template>\n </el-dropdown>\n <el-button type=\"danger\" :disabled=\"chooseFileKey.length <= 0\" @click=\"onDelete\"\n >删除<i class=\"el-icon-delete el-icon--right\"></i\n ></el-button>\n <el-upload\n ref=\"upload\"\n class=\"dk-upload-button\"\n :action=\"uploadUrl\"\n multiple\n :data=\"data\"\n :show-file-list=\"false\"\n :headers=\"headers\"\n :on-success=\"handleUploadSuccess\"\n :accept=\"_accept\"\n list-type=\"text\"\n >\n <el-button type=\"primary\">上传<i class=\"el-icon-upload el-icon--right\"></i></el-button>\n </el-upload>\n </div>\n </div>\n <!--内部-->\n <div class=\"attachment-content flex\">\n <!-- 分组-->\n <div class=\"attachment-group\">\n <h5 class=\"cursor-pointer flex items-center content-center\" @click=\"addGroup()\">\n 附件分组\n <el-icon class=\"m-l-5px\"><CirclePlusFilled /></el-icon>\n </h5>\n <ul class=\"group_list\">\n <li\n v-for=\"(item, key) in groupList\"\n :key=\"key\"\n :class=\"{ active: groupId === item.id }\"\n @click=\"selectGroup(item.id)\"\n >\n <dk-icon v-if=\"item.id === groupId\" icon=\"flat-color-icons:opened-folder\" />\n <dk-icon v-else icon=\"flat-color-icons:folder\" />\n\n <span class=\"ml-10px\">{{ item.name }}</span>\n\n <el-popover placement=\"right\" trigger=\"click\">\n <template #reference>\n <div class=\"op\">\n <el-icon v-if=\"item.id > 0\">\n <Tools />\n </el-icon>\n </div>\n </template>\n <template #default>\n <el-button size=\"small\" type=\"primary\" @click.stop=\"editGroup()\">编辑 </el-button>\n <el-button size=\"small\" type=\"danger\" @click=\"delGroup(item.id)\">删除</el-button>\n </template>\n </el-popover>\n </li>\n </ul>\n </div>\n <!-- 列表-->\n <div class=\"attachment-container\">\n <div v-if=\"loading || list.length > 0\" v-loading=\"loading\" class=\"p2\">\n <ul class=\"attachment-list cl\" :style=\"{ overflow: list.length > 10 ? 'auto' : '' }\">\n <li\n v-for=\"(item, key) in list\"\n :key=\"key\"\n :class=\"{ choose: chooseFileKey.indexOf(key) > -1 }\"\n @click=\"chooseAttachment(item, key)\"\n @contextmenu.prevent=\"contextMenuId = item.id\"\n >\n <div class=\"file\">\n <el-image v-if=\"item.type === 1\" class=\"file\" :src=\"item.url\" fit=\"contain\">\n <template #placeholder>\n <div class=\"u-m-t-30\">\n <i class=\"el-icon-loading\"></i>\n <span>加载中</span>\n </div>\n </template>\n </el-image>\n <div v-if=\"item.type === 2\">\n <dk-file-icon :file-name=\"item.filename\" :type=\"item.type\" />\n </div>\n <div v-if=\"item.type === 3\">\n <dk-file-icon :file-name=\"item.filename\" :type=\"item.type\" />\n </div>\n <div v-if=\"item.type === 0\">\n <dk-file-icon :file-name=\"item.filename\" />\n </div>\n </div>\n <div class=\"file-name over\">{{ item.name }}</div>\n <div class=\"right\">\n <el-icon>\n <Check />\n </el-icon>\n </div>\n </li>\n </ul>\n <div class=\"block p-10px\">\n <el-pagination\n :current-page=\"page\"\n layout=\"total, prev, pager, next, jumper,sizes\"\n :total=\"count\"\n :page-size=\"size\"\n @size-change=\"handleSizeChange\"\n @current-change=\"handleCurrentChange\"\n />\n </div>\n </div>\n <div v-else style=\"display: flex; align-items: center; justify-content: center; height: 340px\">\n <el-empty description=\"暂无数据\" />\n </div>\n <dk-form ref=\"groupForm\" :key=\"groupId\" :form-url=\"groupFormUrl\" :is-dialog=\"true\" @submit=\"onsubmit()\" />\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, reactive, onMounted, computed } from 'vue'\nimport {\n deleteAttachment,\n getAttachmentGroupList,\n getAttachmentList,\n moveAttachment,\n delAttachmentGroup,\n} from '../../api'\n\nimport { ElMessage, ElMessageBox } from 'element-plus'\nimport DkFileIcon from './file-icon.vue'\n\nimport { Search } from '@element-plus/icons-vue'\n\nimport { getAttachmentType, getGlobalConfig } from '@vipl520/utils'\nimport { attachmentProps } from './props'\n\n\n\nconst props = defineProps(attachmentProps)\n\nconst _type = computed(() => {\n return getAttachmentType(props.type)\n})\n\n/** ****************顶部data****************/\n// 搜索的文件名\nconst searchFileName = ref('')\n// 选择文件Key\nconst chooseFileKey = ref<number[]>([])\n// 选中文件列表\nconst chooseFileList = ref<any[]>([])\n// 选中文件ID\nconst chooseFileId = ref<number[]>([])\nconst globalConfig = getGlobalConfig()\n// 上传的地址\nconst uploadUrl = globalConfig.ApiUrl + '/adminapi/attachment/upload'\nconst headers = {\n 'Access-Token': globalConfig.AccessToken,\n}\n// 上传的ref\nconst upload = ref()\n// 上传的数据\nconst data = reactive({\n type: _type.value,\n file: 'file',\n group_id: 0,\n})\n\n/** *****顶部的函数****************/\n\nconst handleMoveAttachment = (groupId: number) => {\n moveAttachment(chooseFileId.value, groupId).then((res) => {\n ElMessage.success(res.msg)\n onGetAttachmentList()\n })\n}\n\nconst handleUploadSuccess = (res: any) => {\n console.log('res', res)\n if (res.code === 0) {\n ElMessage.success(res.msg)\n // upload.value.clearFiles()\n onGetAttachmentList()\n } else {\n ElMessage.error(res.msg)\n }\n}\n\nconst _accept = computed(() => {\n let _accept = ''\n if (props.accept) {\n return props.accept\n } else {\n switch (_type.value) {\n case 0:\n break\n case 1:\n _accept = 'image/*'\n break\n case 2:\n _accept = 'audio/*'\n break\n case 3:\n _accept = 'video/*'\n break\n }\n return _accept\n }\n})\n\nconst onDelete = () => {\n // 改成element-plus\n ElMessageBox.confirm('此操作将永久删除文件, 是否继续?', '提示', {\n confirmButtonText: '确定',\n cancelButtonText: '取消',\n }).then(() => {\n try {\n deleteAttachment(chooseFileId.value)\n .then((res) => {\n console.log(res)\n onGetAttachmentList()\n })\n .catch((res) => {\n console.log('deleteAttachment error', res)\n })\n } catch (e) {\n console.log(e)\n }\n })\n}\n/** ****************分组data****************/\n// 分组列表\nconst groupList = ref<any>([])\n// 选中分组\n/** **********分组的函数****************/\n\nconst groupFormUrl = computed(() => {\n if (groupId.value === 0) {\n return {\n url: globalConfig.ApiUrl + '/adminapi/attachment/group/create',\n method: 'get',\n }\n } else {\n return {\n url: globalConfig.ApiUrl + '/adminapi/attachment/group/' + groupId.value + '/edit',\n method: 'get',\n }\n }\n})\n\nconst groupForm = ref()\n\nconst addGroup = () => {\n // TODO 添加文件分组\n groupId.value = 0\n groupForm.value.show()\n}\n\nconst delGroup = (id: number) => {\n // 改为Vue3\n ElMessageBox.confirm('此操作将永久删除该分组, 是否继续?', '提示', {\n confirmButtonText: '确定',\n cancelButtonText: '取消',\n type: 'warning',\n }).then(() => {\n try {\n delAttachmentGroup(id)\n .then((res) => {\n ElMessage.success(res.msg)\n onsubmit()\n })\n .catch(() => {})\n } catch (e) {\n console.log(e)\n }\n })\n}\n\nconst editGroup = () => {\n groupForm.value.show()\n}\n\nconst onsubmit = () => {\n getGroupList()\n onGetAttachmentList()\n}\n\nconst selectGroup = (id: number) => {\n groupId.value = id\n page.value = 1\n onGetAttachmentList()\n}\n\nconst getGroupList = async () => {\n try {\n const res = await getAttachmentGroupList(_type.value)\n groupList.value = res.data\n } catch (e) {}\n}\n\n/** ****************附件列表*********************/\nconst loading = ref(true)\nconst list = ref<any>([])\nconst page = ref(1)\nconst count = ref(0)\nconst size = ref(10)\nconst contextMenuId = ref(0)\nconst groupId = ref(0)\n\n/** ***************列表函数*******************/\n\n// const editAttachment = () => {\n// // TODO 编辑附件\n// }\n\nconst handleSizeChange = (val: number) => {\n size.value = val\n onGetAttachmentList()\n}\n\n// 改变页码\nconst handleCurrentChange = (val: number) => {\n page.value = val\n onGetAttachmentList()\n}\nconst onGetAttachmentList = async (search = {}) => {\n clearChoose()\n try {\n const res = await getAttachmentList(page.value, size.value, _type.value, groupId.value, search)\n list.value = res.data\n count.value = res.msg\n loading.value = false\n } catch (e) {}\n}\n\nconst clearChoose = () => {\n chooseFileKey.value = []\n chooseFileId.value = []\n chooseFileList.value = []\n}\n\nconst chooseAttachment = (item: any, key: number) => {\n const index = chooseFileKey.value.indexOf(key)\n if (index > -1) {\n chooseFileKey.value.splice(index, 1)\n chooseFileId.value.splice(index, 1)\n chooseFileList.value.splice(index, 1)\n } else {\n chooseFileKey.value.push(key)\n chooseFileId.value.push(item.id)\n chooseFileList.value.push(item)\n }\n}\n\nonMounted(() => {\n getGroupList()\n onGetAttachmentList()\n})\n\ndefineExpose({\n chooseFileId,\n chooseFileKey,\n chooseFileList,\n clearChoose,\n})\n</script>\n"],"names":["__MACROS_defineComponent","computed","getAttachmentType","ref","getGlobalConfig","reactive","groupId","moveAttachment","ElMessage","_accept","ElMessageBox","deleteAttachment","delAttachmentGroup","getAttachmentGroupList","getAttachmentList","onMounted"],"mappings":"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"}
1
+ {"version":3,"file":"attachment.vue2.js","sources":["../../../src/attachment/src/attachment.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkAttachment',\n});\n</script>\n<template>\n <div class=\"dk-attachment attachment\">\n <!-- 顶部-->\n <div class=\"attachment-header flex justify-between pt-5px pb-5px\">\n <div class=\"header-form z\">\n <el-input v-model=\"searchFileName\" size=\"default\" placeholder=\"请输入附件名称\" class=\"input-with-select\">\n <template #append>\n <el-button :icon=\"Search\" />\n </template>\n </el-input>\n </div>\n <div class=\"header-button y\">\n <el-dropdown class=\"mr\" trigger=\"click\" @command=\"handleMoveAttachment\">\n <el-button size=\"default\" type=\"info\" :disabled=\"chooseFileKey.length <= 0\"> 移动 </el-button>\n <template #dropdown>\n <el-dropdown-menu>\n <el-dropdown-item v-for=\"(item, key) in groupList\" :key=\"key\" :command=\"item.id\">\n {{ item.name }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </template>\n </el-dropdown>\n <el-button size=\"default\" type=\"danger\" :disabled=\"chooseFileKey.length <= 0\" @click=\"onDelete\"\n >删除<i class=\"el-icon-delete el-icon--right\"></i\n ></el-button>\n <el-upload\n ref=\"upload\"\n class=\"dk-upload-button\"\n :action=\"uploadUrl\"\n multiple\n :data=\"data\"\n :show-file-list=\"false\"\n :headers=\"headers\"\n :on-success=\"handleUploadSuccess\"\n :accept=\"_accept\"\n list-type=\"text\"\n >\n <el-button type=\"primary\" size=\"default\">上传<i class=\"el-icon-upload el-icon--right\"></i></el-button>\n </el-upload>\n </div>\n </div>\n <!--内部-->\n <div class=\"attachment-content flex\">\n <!-- 分组-->\n <div class=\"attachment-group\">\n <h5 class=\"cursor-pointer flex items-center content-center\" @click=\"addGroup()\">\n 附件分组\n <el-icon class=\"m-l-5px\"><CirclePlusFilled /></el-icon>\n </h5>\n <ul class=\"group_list\">\n <li\n v-for=\"(item, key) in groupList\"\n :key=\"key\"\n :class=\"{ active: groupId === item.id }\"\n @click=\"selectGroup(item.id)\"\n >\n <dk-icon v-if=\"item.id === groupId\" icon=\"flat-color-icons:opened-folder\" />\n <dk-icon v-else icon=\"flat-color-icons:folder\" />\n\n <span class=\"ml-10px\">{{ item.name }}</span>\n\n <el-popover placement=\"right\" trigger=\"click\">\n <template #reference>\n <div class=\"op\">\n <el-icon v-if=\"item.id > 0\">\n <Tools />\n </el-icon>\n </div>\n </template>\n <template #default>\n <el-button size=\"small\" type=\"primary\" @click.stop=\"editGroup()\">编辑 </el-button>\n <el-button size=\"small\" type=\"danger\" @click=\"delGroup(item.id)\">删除</el-button>\n </template>\n </el-popover>\n </li>\n </ul>\n </div>\n <!-- 列表-->\n <div class=\"attachment-container\">\n <div v-if=\"loading || list.length > 0\" v-loading=\"loading\" class=\"p2\">\n <ul class=\"attachment-list cl\" :style=\"{ overflow: list.length > 10 ? 'auto' : '' }\">\n <li\n v-for=\"(item, key) in list\"\n :key=\"key\"\n :class=\"{ choose: chooseFileKey.indexOf(key) > -1 }\"\n @click=\"chooseAttachment(item, key)\"\n @contextmenu.prevent=\"contextMenuId = item.id\"\n >\n <div class=\"file\">\n <el-image v-if=\"item.type === 1\" class=\"file\" :src=\"item.url\" fit=\"contain\">\n <template #placeholder>\n <div class=\"u-m-t-30\">\n <i class=\"el-icon-loading\"></i>\n <span>加载中</span>\n </div>\n </template>\n </el-image>\n <div v-if=\"item.type === 2\">\n <dk-file-icon :file-name=\"item.filename\" :type=\"item.type\" />\n </div>\n <div v-if=\"item.type === 3\">\n <dk-file-icon :file-name=\"item.filename\" :type=\"item.type\" />\n </div>\n <div v-if=\"item.type === 0\">\n <dk-file-icon :file-name=\"item.filename\" />\n </div>\n </div>\n <div class=\"file-name over\">{{ item.name }}</div>\n <div class=\"right\">\n <el-icon>\n <Check />\n </el-icon>\n </div>\n </li>\n </ul>\n <div class=\"block p-10px\">\n <el-pagination\n :current-page=\"page\"\n layout=\"total, prev, pager, next, jumper,sizes\"\n :total=\"count\"\n :page-size=\"size\"\n @size-change=\"handleSizeChange\"\n @current-change=\"handleCurrentChange\"\n />\n </div>\n </div>\n <div v-else style=\"display: flex; align-items: center; justify-content: center; height: 340px\">\n <el-empty description=\"暂无数据\" />\n </div>\n <dk-form ref=\"groupForm\" :key=\"groupId\" :form-url=\"groupFormUrl\" :is-dialog=\"true\" @submit=\"onsubmit()\" />\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, reactive, onMounted, computed } from 'vue'\nimport {\n deleteAttachment,\n getAttachmentGroupList,\n getAttachmentList,\n moveAttachment,\n delAttachmentGroup,\n} from '../../api'\n\nimport { ElMessage, ElMessageBox } from 'element-plus'\nimport DkFileIcon from './file-icon.vue'\n\nimport { Search } from '@element-plus/icons-vue'\n\nimport { getAttachmentType, getGlobalConfig } from '@vipl520/utils'\nimport { attachmentProps } from './props'\n\n\n\nconst props = defineProps(attachmentProps)\n\nconst _type = computed(() => {\n return getAttachmentType(props.type)\n})\n\n/** ****************顶部data****************/\n// 搜索的文件名\nconst searchFileName = ref('')\n// 选择文件Key\nconst chooseFileKey = ref<number[]>([])\n// 选中文件列表\nconst chooseFileList = ref<any[]>([])\n// 选中文件ID\nconst chooseFileId = ref<number[]>([])\nconst globalConfig = getGlobalConfig()\n// 上传的地址\nconst uploadUrl = globalConfig.ApiUrl + '/adminapi/attachment/upload'\nconst headers = {\n 'Access-Token': globalConfig.AccessToken,\n}\n// 上传的ref\nconst upload = ref()\n// 上传的数据\nconst data = reactive({\n type: _type.value,\n file: 'file',\n group_id: 0,\n})\n\n/** *****顶部的函数****************/\n\nconst handleMoveAttachment = (groupId: number) => {\n moveAttachment(chooseFileId.value, groupId).then((res) => {\n ElMessage.success(res.msg)\n onGetAttachmentList()\n })\n}\n\nconst handleUploadSuccess = (res: any) => {\n console.log('res', res)\n if (res.code === 0) {\n ElMessage.success(res.msg)\n // upload.value.clearFiles()\n onGetAttachmentList()\n } else {\n ElMessage.error(res.msg)\n }\n}\n\nconst _accept = computed(() => {\n let _accept = ''\n if (props.accept) {\n return props.accept\n } else {\n switch (_type.value) {\n case 0:\n break\n case 1:\n _accept = 'image/*'\n break\n case 2:\n _accept = 'audio/*'\n break\n case 3:\n _accept = 'video/*'\n break\n }\n return _accept\n }\n})\n\nconst onDelete = () => {\n // 改成element-plus\n ElMessageBox.confirm('此操作将永久删除文件, 是否继续?', '提示', {\n confirmButtonText: '确定',\n cancelButtonText: '取消',\n }).then(() => {\n try {\n deleteAttachment(chooseFileId.value)\n .then((res) => {\n console.log(res)\n onGetAttachmentList()\n })\n .catch((res) => {\n console.log('deleteAttachment error', res)\n })\n } catch (e) {\n console.log(e)\n }\n })\n}\n/** ****************分组data****************/\n// 分组列表\nconst groupList = ref<any>([])\n// 选中分组\n/** **********分组的函数****************/\n\nconst groupFormUrl = computed(() => {\n if (groupId.value === 0) {\n return {\n url: globalConfig.ApiUrl + '/adminapi/attachment/group/create',\n method: 'get',\n }\n } else {\n return {\n url: globalConfig.ApiUrl + '/adminapi/attachment/group/' + groupId.value + '/edit',\n method: 'get',\n }\n }\n})\n\nconst groupForm = ref()\n\nconst addGroup = () => {\n // TODO 添加文件分组\n groupId.value = 0\n groupForm.value.show()\n}\n\nconst delGroup = (id: number) => {\n // 改为Vue3\n ElMessageBox.confirm('此操作将永久删除该分组, 是否继续?', '提示', {\n confirmButtonText: '确定',\n cancelButtonText: '取消',\n type: 'warning',\n }).then(() => {\n try {\n delAttachmentGroup(id)\n .then((res) => {\n ElMessage.success(res.msg)\n onsubmit()\n })\n .catch(() => {})\n } catch (e) {\n console.log(e)\n }\n })\n}\n\nconst editGroup = () => {\n groupForm.value.show()\n}\n\nconst onsubmit = () => {\n getGroupList()\n onGetAttachmentList()\n}\n\nconst selectGroup = (id: number) => {\n groupId.value = id\n page.value = 1\n onGetAttachmentList()\n}\n\nconst getGroupList = async () => {\n try {\n const res = await getAttachmentGroupList(_type.value)\n groupList.value = res.data\n } catch (e) {}\n}\n\n/** ****************附件列表*********************/\nconst loading = ref(true)\nconst list = ref<any>([])\nconst page = ref(1)\nconst count = ref(0)\nconst size = ref(10)\nconst contextMenuId = ref(0)\nconst groupId = ref(0)\n\n/** ***************列表函数*******************/\n\n// const editAttachment = () => {\n// // TODO 编辑附件\n// }\n\nconst handleSizeChange = (val: number) => {\n size.value = val\n onGetAttachmentList()\n}\n\n// 改变页码\nconst handleCurrentChange = (val: number) => {\n page.value = val\n onGetAttachmentList()\n}\nconst onGetAttachmentList = async (search = {}) => {\n clearChoose()\n try {\n const res = await getAttachmentList(page.value, size.value, _type.value, groupId.value, search)\n list.value = res.data\n count.value = res.msg\n loading.value = false\n } catch (e) {}\n}\n\nconst clearChoose = () => {\n chooseFileKey.value = []\n chooseFileId.value = []\n chooseFileList.value = []\n}\n\nconst chooseAttachment = (item: any, key: number) => {\n const index = chooseFileKey.value.indexOf(key)\n if (index > -1) {\n chooseFileKey.value.splice(index, 1)\n chooseFileId.value.splice(index, 1)\n chooseFileList.value.splice(index, 1)\n } else {\n chooseFileKey.value.push(key)\n chooseFileId.value.push(item.id)\n chooseFileList.value.push(item)\n }\n}\n\nonMounted(() => {\n getGroupList()\n onGetAttachmentList()\n})\n\ndefineExpose({\n chooseFileId,\n chooseFileKey,\n chooseFileList,\n clearChoose,\n})\n</script>\n"],"names":["__MACROS_defineComponent","computed","getAttachmentType","ref","getGlobalConfig","reactive","groupId","moveAttachment","ElMessage","_accept","ElMessageBox","deleteAttachment","delAttachmentGroup","getAttachmentGroupList","getAttachmentList","onMounted"],"mappings":"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"}
@@ -64,6 +64,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
64
64
  vue.createElementVNode("div", _hoisted_1, [
65
65
  vue.createVNode(_component_el_button, {
66
66
  type: "primary",
67
+ size: "default",
67
68
  onClick: _cache[0] || (_cache[0] = ($event) => confirm())
68
69
  }, {
69
70
  default: vue.withCtx(() => [
@@ -73,6 +74,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
73
74
  /* STABLE */
74
75
  }),
75
76
  vue.createVNode(_component_el_button, {
77
+ size: "default",
76
78
  onClick: _cache[1] || (_cache[1] = ($event) => cancel())
77
79
  }, {
78
80
  default: vue.withCtx(() => [
@@ -1 +1 @@
1
- {"version":3,"file":"attachment-dialog.vue2.js","sources":["../../../src/attachment-dialog/src/attachment-dialog.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkAttachmentDialog',\n});\n</script>\n<template>\n <DkDialog v-model=\"dialogVisible\" :class=\"bem()\" :title=\"title\" width=\"1040px\" :fullscreen=\"false\" :z-index=\"zIndex\">\n <dk-attachment ref=\"attachment\" :type=\"_type\" />\n <div class=\"text-center m2\">\n <el-button type=\"primary\" @click=\"confirm()\">确定</el-button>\n <el-button @click=\"cancel()\">关闭</el-button>\n </div>\n </DkDialog>\n</template>\n\n<script lang=\"ts\" setup>\nimport { createNamespace, getAttachmentTitle, getAttachmentType } from '@vipl520/utils'\nimport { attachmentDialogProps } from './props'\nimport { ref } from 'vue'\nimport { ElMessage } from 'element-plus'\nconst [_, bem] = createNamespace('attachment-dialog')\n\n\n\nconst props = defineProps(attachmentDialogProps)\nconst attachment = ref()\nconst dialogVisible = ref(false)\nconst title = ref(props.title || getAttachmentTitle(props.type))\n\nconst _type = ref(getAttachmentType(props.type))\n\nconst emit = defineEmits(['confirm'])\n\nconst confirm = () => {\n if (attachment.value.chooseFileList.length > 0) {\n emit('confirm', attachment.value.chooseFileList || [])\n dialogVisible.value = false\n } else {\n ElMessage.warning({ message: '请先选择文件' })\n }\n}\n\n// 关闭\nconst cancel = () => {\n dialogVisible.value = false\n}\n\nconst open = () => {\n dialogVisible.value = true\n}\n\ndefineExpose({\n dialogVisible,\n attachment,\n cancel,\n open,\n})\n</script>\n"],"names":["__MACROS_defineComponent","createNamespace","ref","getAttachmentTitle","getAttachmentType","ElMessage"],"mappings":";;;;;;;;;;AAEA,MAA6B,cAAAA,mBAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,oBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AAiBD,IAAA,MAAM,CAAC,CAAA,EAAG,GAAG,CAAA,GAAIC,sBAAgB,mBAAmB,CAAA,CAAA;AAKpD,IAAA,MAAM,aAAaC,OAAI,EAAA,CAAA;AACvB,IAAM,MAAA,aAAA,GAAgBA,QAAI,KAAK,CAAA,CAAA;AAC/B,IAAA,MAAM,QAAQA,OAAI,CAAA,KAAA,CAAM,SAASC,wBAAmB,CAAA,KAAA,CAAM,IAAI,CAAC,CAAA,CAAA;AAE/D,IAAA,MAAM,KAAQ,GAAAD,OAAA,CAAIE,uBAAkB,CAAA,KAAA,CAAM,IAAI,CAAC,CAAA,CAAA;AAI/C,IAAA,MAAM,UAAU,MAAM;AACpB,MAAA,IAAI,UAAW,CAAA,KAAA,CAAM,cAAe,CAAA,MAAA,GAAS,CAAG,EAAA;AAC9C,QAAA,IAAA,CAAK,SAAW,EAAA,UAAA,CAAW,KAAM,CAAA,cAAA,IAAkB,EAAE,CAAA,CAAA;AACrD,QAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AAAA,OACjB,MAAA;AACL,QAAAC,qBAAA,CAAU,OAAQ,CAAA,EAAE,OAAS,EAAA,sCAAA,EAAU,CAAA,CAAA;AAAA,OACzC;AAAA,KACF,CAAA;AAGA,IAAA,MAAM,SAAS,MAAM;AACnB,MAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAA,MAAM,OAAO,MAAM;AACjB,MAAA,aAAA,CAAc,KAAQ,GAAA,IAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAa,QAAA,CAAA;AAAA,MACX,aAAA;AAAA,MACA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,IAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"attachment-dialog.vue2.js","sources":["../../../src/attachment-dialog/src/attachment-dialog.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkAttachmentDialog',\n});\n</script>\n<template>\n <DkDialog v-model=\"dialogVisible\" :class=\"bem()\" :title=\"title\" width=\"1040px\" :fullscreen=\"false\" :z-index=\"zIndex\">\n <dk-attachment ref=\"attachment\" :type=\"_type\" />\n <div class=\"text-center m2\">\n <el-button type=\"primary\" size=\"default\" @click=\"confirm()\">确定</el-button>\n <el-button size=\"default\" @click=\"cancel()\">关闭</el-button>\n </div>\n </DkDialog>\n</template>\n\n<script lang=\"ts\" setup>\nimport { createNamespace, getAttachmentTitle, getAttachmentType } from '@vipl520/utils'\nimport { attachmentDialogProps } from './props'\nimport { ref } from 'vue'\nimport { ElMessage } from 'element-plus'\nconst [_, bem] = createNamespace('attachment-dialog')\n\n\n\nconst props = defineProps(attachmentDialogProps)\nconst attachment = ref()\nconst dialogVisible = ref(false)\nconst title = ref(props.title || getAttachmentTitle(props.type))\n\nconst _type = ref(getAttachmentType(props.type))\n\nconst emit = defineEmits(['confirm'])\n\nconst confirm = () => {\n if (attachment.value.chooseFileList.length > 0) {\n emit('confirm', attachment.value.chooseFileList || [])\n dialogVisible.value = false\n } else {\n ElMessage.warning({ message: '请先选择文件' })\n }\n}\n\n// 关闭\nconst cancel = () => {\n dialogVisible.value = false\n}\n\nconst open = () => {\n dialogVisible.value = true\n}\n\ndefineExpose({\n dialogVisible,\n attachment,\n cancel,\n open,\n})\n</script>\n"],"names":["__MACROS_defineComponent","createNamespace","ref","getAttachmentTitle","getAttachmentType","ElMessage"],"mappings":";;;;;;;;;;AAEA,MAA6B,cAAAA,mBAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,oBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AAiBD,IAAA,MAAM,CAAC,CAAA,EAAG,GAAG,CAAA,GAAIC,sBAAgB,mBAAmB,CAAA,CAAA;AAKpD,IAAA,MAAM,aAAaC,OAAI,EAAA,CAAA;AACvB,IAAM,MAAA,aAAA,GAAgBA,QAAI,KAAK,CAAA,CAAA;AAC/B,IAAA,MAAM,QAAQA,OAAI,CAAA,KAAA,CAAM,SAASC,wBAAmB,CAAA,KAAA,CAAM,IAAI,CAAC,CAAA,CAAA;AAE/D,IAAA,MAAM,KAAQ,GAAAD,OAAA,CAAIE,uBAAkB,CAAA,KAAA,CAAM,IAAI,CAAC,CAAA,CAAA;AAI/C,IAAA,MAAM,UAAU,MAAM;AACpB,MAAA,IAAI,UAAW,CAAA,KAAA,CAAM,cAAe,CAAA,MAAA,GAAS,CAAG,EAAA;AAC9C,QAAA,IAAA,CAAK,SAAW,EAAA,UAAA,CAAW,KAAM,CAAA,cAAA,IAAkB,EAAE,CAAA,CAAA;AACrD,QAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AAAA,OACjB,MAAA;AACL,QAAAC,qBAAA,CAAU,OAAQ,CAAA,EAAE,OAAS,EAAA,sCAAA,EAAU,CAAA,CAAA;AAAA,OACzC;AAAA,KACF,CAAA;AAGA,IAAA,MAAM,SAAS,MAAM;AACnB,MAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAA,MAAM,OAAO,MAAM;AACjB,MAAA,aAAA,CAAc,KAAQ,GAAA,IAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAa,QAAA,CAAA;AAAA,MACX,aAAA;AAAA,MACA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,IAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -324,12 +324,24 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
324
324
  icon: "Plus",
325
325
  plain: "",
326
326
  onClick: add
327
+ }, {
328
+ default: vue.withCtx(() => [
329
+ vue.createTextVNode("\u589E\u52A0")
330
+ ]),
331
+ _: 1
332
+ /* STABLE */
327
333
  }),
328
334
  vue.createVNode(_component_el_button, {
329
335
  icon: "Delete",
330
336
  plain: "",
331
337
  onClick: ($event) => del(index, index + 1)
332
- }, null, 8, ["onClick"])
338
+ }, {
339
+ default: vue.withCtx(() => [
340
+ vue.createTextVNode("\u5220\u9664")
341
+ ]),
342
+ _: 2
343
+ /* DYNAMIC */
344
+ }, 1032, ["onClick"])
333
345
  ]),
334
346
  _: 2
335
347
  /* DYNAMIC */