{"version":3,"file":"input-number.mjs","sources":["../../../components/input-number/input-number.tsx"],"sourcesContent":["import { defineComponent, SetupContext } from 'vue';\nimport {\n  AddIcon as TdAddIcon,\n  RemoveIcon as TdRemoveIcon,\n  ChevronDownIcon as TdChevronDownIcon,\n  ChevronUpIcon as TdChevronUpIcon,\n} from 'tdesign-icons-vue-next';\nimport TButton from '../button';\nimport TInput from '../input';\nimport props from './props';\nimport { useEventForward, useGlobalIcon } from '@tdesign/shared-hooks';\nimport { TdInputNumberProps } from './type';\nimport useInputNumber from './hooks/useInputNumber';\n\nexport default defineComponent({\n  name: 'TInputNumber',\n  props,\n  // 保持纯净（逻辑和节点渲染分开）\n  setup(props: TdInputNumberProps, context: SetupContext) {\n    const { AddIcon, RemoveIcon, ChevronDownIcon, ChevronUpIcon } = useGlobalIcon({\n      AddIcon: TdAddIcon,\n      RemoveIcon: TdRemoveIcon,\n      ChevronDownIcon: TdChevronDownIcon,\n      ChevronUpIcon: TdChevronUpIcon,\n    });\n    const p = useInputNumber(props);\n    const { inputRef } = p;\n    context.expose({ ...p });\n\n    const inputEvents = useEventForward(props.inputProps, {\n      onChange: p.onInnerInputChange,\n      ...p.listeners,\n    });\n\n    return () => {\n      const reduceIcon =\n        props.theme === 'column' ? <ChevronDownIcon size={props.size} /> : <RemoveIcon size={props.size} />;\n      const addIcon = props.theme === 'column' ? <ChevronUpIcon size={props.size} /> : <AddIcon size={props.size} />;\n      const status = p.isError.value ? 'error' : props.status;\n\n      return (\n        <div class={p.wrapClasses.value}>\n          {props.theme !== 'normal' && (\n            <TButton\n              class={p.reduceClasses.value}\n              disabled={p.tDisabled.value}\n              onClick={p.handleReduce}\n              variant=\"outline\"\n              shape=\"square\"\n              icon={() => reduceIcon}\n            />\n          )}\n          <TInput\n            ref={inputRef}\n            disabled={p.tDisabled.value}\n            readonly={p.isReadonly.value}\n            autocomplete=\"off\"\n            placeholder={props.placeholder}\n            // @ts-expect-error\n            unselectable={p.isReadonly.value ? 'on' : 'off'}\n            autoWidth={props.autoWidth}\n            align={props.align || (props.theme === 'row' ? 'center' : undefined)}\n            status={status}\n            label={props.label}\n            suffix={props.suffix}\n            tips={props.tips}\n            v-slots={context.slots}\n            value={p.userInput.value}\n            {...inputEvents.value}\n          />\n          {props.theme !== 'normal' && (\n            <TButton\n              class={p.addClasses.value}\n              disabled={p.tDisabled.value}\n              onClick={p.handleAdd}\n              variant=\"outline\"\n              shape=\"square\"\n              icon={() => addIcon}\n            />\n          )}\n        </div>\n      );\n    };\n  },\n});\n"],"names":["defineComponent","name","props","setup","context","_useGlobalIcon","useGlobalIcon","AddIcon","TdAddIcon","RemoveIcon","TdRemoveIcon","ChevronDownIcon","TdChevronDownIcon","ChevronUpIcon","TdChevronUpIcon","p","useInputNumber","inputRef","expose","_objectSpread","inputEvents","useEventForward","inputProps","onChange","onInnerInputChange","listeners","reduceIcon","theme","_createVNode","size","addIcon","status","isError","value","wrapClasses","TButton","reduceClasses","tDisabled","handleReduce","icon","TInput","_mergeProps","isReadonly","placeholder","autoWidth","align","label","suffix","tips","userInput","slots","addClasses","handleAdd"],"mappings":"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"}