UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 8.69 kB
{"version":3,"file":"color-picker-panel2.mjs","sources":["../../../../../../packages/components/color-picker-panel/src/color-picker-panel.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b(), ns.is('disabled', disabled), ns.is('border', border)]\"\n @focusout=\"handleFocusout\"\n >\n <div :class=\"ns.e('wrapper')\">\n <hue-slider\n ref=\"hueRef\"\n class=\"hue-slider\"\n :color=\"color\"\n vertical\n :disabled=\"disabled\"\n />\n <sv-panel ref=\"svRef\" :color=\"color\" :disabled=\"disabled\" />\n </div>\n <alpha-slider\n v-if=\"showAlpha\"\n ref=\"alphaRef\"\n :color=\"color\"\n :disabled=\"disabled\"\n />\n <predefine\n v-if=\"predefine\"\n ref=\"predefine\"\n :enable-alpha=\"showAlpha\"\n :color=\"color\"\n :colors=\"predefine\"\n :disabled=\"disabled\"\n />\n <div :class=\"ns.e('footer')\">\n <el-input\n ref=\"inputRef\"\n v-model=\"customInput\"\n :validate-event=\"false\"\n size=\"small\"\n :disabled=\"disabled\"\n @change=\"handleConfirm\"\n />\n <slot name=\"footer\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, nextTick, onMounted, provide, ref, watch } from 'vue'\nimport { ElInput } from '@element-plus/components/input'\nimport { useFormDisabled, useFormItem } from '@element-plus/components/form'\nimport { useNamespace } from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport AlphaSlider from './components/alpha-slider.vue'\nimport HueSlider from './components/hue-slider.vue'\nimport Predefine from './components/predefine.vue'\nimport SvPanel from './components/sv-panel.vue'\nimport {\n ROOT_COMMON_COLOR_INJECTION_KEY,\n colorPickerPanelContextKey,\n colorPickerPanelEmits,\n colorPickerPanelProps,\n} from './color-picker-panel'\nimport { useCommonColor } from './composables/use-common-color'\n\nimport type { InputInstance } from '@element-plus/components/input'\n\ndefineOptions({\n name: 'ElColorPickerPanel',\n})\nconst props = defineProps(colorPickerPanelProps)\nconst emit = defineEmits(colorPickerPanelEmits)\n\nconst ns = useNamespace('color-picker-panel')\nconst { formItem } = useFormItem()\nconst disabled = useFormDisabled()\nconst hueRef = ref<InstanceType<typeof HueSlider>>()\nconst svRef = ref<InstanceType<typeof SvPanel>>()\nconst alphaRef = ref<InstanceType<typeof AlphaSlider>>()\nconst inputRef = ref<InputInstance>()\nconst customInput = ref('')\n\nconst { color } = inject(\n ROOT_COMMON_COLOR_INJECTION_KEY,\n () => useCommonColor(props, emit),\n true\n)\n\nfunction handleConfirm() {\n color.fromString(customInput.value)\n if (color.value !== customInput.value) {\n customInput.value = color.value\n }\n}\n\nfunction handleFocusout() {\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n}\n\nfunction update() {\n hueRef.value?.update()\n svRef.value?.update()\n alphaRef.value?.update()\n}\n\nonMounted(() => {\n if (props.modelValue) {\n customInput.value = color.value\n }\n nextTick(update)\n})\n\nwatch(\n () => props.modelValue,\n (newVal) => {\n if (newVal !== color.value) {\n newVal ? color.fromString(newVal) : color.clear()\n }\n }\n)\n\nwatch(\n () => color.value,\n (val) => {\n emit(UPDATE_MODEL_EVENT, val)\n customInput.value = val\n if (props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n }\n)\n\nprovide(colorPickerPanelContextKey, {\n currentColor: computed(() => color.value),\n})\n\ndefineExpose({\n /**\n * @description current color object\n */\n color,\n /**\n * @description custom input ref\n */\n inputRef,\n /**\n * @description update sub components\n */\n update,\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref","border","_createElementVNode","_createVNode","showAlpha","_createBlock","_createCommentVNode","predefine","_renderSlot"],"mappings":"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"}