@vipl520/dk-ui 1.0.67 → 1.0.68
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.js +6 -4
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/dist/index.min.mjs +1 -1
- package/dist/index.min.mjs.map +1 -1
- package/dist/index.mjs +6 -4
- package/dist/web-types.json +1 -1
- package/es/color-input/index.d.ts +9 -0
- package/es/color-input/src/color-input.vue.d.ts +9 -0
- package/es/color-input/src/color-input.vue2.mjs +2 -2
- package/es/color-input/src/color-input.vue2.mjs.map +1 -1
- package/es/color-input/src/props.d.ts +4 -0
- package/es/color-input/src/props.mjs +2 -1
- package/es/color-input/src/props.mjs.map +1 -1
- package/es/style-shadow-input/src/style-shadow-content.vue2.mjs +2 -1
- package/es/style-shadow-input/src/style-shadow-content.vue2.mjs.map +1 -1
- package/lib/color-input/index.d.ts +9 -0
- package/lib/color-input/src/color-input.vue.d.ts +9 -0
- package/lib/color-input/src/color-input.vue2.js +2 -2
- package/lib/color-input/src/color-input.vue2.js.map +1 -1
- package/lib/color-input/src/props.d.ts +4 -0
- package/lib/color-input/src/props.js +2 -1
- package/lib/color-input/src/props.js.map +1 -1
- package/lib/style-shadow-input/src/style-shadow-content.vue2.js +2 -1
- package/lib/style-shadow-input/src/style-shadow-content.vue2.js.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
@@ -1748,7 +1748,8 @@ const colorInputProps = {
|
|
1748
1748
|
showAlpha: { default: false, type: Boolean },
|
1749
1749
|
placeholder: makeStringProp(""),
|
1750
1750
|
// 'hsl' | 'hsv' | 'hex' | 'rgb' | 'hex' (when show-alpha is false) | 'rgb' (when show-alpha is true)
|
1751
|
-
colorFormat: makeStringProp("hex")
|
1751
|
+
colorFormat: makeStringProp("hex"),
|
1752
|
+
teleported: { default: true, type: Boolean }
|
1752
1753
|
};
|
1753
1754
|
|
1754
1755
|
const _hoisted_1$W = {
|
@@ -1787,10 +1788,10 @@ var _sfc_main$1d = /* @__PURE__ */ defineComponent({
|
|
1787
1788
|
createVNode(_component_el_color_picker, {
|
1788
1789
|
modelValue: data.value,
|
1789
1790
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => data.value = $event),
|
1790
|
-
teleported:
|
1791
|
+
teleported: _ctx.teleported,
|
1791
1792
|
"show-alpha": _ctx.showAlpha,
|
1792
1793
|
"color-format": _ctx.colorFormat
|
1793
|
-
}, null, 8, ["modelValue", "show-alpha", "color-format"]),
|
1794
|
+
}, null, 8, ["modelValue", "teleported", "show-alpha", "color-format"]),
|
1794
1795
|
createVNode(_component_el_input, {
|
1795
1796
|
modelValue: data.value,
|
1796
1797
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => data.value = $event),
|
@@ -7538,7 +7539,8 @@ var _sfc_main$P = /* @__PURE__ */ defineComponent({
|
|
7538
7539
|
createVNode(_component_dk_color_input, {
|
7539
7540
|
modelValue: form.color,
|
7540
7541
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => form.color = $event),
|
7541
|
-
"show-alpha": ""
|
7542
|
+
"show-alpha": "",
|
7543
|
+
teleported: false
|
7542
7544
|
}, null, 8, ["modelValue"])
|
7543
7545
|
]),
|
7544
7546
|
_: 1
|
package/dist/web-types.json
CHANGED
@@ -15,6 +15,10 @@ export declare const ColorInput: import("@vipl520/utils").WithInstall<import("vu
|
|
15
15
|
type: import("vue").PropType<string>;
|
16
16
|
default: string;
|
17
17
|
};
|
18
|
+
teleported: {
|
19
|
+
default: boolean;
|
20
|
+
type: BooleanConstructor;
|
21
|
+
};
|
18
22
|
}, {}, 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<{
|
19
23
|
modelValue: {
|
20
24
|
type: import("vue").PropType<string>;
|
@@ -32,6 +36,10 @@ export declare const ColorInput: import("@vipl520/utils").WithInstall<import("vu
|
|
32
36
|
type: import("vue").PropType<string>;
|
33
37
|
default: string;
|
34
38
|
};
|
39
|
+
teleported: {
|
40
|
+
default: boolean;
|
41
|
+
type: BooleanConstructor;
|
42
|
+
};
|
35
43
|
}>> & {
|
36
44
|
onInput?: ((...args: any[]) => any) | undefined;
|
37
45
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
@@ -41,6 +49,7 @@ export declare const ColorInput: import("@vipl520/utils").WithInstall<import("vu
|
|
41
49
|
placeholder: string;
|
42
50
|
showAlpha: boolean;
|
43
51
|
colorFormat: string;
|
52
|
+
teleported: boolean;
|
44
53
|
}, {}>>;
|
45
54
|
export default ColorInput;
|
46
55
|
export * from './src/props';
|
@@ -15,6 +15,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
15
15
|
type: import("vue").PropType<string>;
|
16
16
|
default: string;
|
17
17
|
};
|
18
|
+
teleported: {
|
19
|
+
default: boolean;
|
20
|
+
type: BooleanConstructor;
|
21
|
+
};
|
18
22
|
}, {}, 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<{
|
19
23
|
modelValue: {
|
20
24
|
type: import("vue").PropType<string>;
|
@@ -32,6 +36,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
32
36
|
type: import("vue").PropType<string>;
|
33
37
|
default: string;
|
34
38
|
};
|
39
|
+
teleported: {
|
40
|
+
default: boolean;
|
41
|
+
type: BooleanConstructor;
|
42
|
+
};
|
35
43
|
}>> & {
|
36
44
|
onInput?: ((...args: any[]) => any) | undefined;
|
37
45
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
@@ -41,5 +49,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
41
49
|
placeholder: string;
|
42
50
|
showAlpha: boolean;
|
43
51
|
colorFormat: string;
|
52
|
+
teleported: boolean;
|
44
53
|
}, {}>;
|
45
54
|
export default _default;
|
@@ -38,10 +38,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
38
38
|
createVNode(_component_el_color_picker, {
|
39
39
|
modelValue: data.value,
|
40
40
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => data.value = $event),
|
41
|
-
teleported:
|
41
|
+
teleported: _ctx.teleported,
|
42
42
|
"show-alpha": _ctx.showAlpha,
|
43
43
|
"color-format": _ctx.colorFormat
|
44
|
-
}, null, 8, ["modelValue", "show-alpha", "color-format"]),
|
44
|
+
}, null, 8, ["modelValue", "teleported", "show-alpha", "color-format"]),
|
45
45
|
createVNode(_component_el_input, {
|
46
46
|
modelValue: data.value,
|
47
47
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => data.value = $event),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"color-input.vue2.mjs","sources":["../../../src/color-input/src/color-input.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkColorInput',\n});\n</script>\n<template>\n <div style=\"display: flex\" class=\"dk-color-input\">\n <el-color-picker v-model=\"data\" :teleported=\"
|
1
|
+
{"version":3,"file":"color-input.vue2.mjs","sources":["../../../src/color-input/src/color-input.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkColorInput',\n});\n</script>\n<template>\n <div style=\"display: flex\" class=\"dk-color-input\">\n <el-color-picker v-model=\"data\" :teleported=\"teleported\" :show-alpha=\"showAlpha\" :color-format=\"colorFormat\" />\n <el-input v-model=\"data\" :placeholder=\"placeholder\" clearable style=\"width: 100%\" />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, watch } from 'vue'\nimport { createNamespace } from '@vipl520/utils'\nimport { colorInputProps } from './props'\n\nconst [_, bem] = createNamespace('color-input')\n\n\n\nconst props = defineProps(colorInputProps)\n\nconst data = ref(props.modelValue || '')\n\nconst emit = defineEmits(['input', 'update:modelValue', 'change'])\nwatch(\n () => props.modelValue,\n (val) => {\n data.value = val\n }\n)\nwatch(\n () => data.value,\n (val) => {\n emit('change', val)\n emit('update:modelValue', val)\n emit('input', val)\n }\n)\n</script>\n"],"names":["__MACROS_defineComponent"],"mappings":";;;;;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,cAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AAcD,IAAA,MAAM,CAAC,CAAA,EAAG,GAAG,CAAA,GAAI,gBAAgB,aAAa,CAAA,CAAA;AAM9C,IAAA,MAAM,IAAO,GAAA,GAAA,CAAI,KAAM,CAAA,UAAA,IAAc,EAAE,CAAA,CAAA;AAGvC,IAAA,KAAA;AAAA,MACE,MAAM,KAAM,CAAA,UAAA;AAAA,MACZ,CAAC,GAAQ,KAAA;AACP,QAAA,IAAA,CAAK,KAAQ,GAAA,GAAA,CAAA;AAAA,OACf;AAAA,KACF,CAAA;AACA,IAAA,KAAA;AAAA,MACE,MAAM,IAAK,CAAA,KAAA;AAAA,MACX,CAAC,GAAQ,KAAA;AACP,QAAA,IAAA,CAAK,UAAU,GAAG,CAAA,CAAA;AAClB,QAAA,IAAA,CAAK,qBAAqB,GAAG,CAAA,CAAA;AAC7B,QAAA,IAAA,CAAK,SAAS,GAAG,CAAA,CAAA;AAAA,OACnB;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -19,5 +19,9 @@ export declare const colorInputProps: {
|
|
19
19
|
type: import("vue").PropType<string>;
|
20
20
|
default: string;
|
21
21
|
};
|
22
|
+
teleported: {
|
23
|
+
default: boolean;
|
24
|
+
type: BooleanConstructor;
|
25
|
+
};
|
22
26
|
};
|
23
27
|
export type ColorInputProps = ExtractPropTypes<typeof colorInputProps>;
|
@@ -8,7 +8,8 @@ const colorInputProps = {
|
|
8
8
|
showAlpha: { default: false, type: Boolean },
|
9
9
|
placeholder: makeStringProp(""),
|
10
10
|
// 'hsl' | 'hsv' | 'hex' | 'rgb' | 'hex' (when show-alpha is false) | 'rgb' (when show-alpha is true)
|
11
|
-
colorFormat: makeStringProp("hex")
|
11
|
+
colorFormat: makeStringProp("hex"),
|
12
|
+
teleported: { default: true, type: Boolean }
|
12
13
|
};
|
13
14
|
|
14
15
|
export { colorInputProps };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"props.mjs","sources":["../../../src/color-input/src/props.ts"],"sourcesContent":["import { makeStringProp } from 'vant/es/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const colorInputProps = {\n /**\n * 类型定义\n */\n modelValue: makeStringProp(''),\n showAlpha: { default: false, type: Boolean },\n placeholder: makeStringProp(''),\n // 'hsl' | 'hsv' | 'hex' | 'rgb' | 'hex' (when show-alpha is false) | 'rgb' (when show-alpha is true)\n colorFormat: makeStringProp('hex'),\n}\n\nexport type ColorInputProps = ExtractPropTypes<typeof colorInputProps>\n"],"names":[],"mappings":";;AAGO,MAAM,eAAkB,GAAA;AAAA;AAAA;AAAA;AAAA,EAI7B,UAAA,EAAY,eAAe,EAAE,CAAA;AAAA,EAC7B,SAAW,EAAA,EAAE,OAAS,EAAA,KAAA,EAAO,MAAM,OAAQ,EAAA;AAAA,EAC3C,WAAA,EAAa,eAAe,EAAE,CAAA;AAAA;AAAA,EAE9B,WAAA,EAAa,eAAe,KAAK,CAAA;
|
1
|
+
{"version":3,"file":"props.mjs","sources":["../../../src/color-input/src/props.ts"],"sourcesContent":["import { makeStringProp } from 'vant/es/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const colorInputProps = {\n /**\n * 类型定义\n */\n modelValue: makeStringProp(''),\n showAlpha: { default: false, type: Boolean },\n placeholder: makeStringProp(''),\n // 'hsl' | 'hsv' | 'hex' | 'rgb' | 'hex' (when show-alpha is false) | 'rgb' (when show-alpha is true)\n colorFormat: makeStringProp('hex'),\n teleported: { default: true, type: Boolean },\n}\n\nexport type ColorInputProps = ExtractPropTypes<typeof colorInputProps>\n"],"names":[],"mappings":";;AAGO,MAAM,eAAkB,GAAA;AAAA;AAAA;AAAA;AAAA,EAI7B,UAAA,EAAY,eAAe,EAAE,CAAA;AAAA,EAC7B,SAAW,EAAA,EAAE,OAAS,EAAA,KAAA,EAAO,MAAM,OAAQ,EAAA;AAAA,EAC3C,WAAA,EAAa,eAAe,EAAE,CAAA;AAAA;AAAA,EAE9B,WAAA,EAAa,eAAe,KAAK,CAAA;AAAA,EACjC,UAAY,EAAA,EAAE,OAAS,EAAA,IAAA,EAAM,MAAM,OAAQ,EAAA;AAC7C;;;;"}
|
@@ -210,7 +210,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
210
210
|
createVNode(_component_dk_color_input, {
|
211
211
|
modelValue: form.color,
|
212
212
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => form.color = $event),
|
213
|
-
"show-alpha": ""
|
213
|
+
"show-alpha": "",
|
214
|
+
teleported: false
|
214
215
|
}, null, 8, ["modelValue"])
|
215
216
|
]),
|
216
217
|
_: 1
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"style-shadow-content.vue2.mjs","sources":["../../../src/style-shadow-input/src/style-shadow-content.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkStyleShadowContent',\n});\n</script>\n<template>\n <div ref=\"el\" class=\"dk-style-shadow-content\" :style=\"{ '--shadow-box-width': boxSize + 'px' }\">\n <el-form label-width=\"60px\" label-position=\"left\" class=\"shadow-form-content\" :size=\"size\">\n <el-form-item label=\"模式\">\n <el-radio-group v-model=\"form.type\">\n <el-radio-button value=\"external\">外部</el-radio-button>\n <el-radio-button value=\"inset\">内部</el-radio-button>\n </el-radio-group>\n </el-form-item>\n <el-form-item label=\"颜色\">\n <dk-color-input v-model=\"form.color\" show-alpha></dk-color-input>\n </el-form-item>\n <el-form-item label=\"x轴\">\n <div class=\"flex\">\n <el-input v-model=\"form.x\" type=\"number\"> </el-input>\n <el-select v-model=\"form.x_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"y轴\">\n <div class=\"flex\">\n <el-input v-model=\"form.y\" type=\"number\"> </el-input>\n <el-select v-model=\"form.y_unit\" placeholder=\"请选择\" class=\"w-40px\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"模糊\">\n <div class=\"flex\">\n <el-input v-model=\"form.vague\" type=\"number\"> </el-input>\n <el-select v-model=\"form.vague_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"扩展\">\n <div class=\"flex\">\n <el-input v-model=\"form.extend\" type=\"number\"> </el-input>\n <el-select v-model=\"form.extend_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n </el-form>\n <div class=\"shadow-content-shortcut\">\n <div class=\"default-css m-b-10px\">\n <div class=\"m-b-10px\">常用样式</div>\n <el-button v-for=\"(item, key) in props.defaultStyles\" :key=\"key\" size=\"small\" @click=\"setStyle(item)\">{{\n item.label\n }}</el-button>\n </div>\n <div\n ref=\"box\"\n class=\"shadow-content-box\"\n :class=\"down ? 'down' : ''\"\n :style=\"{ height: boxSize + 'px', width: boxSize + 'px' }\"\n @click=\"getMouseXY($event, 1)\"\n @mousedown=\"onMousedown\"\n @mouseup=\"down = false\"\n @mousemove=\"getMouseXY($event, 0)\"\n >\n <span id=\"spot\" :style=\"spotStyle\">\n <i id=\"center\" />\n </span>\n <span id=\"center-spot\" :style=\"{ top: boxSize / 2 + 'px', left: boxSize / 2 + 'px' }\" />\n <div class=\"x-hr\" :style=\"{ top: boxSize / 2 + 'px' }\" />\n <div class=\"y-hr\" :style=\"{ left: boxSize / 2 + 'px' }\" />\n <div class=\"line\" :style=\"lineStyle\" />\n </div>\n </div>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { computed, onMounted, reactive, ref, watch } from 'vue'\nimport { useElementSize } from '@vueuse/core'\nconst el: any = ref(null)\nconst { width } = useElementSize(el) // 当前组件宽度\n\n\n// interface StyleOption {\n// label: string\n// value: string\n// }\nconst props = defineProps({\n boxSize: {\n default: 180,\n type: Number,\n },\n size: {\n default: 'small',\n type: String,\n },\n max: {\n default: 24,\n type: Number,\n },\n modelValue: {\n default: '0px 0px 0px rgba(0, 0, 0, 0)',\n type: String,\n },\n defaultStyles: {\n default: () => {\n return [\n { label: '经典', value: '3px 5px 7px 2px #CBCBCBFF' },\n { label: '扁平', value: '4px 4px 3px -2px #E7E5E5FF' },\n { label: '立体', value: '1px 2px 4px 2px #979797FF' },\n ]\n },\n type: Array as () => any,\n },\n})\nconst form = reactive({\n color: '',\n type: 'external',\n x: 0,\n y: 0,\n vague: 0,\n extend: 0,\n x_unit: 'px',\n y_unit: 'px',\n vague_unit: 'px',\n extend_unit: 'px',\n})\n\nconst units = ['px', '%', 'rem', 'em', 'vw', 'vh']\nconst down = ref(false)\nconst position: any = reactive({\n left: 0,\n top: 0,\n})\n\nconst lineStyle = ref('')\nconst box = ref()\nconst spotStyle = computed(() => {\n return {\n left: position.left + 'px',\n top: position.top + 'px',\n }\n})\n\nconst getMouseXY = (e: any, force: any) => {\n if (down.value || force) {\n const _box = box.value.getBoundingClientRect()\n position.left = parseInt(String(e.clientX - _box.x))\n position.top = parseInt(String(e.clientY - _box.y))\n }\n}\n\nwatch(position, () => {\n form.x = parseInt(String(((position.left - props.boxSize / 2) / props.boxSize) * props.max))\n form.y = parseInt(String(((position.top - props.boxSize / 2) / props.boxSize) * props.max))\n})\nconst emit = defineEmits(['update:modelValue'])\nwatch(form, () => {\n let value = `${form.x}${form.x_unit} ${form.y}${form.y_unit} ${form.vague}${form.vague_unit} ${form.extend}${form.extend_unit} ${form.color}`\n if (form.type === 'inset') {\n value = value + ' inset'\n }\n emit('update:modelValue', value)\n})\nconst onMousedown = (e: any) => {\n getMouseXY(e, 1)\n down.value = true\n}\n\nconst initStyle = (modelValue: any) => {\n if (modelValue?.indexOf(' inset') > -1) {\n form.type = 'inset'\n modelValue = modelValue.replace(' inset', '')\n }\n const shadowData = modelValue.split('rgba')\n let color, shadowValues: any\n\n if (shadowData.length > 1) {\n // 将颜色值和其他阴影值进行分离\n color = 'rgba' + shadowData[1].trim()\n shadowValues = shadowData[0].trim().split(' ')\n } else {\n shadowValues = shadowData[0].trim().split(' ')\n color = shadowValues.pop()\n }\n form.color = color || '#000'\n form.x = parseInt(shadowValues[0]) || 0\n form.y = parseInt(shadowValues[1]) || 0\n form.vague = parseInt(shadowValues[2]) || 0\n form.extend = parseInt(shadowValues[3]) || 0\n\n const getUnit = (value: any) => {\n let unit = value?.replace(/[-\\d.]/g, '') || 'px'\n if (units.indexOf(unit) === -1) {\n unit = 'px'\n }\n return unit\n }\n form.x_unit = getUnit(shadowValues[0])\n form.y_unit = getUnit(shadowValues[1])\n form.vague_unit = getUnit(shadowValues[2])\n form.extend_unit = getUnit(shadowValues[3])\n position.left = props.boxSize / 2 + (form.x / props.max) * props.boxSize || 0\n position.top = props.boxSize / 2 + (form.y / props.max) * props.boxSize || 0\n}\n\nconst setStyle = (item: any) => {\n const style = item.value\n initStyle(style)\n}\n\nonMounted(() => {\n // let modelValue = props.modelValue\n initStyle(props.modelValue)\n})\n</script>\n"],"names":["__MACROS_defineComponent"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"style-shadow-content.vue2.mjs","sources":["../../../src/style-shadow-input/src/style-shadow-content.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkStyleShadowContent',\n});\n</script>\n<template>\n <div ref=\"el\" class=\"dk-style-shadow-content\" :style=\"{ '--shadow-box-width': boxSize + 'px' }\">\n <el-form label-width=\"60px\" label-position=\"left\" class=\"shadow-form-content\" :size=\"size\">\n <el-form-item label=\"模式\">\n <el-radio-group v-model=\"form.type\">\n <el-radio-button value=\"external\">外部</el-radio-button>\n <el-radio-button value=\"inset\">内部</el-radio-button>\n </el-radio-group>\n </el-form-item>\n <el-form-item label=\"颜色\">\n <dk-color-input v-model=\"form.color\" show-alpha :teleported=\"false\"></dk-color-input>\n </el-form-item>\n <el-form-item label=\"x轴\">\n <div class=\"flex\">\n <el-input v-model=\"form.x\" type=\"number\"> </el-input>\n <el-select v-model=\"form.x_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"y轴\">\n <div class=\"flex\">\n <el-input v-model=\"form.y\" type=\"number\"> </el-input>\n <el-select v-model=\"form.y_unit\" placeholder=\"请选择\" class=\"w-40px\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"模糊\">\n <div class=\"flex\">\n <el-input v-model=\"form.vague\" type=\"number\"> </el-input>\n <el-select v-model=\"form.vague_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"扩展\">\n <div class=\"flex\">\n <el-input v-model=\"form.extend\" type=\"number\"> </el-input>\n <el-select v-model=\"form.extend_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n </el-form>\n <div class=\"shadow-content-shortcut\">\n <div class=\"default-css m-b-10px\">\n <div class=\"m-b-10px\">常用样式</div>\n <el-button v-for=\"(item, key) in props.defaultStyles\" :key=\"key\" size=\"small\" @click=\"setStyle(item)\">{{\n item.label\n }}</el-button>\n </div>\n <div\n ref=\"box\"\n class=\"shadow-content-box\"\n :class=\"down ? 'down' : ''\"\n :style=\"{ height: boxSize + 'px', width: boxSize + 'px' }\"\n @click=\"getMouseXY($event, 1)\"\n @mousedown=\"onMousedown\"\n @mouseup=\"down = false\"\n @mousemove=\"getMouseXY($event, 0)\"\n >\n <span id=\"spot\" :style=\"spotStyle\">\n <i id=\"center\" />\n </span>\n <span id=\"center-spot\" :style=\"{ top: boxSize / 2 + 'px', left: boxSize / 2 + 'px' }\" />\n <div class=\"x-hr\" :style=\"{ top: boxSize / 2 + 'px' }\" />\n <div class=\"y-hr\" :style=\"{ left: boxSize / 2 + 'px' }\" />\n <div class=\"line\" :style=\"lineStyle\" />\n </div>\n </div>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { computed, onMounted, reactive, ref, watch } from 'vue'\nimport { useElementSize } from '@vueuse/core'\nconst el: any = ref(null)\nconst { width } = useElementSize(el) // 当前组件宽度\n\n\n// interface StyleOption {\n// label: string\n// value: string\n// }\nconst props = defineProps({\n boxSize: {\n default: 180,\n type: Number,\n },\n size: {\n default: 'small',\n type: String,\n },\n max: {\n default: 24,\n type: Number,\n },\n modelValue: {\n default: '0px 0px 0px rgba(0, 0, 0, 0)',\n type: String,\n },\n defaultStyles: {\n default: () => {\n return [\n { label: '经典', value: '3px 5px 7px 2px #CBCBCBFF' },\n { label: '扁平', value: '4px 4px 3px -2px #E7E5E5FF' },\n { label: '立体', value: '1px 2px 4px 2px #979797FF' },\n ]\n },\n type: Array as () => any,\n },\n})\nconst form = reactive({\n color: '',\n type: 'external',\n x: 0,\n y: 0,\n vague: 0,\n extend: 0,\n x_unit: 'px',\n y_unit: 'px',\n vague_unit: 'px',\n extend_unit: 'px',\n})\n\nconst units = ['px', '%', 'rem', 'em', 'vw', 'vh']\nconst down = ref(false)\nconst position: any = reactive({\n left: 0,\n top: 0,\n})\n\nconst lineStyle = ref('')\nconst box = ref()\nconst spotStyle = computed(() => {\n return {\n left: position.left + 'px',\n top: position.top + 'px',\n }\n})\n\nconst getMouseXY = (e: any, force: any) => {\n if (down.value || force) {\n const _box = box.value.getBoundingClientRect()\n position.left = parseInt(String(e.clientX - _box.x))\n position.top = parseInt(String(e.clientY - _box.y))\n }\n}\n\nwatch(position, () => {\n form.x = parseInt(String(((position.left - props.boxSize / 2) / props.boxSize) * props.max))\n form.y = parseInt(String(((position.top - props.boxSize / 2) / props.boxSize) * props.max))\n})\nconst emit = defineEmits(['update:modelValue'])\nwatch(form, () => {\n let value = `${form.x}${form.x_unit} ${form.y}${form.y_unit} ${form.vague}${form.vague_unit} ${form.extend}${form.extend_unit} ${form.color}`\n if (form.type === 'inset') {\n value = value + ' inset'\n }\n emit('update:modelValue', value)\n})\nconst onMousedown = (e: any) => {\n getMouseXY(e, 1)\n down.value = true\n}\n\nconst initStyle = (modelValue: any) => {\n if (modelValue?.indexOf(' inset') > -1) {\n form.type = 'inset'\n modelValue = modelValue.replace(' inset', '')\n }\n const shadowData = modelValue.split('rgba')\n let color, shadowValues: any\n\n if (shadowData.length > 1) {\n // 将颜色值和其他阴影值进行分离\n color = 'rgba' + shadowData[1].trim()\n shadowValues = shadowData[0].trim().split(' ')\n } else {\n shadowValues = shadowData[0].trim().split(' ')\n color = shadowValues.pop()\n }\n form.color = color || '#000'\n form.x = parseInt(shadowValues[0]) || 0\n form.y = parseInt(shadowValues[1]) || 0\n form.vague = parseInt(shadowValues[2]) || 0\n form.extend = parseInt(shadowValues[3]) || 0\n\n const getUnit = (value: any) => {\n let unit = value?.replace(/[-\\d.]/g, '') || 'px'\n if (units.indexOf(unit) === -1) {\n unit = 'px'\n }\n return unit\n }\n form.x_unit = getUnit(shadowValues[0])\n form.y_unit = getUnit(shadowValues[1])\n form.vague_unit = getUnit(shadowValues[2])\n form.extend_unit = getUnit(shadowValues[3])\n position.left = props.boxSize / 2 + (form.x / props.max) * props.boxSize || 0\n position.top = props.boxSize / 2 + (form.y / props.max) * props.boxSize || 0\n}\n\nconst setStyle = (item: any) => {\n const style = item.value\n initStyle(style)\n}\n\nonMounted(() => {\n // let modelValue = props.modelValue\n initStyle(props.modelValue)\n})\n</script>\n"],"names":["__MACROS_defineComponent"],"mappings":"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"}
|
@@ -15,6 +15,10 @@ export declare const ColorInput: import("@vipl520/utils").WithInstall<import("vu
|
|
15
15
|
type: import("vue").PropType<string>;
|
16
16
|
default: string;
|
17
17
|
};
|
18
|
+
teleported: {
|
19
|
+
default: boolean;
|
20
|
+
type: BooleanConstructor;
|
21
|
+
};
|
18
22
|
}, {}, 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<{
|
19
23
|
modelValue: {
|
20
24
|
type: import("vue").PropType<string>;
|
@@ -32,6 +36,10 @@ export declare const ColorInput: import("@vipl520/utils").WithInstall<import("vu
|
|
32
36
|
type: import("vue").PropType<string>;
|
33
37
|
default: string;
|
34
38
|
};
|
39
|
+
teleported: {
|
40
|
+
default: boolean;
|
41
|
+
type: BooleanConstructor;
|
42
|
+
};
|
35
43
|
}>> & {
|
36
44
|
onInput?: ((...args: any[]) => any) | undefined;
|
37
45
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
@@ -41,6 +49,7 @@ export declare const ColorInput: import("@vipl520/utils").WithInstall<import("vu
|
|
41
49
|
placeholder: string;
|
42
50
|
showAlpha: boolean;
|
43
51
|
colorFormat: string;
|
52
|
+
teleported: boolean;
|
44
53
|
}, {}>>;
|
45
54
|
export default ColorInput;
|
46
55
|
export * from './src/props';
|
@@ -15,6 +15,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
15
15
|
type: import("vue").PropType<string>;
|
16
16
|
default: string;
|
17
17
|
};
|
18
|
+
teleported: {
|
19
|
+
default: boolean;
|
20
|
+
type: BooleanConstructor;
|
21
|
+
};
|
18
22
|
}, {}, 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<{
|
19
23
|
modelValue: {
|
20
24
|
type: import("vue").PropType<string>;
|
@@ -32,6 +36,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
32
36
|
type: import("vue").PropType<string>;
|
33
37
|
default: string;
|
34
38
|
};
|
39
|
+
teleported: {
|
40
|
+
default: boolean;
|
41
|
+
type: BooleanConstructor;
|
42
|
+
};
|
35
43
|
}>> & {
|
36
44
|
onInput?: ((...args: any[]) => any) | undefined;
|
37
45
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
@@ -41,5 +49,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
41
49
|
placeholder: string;
|
42
50
|
showAlpha: boolean;
|
43
51
|
colorFormat: string;
|
52
|
+
teleported: boolean;
|
44
53
|
}, {}>;
|
45
54
|
export default _default;
|
@@ -42,10 +42,10 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
42
42
|
vue.createVNode(_component_el_color_picker, {
|
43
43
|
modelValue: data.value,
|
44
44
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => data.value = $event),
|
45
|
-
teleported:
|
45
|
+
teleported: _ctx.teleported,
|
46
46
|
"show-alpha": _ctx.showAlpha,
|
47
47
|
"color-format": _ctx.colorFormat
|
48
|
-
}, null, 8, ["modelValue", "show-alpha", "color-format"]),
|
48
|
+
}, null, 8, ["modelValue", "teleported", "show-alpha", "color-format"]),
|
49
49
|
vue.createVNode(_component_el_input, {
|
50
50
|
modelValue: data.value,
|
51
51
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => data.value = $event),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"color-input.vue2.js","sources":["../../../src/color-input/src/color-input.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkColorInput',\n});\n</script>\n<template>\n <div style=\"display: flex\" class=\"dk-color-input\">\n <el-color-picker v-model=\"data\" :teleported=\"
|
1
|
+
{"version":3,"file":"color-input.vue2.js","sources":["../../../src/color-input/src/color-input.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkColorInput',\n});\n</script>\n<template>\n <div style=\"display: flex\" class=\"dk-color-input\">\n <el-color-picker v-model=\"data\" :teleported=\"teleported\" :show-alpha=\"showAlpha\" :color-format=\"colorFormat\" />\n <el-input v-model=\"data\" :placeholder=\"placeholder\" clearable style=\"width: 100%\" />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, watch } from 'vue'\nimport { createNamespace } from '@vipl520/utils'\nimport { colorInputProps } from './props'\n\nconst [_, bem] = createNamespace('color-input')\n\n\n\nconst props = defineProps(colorInputProps)\n\nconst data = ref(props.modelValue || '')\n\nconst emit = defineEmits(['input', 'update:modelValue', 'change'])\nwatch(\n () => props.modelValue,\n (val) => {\n data.value = val\n }\n)\nwatch(\n () => data.value,\n (val) => {\n emit('change', val)\n emit('update:modelValue', val)\n emit('input', val)\n }\n)\n</script>\n"],"names":["__MACROS_defineComponent","createNamespace","ref","watch"],"mappings":";;;;;;;;;;;;AAEA,MAA6B,cAAAA,mBAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,cAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AAcD,IAAA,MAAM,CAAC,CAAA,EAAG,GAAG,CAAA,GAAIC,sBAAgB,aAAa,CAAA,CAAA;AAM9C,IAAA,MAAM,IAAO,GAAAC,OAAA,CAAI,KAAM,CAAA,UAAA,IAAc,EAAE,CAAA,CAAA;AAGvC,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,UAAA;AAAA,MACZ,CAAC,GAAQ,KAAA;AACP,QAAA,IAAA,CAAK,KAAQ,GAAA,GAAA,CAAA;AAAA,OACf;AAAA,KACF,CAAA;AACA,IAAAA,SAAA;AAAA,MACE,MAAM,IAAK,CAAA,KAAA;AAAA,MACX,CAAC,GAAQ,KAAA;AACP,QAAA,IAAA,CAAK,UAAU,GAAG,CAAA,CAAA;AAClB,QAAA,IAAA,CAAK,qBAAqB,GAAG,CAAA,CAAA;AAC7B,QAAA,IAAA,CAAK,SAAS,GAAG,CAAA,CAAA;AAAA,OACnB;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -19,5 +19,9 @@ export declare const colorInputProps: {
|
|
19
19
|
type: import("vue").PropType<string>;
|
20
20
|
default: string;
|
21
21
|
};
|
22
|
+
teleported: {
|
23
|
+
default: boolean;
|
24
|
+
type: BooleanConstructor;
|
25
|
+
};
|
22
26
|
};
|
23
27
|
export type ColorInputProps = ExtractPropTypes<typeof colorInputProps>;
|
@@ -10,7 +10,8 @@ const colorInputProps = {
|
|
10
10
|
showAlpha: { default: false, type: Boolean },
|
11
11
|
placeholder: utils.makeStringProp(""),
|
12
12
|
// 'hsl' | 'hsv' | 'hex' | 'rgb' | 'hex' (when show-alpha is false) | 'rgb' (when show-alpha is true)
|
13
|
-
colorFormat: utils.makeStringProp("hex")
|
13
|
+
colorFormat: utils.makeStringProp("hex"),
|
14
|
+
teleported: { default: true, type: Boolean }
|
14
15
|
};
|
15
16
|
|
16
17
|
exports.colorInputProps = colorInputProps;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"props.js","sources":["../../../src/color-input/src/props.ts"],"sourcesContent":["import { makeStringProp } from 'vant/es/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const colorInputProps = {\n /**\n * 类型定义\n */\n modelValue: makeStringProp(''),\n showAlpha: { default: false, type: Boolean },\n placeholder: makeStringProp(''),\n // 'hsl' | 'hsv' | 'hex' | 'rgb' | 'hex' (when show-alpha is false) | 'rgb' (when show-alpha is true)\n colorFormat: makeStringProp('hex'),\n}\n\nexport type ColorInputProps = ExtractPropTypes<typeof colorInputProps>\n"],"names":["makeStringProp"],"mappings":";;;;AAGO,MAAM,eAAkB,GAAA;AAAA;AAAA;AAAA;AAAA,EAI7B,UAAA,EAAYA,qBAAe,EAAE,CAAA;AAAA,EAC7B,SAAW,EAAA,EAAE,OAAS,EAAA,KAAA,EAAO,MAAM,OAAQ,EAAA;AAAA,EAC3C,WAAA,EAAaA,qBAAe,EAAE,CAAA;AAAA;AAAA,EAE9B,WAAA,EAAaA,qBAAe,KAAK,CAAA;
|
1
|
+
{"version":3,"file":"props.js","sources":["../../../src/color-input/src/props.ts"],"sourcesContent":["import { makeStringProp } from 'vant/es/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const colorInputProps = {\n /**\n * 类型定义\n */\n modelValue: makeStringProp(''),\n showAlpha: { default: false, type: Boolean },\n placeholder: makeStringProp(''),\n // 'hsl' | 'hsv' | 'hex' | 'rgb' | 'hex' (when show-alpha is false) | 'rgb' (when show-alpha is true)\n colorFormat: makeStringProp('hex'),\n teleported: { default: true, type: Boolean },\n}\n\nexport type ColorInputProps = ExtractPropTypes<typeof colorInputProps>\n"],"names":["makeStringProp"],"mappings":";;;;AAGO,MAAM,eAAkB,GAAA;AAAA;AAAA;AAAA;AAAA,EAI7B,UAAA,EAAYA,qBAAe,EAAE,CAAA;AAAA,EAC7B,SAAW,EAAA,EAAE,OAAS,EAAA,KAAA,EAAO,MAAM,OAAQ,EAAA;AAAA,EAC3C,WAAA,EAAaA,qBAAe,EAAE,CAAA;AAAA;AAAA,EAE9B,WAAA,EAAaA,qBAAe,KAAK,CAAA;AAAA,EACjC,UAAY,EAAA,EAAE,OAAS,EAAA,IAAA,EAAM,MAAM,OAAQ,EAAA;AAC7C;;;;"}
|
@@ -214,7 +214,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
214
214
|
vue.createVNode(_component_dk_color_input, {
|
215
215
|
modelValue: form.color,
|
216
216
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => form.color = $event),
|
217
|
-
"show-alpha": ""
|
217
|
+
"show-alpha": "",
|
218
|
+
teleported: false
|
218
219
|
}, null, 8, ["modelValue"])
|
219
220
|
]),
|
220
221
|
_: 1
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"style-shadow-content.vue2.js","sources":["../../../src/style-shadow-input/src/style-shadow-content.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkStyleShadowContent',\n});\n</script>\n<template>\n <div ref=\"el\" class=\"dk-style-shadow-content\" :style=\"{ '--shadow-box-width': boxSize + 'px' }\">\n <el-form label-width=\"60px\" label-position=\"left\" class=\"shadow-form-content\" :size=\"size\">\n <el-form-item label=\"模式\">\n <el-radio-group v-model=\"form.type\">\n <el-radio-button value=\"external\">外部</el-radio-button>\n <el-radio-button value=\"inset\">内部</el-radio-button>\n </el-radio-group>\n </el-form-item>\n <el-form-item label=\"颜色\">\n <dk-color-input v-model=\"form.color\" show-alpha></dk-color-input>\n </el-form-item>\n <el-form-item label=\"x轴\">\n <div class=\"flex\">\n <el-input v-model=\"form.x\" type=\"number\"> </el-input>\n <el-select v-model=\"form.x_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"y轴\">\n <div class=\"flex\">\n <el-input v-model=\"form.y\" type=\"number\"> </el-input>\n <el-select v-model=\"form.y_unit\" placeholder=\"请选择\" class=\"w-40px\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"模糊\">\n <div class=\"flex\">\n <el-input v-model=\"form.vague\" type=\"number\"> </el-input>\n <el-select v-model=\"form.vague_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"扩展\">\n <div class=\"flex\">\n <el-input v-model=\"form.extend\" type=\"number\"> </el-input>\n <el-select v-model=\"form.extend_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n </el-form>\n <div class=\"shadow-content-shortcut\">\n <div class=\"default-css m-b-10px\">\n <div class=\"m-b-10px\">常用样式</div>\n <el-button v-for=\"(item, key) in props.defaultStyles\" :key=\"key\" size=\"small\" @click=\"setStyle(item)\">{{\n item.label\n }}</el-button>\n </div>\n <div\n ref=\"box\"\n class=\"shadow-content-box\"\n :class=\"down ? 'down' : ''\"\n :style=\"{ height: boxSize + 'px', width: boxSize + 'px' }\"\n @click=\"getMouseXY($event, 1)\"\n @mousedown=\"onMousedown\"\n @mouseup=\"down = false\"\n @mousemove=\"getMouseXY($event, 0)\"\n >\n <span id=\"spot\" :style=\"spotStyle\">\n <i id=\"center\" />\n </span>\n <span id=\"center-spot\" :style=\"{ top: boxSize / 2 + 'px', left: boxSize / 2 + 'px' }\" />\n <div class=\"x-hr\" :style=\"{ top: boxSize / 2 + 'px' }\" />\n <div class=\"y-hr\" :style=\"{ left: boxSize / 2 + 'px' }\" />\n <div class=\"line\" :style=\"lineStyle\" />\n </div>\n </div>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { computed, onMounted, reactive, ref, watch } from 'vue'\nimport { useElementSize } from '@vueuse/core'\nconst el: any = ref(null)\nconst { width } = useElementSize(el) // 当前组件宽度\n\n\n// interface StyleOption {\n// label: string\n// value: string\n// }\nconst props = defineProps({\n boxSize: {\n default: 180,\n type: Number,\n },\n size: {\n default: 'small',\n type: String,\n },\n max: {\n default: 24,\n type: Number,\n },\n modelValue: {\n default: '0px 0px 0px rgba(0, 0, 0, 0)',\n type: String,\n },\n defaultStyles: {\n default: () => {\n return [\n { label: '经典', value: '3px 5px 7px 2px #CBCBCBFF' },\n { label: '扁平', value: '4px 4px 3px -2px #E7E5E5FF' },\n { label: '立体', value: '1px 2px 4px 2px #979797FF' },\n ]\n },\n type: Array as () => any,\n },\n})\nconst form = reactive({\n color: '',\n type: 'external',\n x: 0,\n y: 0,\n vague: 0,\n extend: 0,\n x_unit: 'px',\n y_unit: 'px',\n vague_unit: 'px',\n extend_unit: 'px',\n})\n\nconst units = ['px', '%', 'rem', 'em', 'vw', 'vh']\nconst down = ref(false)\nconst position: any = reactive({\n left: 0,\n top: 0,\n})\n\nconst lineStyle = ref('')\nconst box = ref()\nconst spotStyle = computed(() => {\n return {\n left: position.left + 'px',\n top: position.top + 'px',\n }\n})\n\nconst getMouseXY = (e: any, force: any) => {\n if (down.value || force) {\n const _box = box.value.getBoundingClientRect()\n position.left = parseInt(String(e.clientX - _box.x))\n position.top = parseInt(String(e.clientY - _box.y))\n }\n}\n\nwatch(position, () => {\n form.x = parseInt(String(((position.left - props.boxSize / 2) / props.boxSize) * props.max))\n form.y = parseInt(String(((position.top - props.boxSize / 2) / props.boxSize) * props.max))\n})\nconst emit = defineEmits(['update:modelValue'])\nwatch(form, () => {\n let value = `${form.x}${form.x_unit} ${form.y}${form.y_unit} ${form.vague}${form.vague_unit} ${form.extend}${form.extend_unit} ${form.color}`\n if (form.type === 'inset') {\n value = value + ' inset'\n }\n emit('update:modelValue', value)\n})\nconst onMousedown = (e: any) => {\n getMouseXY(e, 1)\n down.value = true\n}\n\nconst initStyle = (modelValue: any) => {\n if (modelValue?.indexOf(' inset') > -1) {\n form.type = 'inset'\n modelValue = modelValue.replace(' inset', '')\n }\n const shadowData = modelValue.split('rgba')\n let color, shadowValues: any\n\n if (shadowData.length > 1) {\n // 将颜色值和其他阴影值进行分离\n color = 'rgba' + shadowData[1].trim()\n shadowValues = shadowData[0].trim().split(' ')\n } else {\n shadowValues = shadowData[0].trim().split(' ')\n color = shadowValues.pop()\n }\n form.color = color || '#000'\n form.x = parseInt(shadowValues[0]) || 0\n form.y = parseInt(shadowValues[1]) || 0\n form.vague = parseInt(shadowValues[2]) || 0\n form.extend = parseInt(shadowValues[3]) || 0\n\n const getUnit = (value: any) => {\n let unit = value?.replace(/[-\\d.]/g, '') || 'px'\n if (units.indexOf(unit) === -1) {\n unit = 'px'\n }\n return unit\n }\n form.x_unit = getUnit(shadowValues[0])\n form.y_unit = getUnit(shadowValues[1])\n form.vague_unit = getUnit(shadowValues[2])\n form.extend_unit = getUnit(shadowValues[3])\n position.left = props.boxSize / 2 + (form.x / props.max) * props.boxSize || 0\n position.top = props.boxSize / 2 + (form.y / props.max) * props.boxSize || 0\n}\n\nconst setStyle = (item: any) => {\n const style = item.value\n initStyle(style)\n}\n\nonMounted(() => {\n // let modelValue = props.modelValue\n initStyle(props.modelValue)\n})\n</script>\n"],"names":["__MACROS_defineComponent","ref","useElementSize","reactive","computed","watch","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAA6B,cAAAA,mBAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,sBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8ED,IAAM,MAAA,EAAA,GAAUC,QAAI,IAAI,CAAA,CAAA;AACxB,IAAA,MAAM,EAAE,KAAA,EAAU,GAAAC,mBAAA,CAAe,EAAE,CAAA,CAAA;AAmCnC,IAAA,MAAM,OAAOC,YAAS,CAAA;AAAA,MACpB,KAAO,EAAA,EAAA;AAAA,MACP,IAAM,EAAA,UAAA;AAAA,MACN,CAAG,EAAA,CAAA;AAAA,MACH,CAAG,EAAA,CAAA;AAAA,MACH,KAAO,EAAA,CAAA;AAAA,MACP,MAAQ,EAAA,CAAA;AAAA,MACR,MAAQ,EAAA,IAAA;AAAA,MACR,MAAQ,EAAA,IAAA;AAAA,MACR,UAAY,EAAA,IAAA;AAAA,MACZ,WAAa,EAAA,IAAA;AAAA,KACd,CAAA,CAAA;AAED,IAAA,MAAM,QAAQ,CAAC,IAAA,EAAM,KAAK,KAAO,EAAA,IAAA,EAAM,MAAM,IAAI,CAAA,CAAA;AACjD,IAAM,MAAA,IAAA,GAAOF,QAAI,KAAK,CAAA,CAAA;AACtB,IAAA,MAAM,WAAgBE,YAAS,CAAA;AAAA,MAC7B,IAAM,EAAA,CAAA;AAAA,MACN,GAAK,EAAA,CAAA;AAAA,KACN,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,GAAYF,QAAI,EAAE,CAAA,CAAA;AACxB,IAAA,MAAM,MAAMA,OAAI,EAAA,CAAA;AAChB,IAAM,MAAA,SAAA,GAAYG,aAAS,MAAM;AAC/B,MAAO,OAAA;AAAA,QACL,IAAA,EAAM,SAAS,IAAO,GAAA,IAAA;AAAA,QACtB,GAAA,EAAK,SAAS,GAAM,GAAA,IAAA;AAAA,OACtB,CAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAM,MAAA,UAAA,GAAa,CAAC,CAAA,EAAQ,KAAe,KAAA;AACzC,MAAI,IAAA,IAAA,CAAK,SAAS,KAAO,EAAA;AACvB,QAAM,MAAA,IAAA,GAAO,GAAI,CAAA,KAAA,CAAM,qBAAsB,EAAA,CAAA;AAC7C,QAAA,QAAA,CAAS,OAAO,QAAS,CAAA,MAAA,CAAO,EAAE,OAAU,GAAA,IAAA,CAAK,CAAC,CAAC,CAAA,CAAA;AACnD,QAAA,QAAA,CAAS,MAAM,QAAS,CAAA,MAAA,CAAO,EAAE,OAAU,GAAA,IAAA,CAAK,CAAC,CAAC,CAAA,CAAA;AAAA,OACpD;AAAA,KACF,CAAA;AAEA,IAAAC,SAAA,CAAM,UAAU,MAAM;AACpB,MAAA,IAAA,CAAK,CAAI,GAAA,QAAA,CAAS,MAAS,CAAA,CAAA,QAAA,CAAS,IAAO,GAAA,KAAA,CAAM,OAAU,GAAA,CAAA,IAAK,KAAM,CAAA,OAAA,GAAW,KAAM,CAAA,GAAG,CAAC,CAAA,CAAA;AAC3F,MAAA,IAAA,CAAK,CAAI,GAAA,QAAA,CAAS,MAAS,CAAA,CAAA,QAAA,CAAS,GAAM,GAAA,KAAA,CAAM,OAAU,GAAA,CAAA,IAAK,KAAM,CAAA,OAAA,GAAW,KAAM,CAAA,GAAG,CAAC,CAAA,CAAA;AAAA,KAC3F,CAAA,CAAA;AAED,IAAAA,SAAA,CAAM,MAAM,MAAM;AAChB,MAAI,IAAA,KAAA,GAAQ,CAAG,EAAA,IAAA,CAAK,CAAC,CAAA,EAAG,IAAK,CAAA,MAAM,CAAI,CAAA,EAAA,IAAA,CAAK,CAAC,CAAA,EAAG,IAAK,CAAA,MAAM,CAAI,CAAA,EAAA,IAAA,CAAK,KAAK,CAAA,EAAG,IAAK,CAAA,UAAU,CAAI,CAAA,EAAA,IAAA,CAAK,MAAM,CAAA,EAAG,IAAK,CAAA,WAAW,CAAI,CAAA,EAAA,IAAA,CAAK,KAAK,CAAA,CAAA,CAAA;AAC3I,MAAI,IAAA,IAAA,CAAK,SAAS,OAAS,EAAA;AACzB,QAAA,KAAA,GAAQ,KAAQ,GAAA,QAAA,CAAA;AAAA,OAClB;AACA,MAAA,IAAA,CAAK,qBAAqB,KAAK,CAAA,CAAA;AAAA,KAChC,CAAA,CAAA;AACD,IAAM,MAAA,WAAA,GAAc,CAAC,CAAW,KAAA;AAC9B,MAAA,UAAA,CAAW,GAAG,CAAC,CAAA,CAAA;AACf,MAAA,IAAA,CAAK,KAAQ,GAAA,IAAA,CAAA;AAAA,KACf,CAAA;AAEA,IAAM,MAAA,SAAA,GAAY,CAAC,UAAoB,KAAA;AACrC,MAAA,IAAI,UAAY,EAAA,OAAA,CAAQ,QAAQ,CAAA,GAAI,CAAI,CAAA,EAAA;AACtC,QAAA,IAAA,CAAK,IAAO,GAAA,OAAA,CAAA;AACZ,QAAa,UAAA,GAAA,UAAA,CAAW,OAAQ,CAAA,QAAA,EAAU,EAAE,CAAA,CAAA;AAAA,OAC9C;AACA,MAAM,MAAA,UAAA,GAAa,UAAW,CAAA,KAAA,CAAM,MAAM,CAAA,CAAA;AAC1C,MAAA,IAAI,KAAO,EAAA,YAAA,CAAA;AAEX,MAAI,IAAA,UAAA,CAAW,SAAS,CAAG,EAAA;AAEzB,QAAA,KAAA,GAAQ,MAAS,GAAA,UAAA,CAAW,CAAC,CAAA,CAAE,IAAK,EAAA,CAAA;AACpC,QAAA,YAAA,GAAe,WAAW,CAAC,CAAA,CAAE,IAAK,EAAA,CAAE,MAAM,GAAG,CAAA,CAAA;AAAA,OACxC,MAAA;AACL,QAAA,YAAA,GAAe,WAAW,CAAC,CAAA,CAAE,IAAK,EAAA,CAAE,MAAM,GAAG,CAAA,CAAA;AAC7C,QAAA,KAAA,GAAQ,aAAa,GAAI,EAAA,CAAA;AAAA,OAC3B;AACA,MAAA,IAAA,CAAK,QAAQ,KAAS,IAAA,MAAA,CAAA;AACtB,MAAA,IAAA,CAAK,CAAI,GAAA,QAAA,CAAS,YAAa,CAAA,CAAC,CAAC,CAAK,IAAA,CAAA,CAAA;AACtC,MAAA,IAAA,CAAK,CAAI,GAAA,QAAA,CAAS,YAAa,CAAA,CAAC,CAAC,CAAK,IAAA,CAAA,CAAA;AACtC,MAAA,IAAA,CAAK,KAAQ,GAAA,QAAA,CAAS,YAAa,CAAA,CAAC,CAAC,CAAK,IAAA,CAAA,CAAA;AAC1C,MAAA,IAAA,CAAK,MAAS,GAAA,QAAA,CAAS,YAAa,CAAA,CAAC,CAAC,CAAK,IAAA,CAAA,CAAA;AAE3C,MAAM,MAAA,OAAA,GAAU,CAAC,KAAe,KAAA;AAC9B,QAAA,IAAI,IAAO,GAAA,KAAA,EAAO,OAAQ,CAAA,SAAA,EAAW,EAAE,CAAK,IAAA,IAAA,CAAA;AAC5C,QAAA,IAAI,KAAM,CAAA,OAAA,CAAQ,IAAI,CAAA,KAAM,CAAI,CAAA,EAAA;AAC9B,UAAO,IAAA,GAAA,IAAA,CAAA;AAAA,SACT;AACA,QAAO,OAAA,IAAA,CAAA;AAAA,OACT,CAAA;AACA,MAAA,IAAA,CAAK,MAAS,GAAA,OAAA,CAAQ,YAAa,CAAA,CAAC,CAAC,CAAA,CAAA;AACrC,MAAA,IAAA,CAAK,MAAS,GAAA,OAAA,CAAQ,YAAa,CAAA,CAAC,CAAC,CAAA,CAAA;AACrC,MAAA,IAAA,CAAK,UAAa,GAAA,OAAA,CAAQ,YAAa,CAAA,CAAC,CAAC,CAAA,CAAA;AACzC,MAAA,IAAA,CAAK,WAAc,GAAA,OAAA,CAAQ,YAAa,CAAA,CAAC,CAAC,CAAA,CAAA;AAC1C,MAAS,QAAA,CAAA,IAAA,GAAO,MAAM,OAAU,GAAA,CAAA,GAAK,KAAK,CAAI,GAAA,KAAA,CAAM,GAAO,GAAA,KAAA,CAAM,OAAW,IAAA,CAAA,CAAA;AAC5E,MAAS,QAAA,CAAA,GAAA,GAAM,MAAM,OAAU,GAAA,CAAA,GAAK,KAAK,CAAI,GAAA,KAAA,CAAM,GAAO,GAAA,KAAA,CAAM,OAAW,IAAA,CAAA,CAAA;AAAA,KAC7E,CAAA;AAEA,IAAM,MAAA,QAAA,GAAW,CAAC,IAAc,KAAA;AAC9B,MAAA,MAAM,QAAQ,IAAK,CAAA,KAAA,CAAA;AACnB,MAAA,SAAA,CAAU,KAAK,CAAA,CAAA;AAAA,KACjB,CAAA;AAEA,IAAAC,aAAA,CAAU,MAAM;AAEd,MAAA,SAAA,CAAU,MAAM,UAAU,CAAA,CAAA;AAAA,KAC3B,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
1
|
+
{"version":3,"file":"style-shadow-content.vue2.js","sources":["../../../src/style-shadow-input/src/style-shadow-content.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkStyleShadowContent',\n});\n</script>\n<template>\n <div ref=\"el\" class=\"dk-style-shadow-content\" :style=\"{ '--shadow-box-width': boxSize + 'px' }\">\n <el-form label-width=\"60px\" label-position=\"left\" class=\"shadow-form-content\" :size=\"size\">\n <el-form-item label=\"模式\">\n <el-radio-group v-model=\"form.type\">\n <el-radio-button value=\"external\">外部</el-radio-button>\n <el-radio-button value=\"inset\">内部</el-radio-button>\n </el-radio-group>\n </el-form-item>\n <el-form-item label=\"颜色\">\n <dk-color-input v-model=\"form.color\" show-alpha :teleported=\"false\"></dk-color-input>\n </el-form-item>\n <el-form-item label=\"x轴\">\n <div class=\"flex\">\n <el-input v-model=\"form.x\" type=\"number\"> </el-input>\n <el-select v-model=\"form.x_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"y轴\">\n <div class=\"flex\">\n <el-input v-model=\"form.y\" type=\"number\"> </el-input>\n <el-select v-model=\"form.y_unit\" placeholder=\"请选择\" class=\"w-40px\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"模糊\">\n <div class=\"flex\">\n <el-input v-model=\"form.vague\" type=\"number\"> </el-input>\n <el-select v-model=\"form.vague_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n <el-form-item label=\"扩展\">\n <div class=\"flex\">\n <el-input v-model=\"form.extend\" type=\"number\"> </el-input>\n <el-select v-model=\"form.extend_unit\" placeholder=\"请选择\">\n <el-option v-for=\"item in units\" :key=\"item\" :label=\"item\" :value=\"item\" />\n </el-select>\n </div>\n </el-form-item>\n </el-form>\n <div class=\"shadow-content-shortcut\">\n <div class=\"default-css m-b-10px\">\n <div class=\"m-b-10px\">常用样式</div>\n <el-button v-for=\"(item, key) in props.defaultStyles\" :key=\"key\" size=\"small\" @click=\"setStyle(item)\">{{\n item.label\n }}</el-button>\n </div>\n <div\n ref=\"box\"\n class=\"shadow-content-box\"\n :class=\"down ? 'down' : ''\"\n :style=\"{ height: boxSize + 'px', width: boxSize + 'px' }\"\n @click=\"getMouseXY($event, 1)\"\n @mousedown=\"onMousedown\"\n @mouseup=\"down = false\"\n @mousemove=\"getMouseXY($event, 0)\"\n >\n <span id=\"spot\" :style=\"spotStyle\">\n <i id=\"center\" />\n </span>\n <span id=\"center-spot\" :style=\"{ top: boxSize / 2 + 'px', left: boxSize / 2 + 'px' }\" />\n <div class=\"x-hr\" :style=\"{ top: boxSize / 2 + 'px' }\" />\n <div class=\"y-hr\" :style=\"{ left: boxSize / 2 + 'px' }\" />\n <div class=\"line\" :style=\"lineStyle\" />\n </div>\n </div>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { computed, onMounted, reactive, ref, watch } from 'vue'\nimport { useElementSize } from '@vueuse/core'\nconst el: any = ref(null)\nconst { width } = useElementSize(el) // 当前组件宽度\n\n\n// interface StyleOption {\n// label: string\n// value: string\n// }\nconst props = defineProps({\n boxSize: {\n default: 180,\n type: Number,\n },\n size: {\n default: 'small',\n type: String,\n },\n max: {\n default: 24,\n type: Number,\n },\n modelValue: {\n default: '0px 0px 0px rgba(0, 0, 0, 0)',\n type: String,\n },\n defaultStyles: {\n default: () => {\n return [\n { label: '经典', value: '3px 5px 7px 2px #CBCBCBFF' },\n { label: '扁平', value: '4px 4px 3px -2px #E7E5E5FF' },\n { label: '立体', value: '1px 2px 4px 2px #979797FF' },\n ]\n },\n type: Array as () => any,\n },\n})\nconst form = reactive({\n color: '',\n type: 'external',\n x: 0,\n y: 0,\n vague: 0,\n extend: 0,\n x_unit: 'px',\n y_unit: 'px',\n vague_unit: 'px',\n extend_unit: 'px',\n})\n\nconst units = ['px', '%', 'rem', 'em', 'vw', 'vh']\nconst down = ref(false)\nconst position: any = reactive({\n left: 0,\n top: 0,\n})\n\nconst lineStyle = ref('')\nconst box = ref()\nconst spotStyle = computed(() => {\n return {\n left: position.left + 'px',\n top: position.top + 'px',\n }\n})\n\nconst getMouseXY = (e: any, force: any) => {\n if (down.value || force) {\n const _box = box.value.getBoundingClientRect()\n position.left = parseInt(String(e.clientX - _box.x))\n position.top = parseInt(String(e.clientY - _box.y))\n }\n}\n\nwatch(position, () => {\n form.x = parseInt(String(((position.left - props.boxSize / 2) / props.boxSize) * props.max))\n form.y = parseInt(String(((position.top - props.boxSize / 2) / props.boxSize) * props.max))\n})\nconst emit = defineEmits(['update:modelValue'])\nwatch(form, () => {\n let value = `${form.x}${form.x_unit} ${form.y}${form.y_unit} ${form.vague}${form.vague_unit} ${form.extend}${form.extend_unit} ${form.color}`\n if (form.type === 'inset') {\n value = value + ' inset'\n }\n emit('update:modelValue', value)\n})\nconst onMousedown = (e: any) => {\n getMouseXY(e, 1)\n down.value = true\n}\n\nconst initStyle = (modelValue: any) => {\n if (modelValue?.indexOf(' inset') > -1) {\n form.type = 'inset'\n modelValue = modelValue.replace(' inset', '')\n }\n const shadowData = modelValue.split('rgba')\n let color, shadowValues: any\n\n if (shadowData.length > 1) {\n // 将颜色值和其他阴影值进行分离\n color = 'rgba' + shadowData[1].trim()\n shadowValues = shadowData[0].trim().split(' ')\n } else {\n shadowValues = shadowData[0].trim().split(' ')\n color = shadowValues.pop()\n }\n form.color = color || '#000'\n form.x = parseInt(shadowValues[0]) || 0\n form.y = parseInt(shadowValues[1]) || 0\n form.vague = parseInt(shadowValues[2]) || 0\n form.extend = parseInt(shadowValues[3]) || 0\n\n const getUnit = (value: any) => {\n let unit = value?.replace(/[-\\d.]/g, '') || 'px'\n if (units.indexOf(unit) === -1) {\n unit = 'px'\n }\n return unit\n }\n form.x_unit = getUnit(shadowValues[0])\n form.y_unit = getUnit(shadowValues[1])\n form.vague_unit = getUnit(shadowValues[2])\n form.extend_unit = getUnit(shadowValues[3])\n position.left = props.boxSize / 2 + (form.x / props.max) * props.boxSize || 0\n position.top = props.boxSize / 2 + (form.y / props.max) * props.boxSize || 0\n}\n\nconst setStyle = (item: any) => {\n const style = item.value\n initStyle(style)\n}\n\nonMounted(() => {\n // let modelValue = props.modelValue\n initStyle(props.modelValue)\n})\n</script>\n"],"names":["__MACROS_defineComponent","ref","useElementSize","reactive","computed","watch","onMounted"],"mappings":"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"}
|