{"version":3,"file":"auto-complete.mjs","sources":["../../../components/auto-complete/auto-complete.tsx"],"sourcesContent":["import { computed, ref, defineComponent, toRefs, nextTick, ComputedRef } from 'vue';\nimport props from './props';\nimport { TdAutoCompleteProps } from './type';\nimport TInput, { InputProps, StrInputProps } from '../input';\nimport Popup, { PopupProps } from '../popup';\nimport {\n  useVModel,\n  useContent,\n  useTNodeJSX,\n  useDisabled,\n  useReadonly,\n  useCommonClassName,\n  useEventForward,\n} from '@tdesign/shared-hooks';\nimport AutoCompleteOptionList from './components/option-list';\n\nimport { useConfig } from '../config-provider/hooks/useConfig';\nimport { ClassName } from '../common';\n\nexport default defineComponent({\n  name: 'TAutoComplete',\n  props,\n  setup(props: TdAutoCompleteProps, { slots }) {\n    const { value, modelValue } = toRefs(props);\n    const [tValue, setTValue] = useVModel(value, modelValue, props.defaultValue, props.onChange);\n    const renderContent = useContent();\n    const renderTNodeJSX = useTNodeJSX();\n    const { classPrefix, SIZE } = useCommonClassName();\n    const { globalConfig: global } = useConfig('input');\n    const isDisabled = useDisabled() as ComputedRef<boolean>;\n    const isReadonly = useReadonly();\n    const popupVisible = ref();\n    const optionListRef = ref();\n\n    const getOverlayStyle = (trigger: HTMLElement, popupElement: HTMLElement) => {\n      const triggerWidth = trigger.getBoundingClientRect().width || trigger.offsetWidth || trigger.clientWidth;\n      const popupWidth =\n        popupElement.getBoundingClientRect().width || popupElement.offsetWidth || popupElement.clientWidth;\n      return {\n        width: triggerWidth >= popupWidth ? `${triggerWidth}px` : 'auto',\n        ...props.popupProps?.overlayInnerStyle,\n      };\n    };\n\n    const classes = computed(() => [`${classPrefix.value}-auto-complete`]);\n    const popupClasses = computed(() => {\n      let classes: ClassName = [`${classPrefix.value}-select__dropdown`];\n      if (props.popupProps?.overlayClassName) {\n        classes = classes.concat(props.popupProps.overlayClassName);\n      }\n      return classes;\n    });\n    const popupInnerClasses = computed(() => {\n      let classes: ClassName = [`${classPrefix.value}-select__dropdown-inner`];\n      if (props.popupProps?.overlayInnerClassName) {\n        classes = classes.concat(props.popupProps.overlayInnerClassName);\n      }\n      return classes;\n    });\n\n    const onInputChange: StrInputProps['onChange'] = (value, context) => {\n      popupVisible.value = true;\n      setTValue(value, context);\n    };\n\n    const innerInputProps = computed(() => {\n      const tProps: InputProps = {\n        value: tValue.value,\n        size: props.size,\n        ...props.inputProps,\n      };\n      return tProps;\n    });\n\n    const onInnerFocus: StrInputProps['onFocus'] = (value, context) => {\n      if (isReadonly.value || isDisabled.value) return;\n      popupVisible.value = true;\n      props.onFocus?.({ ...context, value });\n      nextTick(() => {\n        optionListRef.value?.addKeyboardListener();\n      });\n    };\n\n    const onInnerBlur: StrInputProps['onBlur'] = (value, context) => {\n      props.onBlur?.({ ...context, value });\n    };\n\n    const onInnerCompositionend: InputProps['onCompositionend'] = (value, context) => {\n      props.onCompositionend?.({ ...context, value });\n    };\n\n    const onInnerCompositionstart: InputProps['onCompositionstart'] = (value, context) => {\n      props.onCompositionstart?.({ ...context, value });\n    };\n\n    const onInnerEnter: StrInputProps['onEnter'] = (value, context) => {\n      props.onEnter?.({ ...context, value });\n    };\n\n    const onInnerSelect: TdAutoCompleteProps['onSelect'] = (value, context) => {\n      if (isReadonly.value || isDisabled.value) return;\n      popupVisible.value = false;\n      setTValue(value, context);\n      props.onSelect?.(value, context);\n    };\n\n    const onPopupVisibleChange: PopupProps['onVisibleChange'] = (visible, { trigger }) => {\n      if (isReadonly.value || isDisabled.value) return;\n      if (trigger !== 'trigger-element-click') {\n        popupVisible.value = visible;\n      }\n    };\n\n    return () => {\n      const inputEvents = useEventForward(innerInputProps.value, {\n        onChange: onInputChange,\n        onFocus: onInnerFocus,\n        onBlur: onInnerBlur,\n        onClear: props.onClear,\n        onCompositionend: onInnerCompositionend,\n        onCompositionstart: onInnerCompositionstart,\n        onEnter: onInnerEnter,\n      });\n\n      // 触发元素\n      const triggerNode = renderContent('default', 'triggerElement') || (\n        <TInput\n          borderless={props.borderless}\n          placeholder={props.placeholder ?? global.value.placeholder}\n          tips={props.tips}\n          status={props.status}\n          readonly={isReadonly.value}\n          disabled={isDisabled.value}\n          autofocus={props.autofocus}\n          clearable={props.clearable}\n          {...inputEvents.value}\n          v-slots={slots}\n        />\n      );\n      // 联想词列表\n      const listContent = Array.isArray(props.options) && (\n        <AutoCompleteOptionList\n          ref={optionListRef}\n          value={tValue.value}\n          options={props.options}\n          size={props.size}\n          sizeClassNames={SIZE}\n          onSelect={onInnerSelect}\n          popupVisible={popupVisible.value}\n          highlightKeyword={props.highlightKeyword}\n          filterable={props.filterable}\n          filter={props.filter}\n          empty={renderTNodeJSX('empty')}\n          v-slots={{ option: slots.option }}\n        />\n      );\n\n      const topContent = renderTNodeJSX('panelTopContent');\n      const bottomContent = renderTNodeJSX('panelBottomContent');\n      const panelContent =\n        topContent || listContent || bottomContent ? (\n          <div class={`${classPrefix.value}-auto-complete__panel`}>\n            {topContent}\n            {listContent}\n            {bottomContent}\n          </div>\n        ) : null;\n      const popupProps = {\n        ...props.popupProps,\n        overlayInnerStyle: getOverlayStyle,\n        overlayInnerClassName: popupInnerClasses.value,\n        overlayClassName: popupClasses.value,\n      };\n      const popupEvents = useEventForward(popupProps, {\n        onVisibleChange: onPopupVisibleChange,\n      });\n      return (\n        <div class={classes.value}>\n          <Popup\n            visible={popupVisible.value}\n            onVisibleChange={onPopupVisibleChange}\n            trigger=\"focus\"\n            placement=\"bottom-left\"\n            hideEmptyPopup={true}\n            content={panelContent ? () => panelContent : null}\n            {...popupEvents.value}\n          >\n            {triggerNode}\n          </Popup>\n        </div>\n      );\n    };\n  },\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","props","setup","slots","_ref","_toRefs","toRefs","value","modelValue","_useVModel","useVModel","defaultValue","onChange","_useVModel2","_slicedToArray","tValue","setTValue","renderContent","useContent","renderTNodeJSX","useTNodeJSX","_useCommonClassName","useCommonClassName","classPrefix","SIZE","_useConfig","useConfig","global","globalConfig","isDisabled","useDisabled","isReadonly","useReadonly","popupVisible","ref","optionListRef","getOverlayStyle","trigger","popupElement","_props2$popupProps","triggerWidth","getBoundingClientRect","width","offsetWidth","clientWidth","popupWidth","_objectSpread","concat","popupProps","overlayInnerStyle","classes","computed","popupClasses","_props2$popupProps2","overlayClassName","popupInnerClasses","_props2$popupProps3","overlayInnerClassName","onInputChange","context","innerInputProps","tProps","size","inputProps","onInnerFocus","_props2$onFocus","onFocus","nextTick","_optionListRef$value","addKeyboardListener","onInnerBlur","_props2$onBlur","onBlur","onInnerCompositionend","_props2$onComposition","onCompositionend","onInnerCompositionstart","_props2$onComposition2","onCompositionstart","onInnerEnter","_props2$onEnter","onEnter","onInnerSelect","_props2$onSelect","onSelect","onPopupVisibleChange","visible","_ref2","_props2$placeholder","inputEvents","useEventForward","onClear","triggerNode","_createVNode","TInput","_mergeProps","borderless","placeholder","tips","status","autofocus","clearable","listContent","Array","isArray","options","AutoCompleteOptionList","highlightKeyword","filterable","filter","option","topContent","bottomContent","panelContent","popupEvents","onVisibleChange","Popup","_default"],"mappings":"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"}