UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 20.7 kB
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/components/color-picker/src/index.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"popper\"\n v-model:visible=\"showPicker\"\n :show-arrow=\"false\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n :offset=\"0\"\n :gpu-acceleration=\"false\"\n :popper-class=\"[ns.be('picker', 'panel'), ns.b('dropdown'), popperClass]\"\n :stop-popper-mouse-event=\"false\"\n effect=\"light\"\n trigger=\"click\"\n transition=\"el-zoom-in-top\"\n persistent\n >\n <template #content>\n <div v-click-outside=\"hide\">\n <div :class=\"ns.be('dropdown', 'main-wrapper')\">\n <hue-slider ref=\"hue\" class=\"hue-slider\" :color=\"color\" vertical />\n <sv-panel ref=\"svPanel\" :color=\"color\" />\n </div>\n <alpha-slider v-if=\"showAlpha\" ref=\"alpha\" :color=\"color\" />\n <predefine\n v-if=\"predefine\"\n ref=\"predefine\"\n :color=\"color\"\n :colors=\"predefine\"\n />\n <div :class=\"ns.be('dropdown', 'btns')\">\n <span :class=\"ns.be('dropdown', 'value')\">\n <el-input\n v-model=\"customInput\"\n :validate-event=\"false\"\n size=\"small\"\n @keyup.enter=\"handleConfirm\"\n @blur=\"handleConfirm\"\n />\n </span>\n <el-button\n size=\"small\"\n type=\"text\"\n :class=\"ns.be('dropdown', 'link-btn')\"\n @click=\"clear\"\n >\n {{ t('el.colorpicker.clear') }}\n </el-button>\n <el-button\n plain\n size=\"small\"\n :class=\"ns.be('dropdown', 'btn')\"\n @click=\"confirmValue\"\n >\n {{ t('el.colorpicker.confirm') }}\n </el-button>\n </div>\n </div>\n </template>\n <template #default>\n <div\n :class=\"[\n ns.b('picker'),\n ns.is('disabled', colorDisabled),\n ns.bm('picker', colorSize),\n ]\"\n >\n <div v-if=\"colorDisabled\" :class=\"ns.be('picker', 'mask')\" />\n <div :class=\"ns.be('picker', 'trigger')\" @click=\"handleTrigger\">\n <span :class=\"[ns.be('picker', 'color'), ns.is('alpha', showAlpha)]\">\n <span\n :class=\"ns.be('picker', 'color-inner')\"\n :style=\"{\n backgroundColor: displayedColor,\n }\"\n >\n <el-icon\n v-show=\"modelValue || showPanelColor\"\n :class=\"[ns.be('picker', 'icon'), ns.is('icon-arrow-down')]\"\n >\n <arrow-down />\n </el-icon>\n <el-icon\n v-if=\"!modelValue && !showPanelColor\"\n :class=\"[ns.be('picker', 'empty'), ns.is('icon-close')]\"\n >\n <close />\n </el-icon>\n </span>\n </span>\n </div>\n </div>\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n nextTick,\n onMounted,\n provide,\n reactive,\n ref,\n watch,\n} from 'vue'\nimport { debounce } from 'lodash-unified'\nimport ElButton from '@element-plus/components/button'\nimport ElIcon from '@element-plus/components/icon'\nimport { ClickOutside } from '@element-plus/directives'\nimport { formContextKey, formItemContextKey } from '@element-plus/tokens'\nimport { useLocale, useNamespace, useSize } from '@element-plus/hooks'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElInput from '@element-plus/components/input'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { debugWarn, isValidComponentSize } from '@element-plus/utils'\nimport { ArrowDown, Close } from '@element-plus/icons-vue'\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 Color from './color'\nimport { OPTIONS_KEY } from './useOption'\nimport type { PropType } from 'vue'\nimport type { FormContext, FormItemContext } from '@element-plus/tokens'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { IUseOptions } from './useOption'\n\nexport default defineComponent({\n name: 'ElColorPicker',\n components: {\n ElButton,\n ElTooltip,\n ElInput,\n ElIcon,\n Close,\n ArrowDown,\n SvPanel,\n HueSlider,\n AlphaSlider,\n Predefine,\n },\n directives: {\n ClickOutside,\n },\n props: {\n modelValue: String,\n showAlpha: Boolean,\n colorFormat: String,\n disabled: Boolean,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n popperClass: String,\n predefine: Array,\n },\n emits: ['change', 'active-change', UPDATE_MODEL_EVENT],\n setup(props, { emit }) {\n const { t } = useLocale()\n const ns = useNamespace('color')\n const elForm = inject(formContextKey, {} as FormContext)\n const elFormItem = inject(formItemContextKey, {} as FormItemContext)\n\n const hue = ref(null)\n const svPanel = ref(null)\n const alpha = ref(null)\n const popper = ref(null)\n // data\n const color = reactive(\n new Color({\n enableAlpha: props.showAlpha,\n format: props.colorFormat,\n value: props.modelValue,\n })\n )\n const showPicker = ref(false)\n const showPanelColor = ref(false)\n const customInput = ref('')\n // computed\n const displayedColor = computed(() => {\n if (!props.modelValue && !showPanelColor.value) {\n return 'transparent'\n }\n return displayedRgb(color, props.showAlpha)\n })\n const colorSize = useSize()\n const colorDisabled = computed(() => {\n return !!(props.disabled || elForm.disabled)\n })\n\n const currentColor = computed(() => {\n return !props.modelValue && !showPanelColor.value ? '' : color.value\n })\n // watch\n watch(\n () => props.modelValue,\n (newVal) => {\n if (!newVal) {\n showPanelColor.value = false\n } else if (newVal && newVal !== color.value) {\n color.fromString(newVal)\n }\n }\n )\n watch(\n () => currentColor.value,\n (val) => {\n customInput.value = val\n emit('active-change', val)\n }\n )\n\n watch(\n () => color.value,\n () => {\n if (!props.modelValue && !showPanelColor.value) {\n showPanelColor.value = true\n }\n }\n )\n\n // methods\n function displayedRgb(color, showAlpha) {\n if (!(color instanceof Color)) {\n throw new TypeError('color should be instance of _color Class')\n }\n\n const { r, g, b } = color.toRgb()\n return showAlpha\n ? `rgba(${r}, ${g}, ${b}, ${color.get('alpha') / 100})`\n : `rgb(${r}, ${g}, ${b})`\n }\n\n function setShowPicker(value) {\n showPicker.value = value\n }\n\n const debounceSetShowPicker = debounce(setShowPicker, 100)\n\n function hide() {\n debounceSetShowPicker(false)\n resetColor()\n }\n\n function resetColor() {\n nextTick(() => {\n if (props.modelValue) {\n color.fromString(props.modelValue)\n } else {\n showPanelColor.value = false\n }\n })\n }\n\n function handleTrigger() {\n if (colorDisabled.value) return\n debounceSetShowPicker(!showPicker.value)\n }\n\n function handleConfirm() {\n color.fromString(customInput.value)\n }\n\n function confirmValue() {\n const value = color.value\n emit(UPDATE_MODEL_EVENT, value)\n emit('change', value)\n elFormItem.validate?.('change').catch((err) => debugWarn(err))\n debounceSetShowPicker(false)\n // check if modelValue change, if not change, then reset color.\n nextTick(() => {\n const newColor = new Color({\n enableAlpha: props.showAlpha,\n format: props.colorFormat,\n value: props.modelValue,\n })\n if (!color.compare(newColor)) {\n resetColor()\n }\n })\n }\n\n function clear() {\n debounceSetShowPicker(false)\n emit(UPDATE_MODEL_EVENT, null)\n emit('change', null)\n if (props.modelValue !== null) {\n elFormItem.validate?.('change').catch((err) => debugWarn(err))\n }\n resetColor()\n }\n\n onMounted(() => {\n if (props.modelValue) {\n customInput.value = currentColor.value\n }\n })\n watch(\n () => showPicker.value,\n () => {\n nextTick(() => {\n hue.value?.update()\n svPanel.value?.update()\n alpha.value?.update()\n })\n }\n )\n\n provide<IUseOptions>(OPTIONS_KEY, {\n currentColor,\n })\n\n return {\n color: color as Color,\n colorDisabled,\n colorSize,\n displayedColor,\n showPanelColor,\n showPicker,\n customInput,\n handleConfirm,\n hide,\n handleTrigger,\n clear,\n confirmValue,\n t,\n ns,\n hue,\n svPanel,\n alpha,\n popper,\n }\n },\n})\n</script>\n"],"names":["_resolveComponent","_resolveDirective","_openBlock","_createBlock","_withCtx","_withDirectives","_createElementBlock","_normalizeClass","_createVNode","_createCommentVNode","_createElementVNode","_normalizeStyle","_vShow"],"mappings":"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"}