UNPKG

tdesign-vue-next

Version:
1 lines 6.69 kB
{"version":3,"file":"index.mjs","sources":["../../../../../components/color-picker/components/trigger/index.tsx"],"sourcesContent":["import { defineComponent, PropType, ref, watch } from 'vue';\nimport TInput from '../../../input';\nimport { Color, getColorObject } from '../../utils';\nimport { TdColorPickerProps } from '../../type';\nimport { useBaseClassName } from '../../hooks';\nimport { useCommonClassName, useEventForward } from '@tdesign/shared-hooks';\n\nexport default defineComponent({\n name: 'DefaultTrigger',\n inheritAttrs: false,\n props: {\n color: {\n type: String,\n default: '',\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n borderless: {\n type: Boolean,\n default: false,\n },\n clearable: {\n type: Boolean,\n default: false,\n },\n inputProps: {\n type: Object as PropType<TdColorPickerProps['inputProps']>,\n default: () => {\n return {\n autoWidth: true,\n };\n },\n },\n onTriggerChange: {\n type: Function,\n default: () => {\n return () => {};\n },\n },\n onTriggerClear: {\n type: Function,\n default: () => {\n return () => {};\n },\n },\n size: {\n type: String as PropType<TdColorPickerProps['size']>,\n default: 'medium',\n },\n },\n setup(props) {\n const baseClassName = useBaseClassName();\n const value = ref(props.color);\n const { SIZE: sizeClassNames } = useCommonClassName();\n watch(\n () => [props.color],\n () => (value.value = props.color),\n );\n\n const handleChange = (input: string) => {\n if (input !== props.color) {\n props.onTriggerChange(value.value, {\n color: getColorObject(new Color(input)),\n trigger: 'input',\n });\n }\n };\n\n const handleClear = (context: { e: MouseEvent }) => props.onTriggerClear?.(context);\n\n const inputEvents = useEventForward(props.inputProps as TdColorPickerProps['inputProps'], {\n onBlur: handleChange,\n onChange: handleChange,\n onClear: handleClear,\n });\n\n return () => {\n const inputSlots = {\n label: () => {\n return (\n <div class={[`${baseClassName.value}__trigger--default__color`, `${baseClassName.value}--bg-alpha`]}>\n <span\n class={[\n 'color-inner',\n {\n [sizeClassNames.value[props.size]]: props.size !== 'medium',\n },\n ]}\n style={{\n background: value.value,\n }}\n ></span>\n </div>\n );\n },\n };\n return (\n <TInput\n borderless={props.borderless}\n clearable={props.clearable}\n size={props.size}\n v-slots={inputSlots}\n v-model={value.value}\n disabled={props.disabled}\n {...inputEvents.value}\n />\n );\n };\n },\n});\n"],"names":["defineComponent","name","inheritAttrs","props","color","type","String","disabled","Boolean","borderless","clearable","inputProps","Object","default","autoWidth","onTriggerChange","Function","onTriggerClear","size","setup","baseClassName","useBaseClassName","value","ref","_useCommonClassName","useCommonClassName","sizeClassNames","SIZE","watch","handleChange","input","getColorObject","Color","trigger","handleClear","context","_props$onTriggerClear","call","inputEvents","useEventForward","onBlur","onChange","onClear","inputSlots","label","_createVNode","concat","_defineProperty","background","TInput","_mergeProps","onUpdateModelValue","$event"],"mappings":"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"}