{"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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"}