UNPKG

tdesign-vue-next

Version:
1 lines 4.79 kB
{"version":3,"file":"input-adornment.mjs","sources":["../../../components/input-adornment/input-adornment.tsx"],"sourcesContent":["import { defineComponent, h, VNodeChild } from 'vue';\nimport { isString, isNumber, isFunction } from 'lodash-es';\n\nimport { useTNodeJSX, usePrefixClass } from '@tdesign/shared-hooks';\n\nimport props from './props';\n\nexport default defineComponent({\n name: 'TInputAdornment',\n props,\n setup(props, { slots }) {\n const COMPONENT_NAME = usePrefixClass('input-adornment');\n const renderTNodeJSX = useTNodeJSX();\n\n const renderAddon = (h: any, type: string, addon: string | Function | VNodeChild | undefined): VNodeChild => {\n let addonNode: VNodeChild;\n const isContentNode = isString(addon) || isNumber(addon);\n if (!slots[type] && isString(addon) && !addon) return null;\n if (slots[type]) {\n if (slots[type](null).length === 1 && typeof slots[type](null)[0].children === 'string') {\n addonNode = <span class={`${COMPONENT_NAME.value}__text`}>{slots[type](null)}</span>;\n } else {\n addonNode = slots[type](null);\n }\n } else if (isFunction(addon)) {\n addonNode = addon(h);\n } else {\n addonNode = isContentNode ? (\n <span class={`${COMPONENT_NAME.value}__text`}>{addon}</span>\n ) : (\n (addon as VNodeChild)\n );\n }\n return addonNode ? <span class={`${COMPONENT_NAME.value}__${type}`}>{addonNode}</span> : addonNode;\n };\n return () => {\n const prepend = renderAddon(h, 'prepend', props.prepend);\n const append = renderAddon(h, 'append', props.append);\n const defaultSlot: VNodeChild[] = renderTNodeJSX('default') || [null];\n const className = [\n COMPONENT_NAME.value,\n {\n [`${COMPONENT_NAME.value}--prepend`]: prepend,\n [`${COMPONENT_NAME.value}--append`]: append,\n },\n ];\n\n if (!prepend && !append) {\n return defaultSlot[0];\n }\n\n return (\n <div class={className}>\n {prepend}\n {defaultSlot[0]}\n {append}\n </div>\n );\n };\n },\n});\n"],"names":["defineComponent","name","props","setup","slots","_ref","COMPONENT_NAME","usePrefixClass","renderTNodeJSX","useTNodeJSX","renderAddon","h","type","addon","addonNode","isContentNode","isString","isNumber","length","children","_createVNode","concat","value","isFunction","prepend","append","defaultSlot","className","_defineProperty"],"mappings":"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"}