{"version":3,"file":"props.cjs","sources":["../../../../../../packages/components/typography/src/props.ts"],"sourcesContent":["import type { AnchorHTMLAttributes, ExtractPropTypes, HTMLAttributes, PropType } from 'vue';\nimport type { Direction } from '../../config-provider';\nimport type { AutoSizeType } from '../../input';\nimport type { BaseType, EllipsisConfig, InternalBlockProps } from './interface';\nimport { omit, tupleNum } from '@antdv/utils';\n\nexport function baseProps() {\n  return {\n    'editable': {\n      type: [Boolean, Object] as PropType<InternalBlockProps['editable']>,\n      default: undefined as InternalBlockProps['editable'],\n    },\n    'copyable': {\n      type: [Boolean, Object] as PropType<InternalBlockProps['copyable']>,\n      default: undefined as InternalBlockProps['copyable'],\n    },\n    'prefixCls': String,\n    'component': String,\n    'type': String as PropType<BaseType>,\n    'disabled': { type: Boolean, default: undefined },\n    'ellipsis': {\n      type: [Boolean, Object] as PropType<InternalBlockProps['ellipsis']>,\n      default: undefined as InternalBlockProps['ellipsis'],\n    },\n    'code': { type: Boolean, default: undefined },\n    'mark': { type: Boolean, default: undefined },\n    'underline': { type: Boolean, default: undefined },\n    'delete': { type: Boolean, default: undefined },\n    'strong': { type: Boolean, default: undefined },\n    'keyboard': { type: Boolean, default: undefined },\n    'content': String,\n    'onUpdate:content': Function as PropType<(content: string) => void>,\n  };\n}\n\nexport function editableProps() {\n  return {\n    prefixCls: String,\n    value: String,\n    maxlength: Number,\n    autoSize: { type: [Boolean, Object] as PropType<boolean | AutoSizeType> },\n    onSave: Function as PropType<(val: string) => void>,\n    onCancel: Function as PropType<() => void>,\n    onEnd: Function as PropType<() => void>,\n    onChange: Function as PropType<(val: string) => void>,\n    originContent: String,\n    direction: String as PropType<Direction>,\n    component: String,\n  };\n}\n\nexport const linkProps = () => omit({ ...baseProps(), ellipsis: { type: Boolean, default: undefined } }, ['component']);\n\nexport const paragraphProps = () => omit(baseProps(), ['component']);\n\nexport function textProps() {\n  return {\n    ...omit(baseProps(), ['component']),\n    ellipsis: {\n      type: [Boolean, Object] as PropType<\n      boolean | Omit<EllipsisConfig, 'expandable' | 'rows' | 'onExpand'>\n      >,\n      default: undefined as boolean | Omit<EllipsisConfig, 'expandable' | 'rows' | 'onExpand'>,\n    },\n  };\n}\nexport const TITLE_ELE_LIST = tupleNum(1, 2, 3, 4, 5);\nexport function titleProps() {\n  return {\n    ...omit(baseProps(), ['component', 'strong']),\n    level: Number as PropType<(typeof TITLE_ELE_LIST)[number]>,\n  };\n}\n\nexport type TitleProps = Partial<ExtractPropTypes<ReturnType<typeof titleProps>>>;\n\nexport type TextProps = Partial<ExtractPropTypes<ReturnType<typeof textProps>>>;\n\nexport type ParagraphProps = Partial<ExtractPropTypes<ReturnType<typeof paragraphProps>>>;\n\nexport type LinkProps = Partial<ExtractPropTypes<ReturnType<typeof linkProps>>> & AnchorHTMLAttributes;\n\nexport type EditableProps = Partial<ExtractPropTypes<ReturnType<typeof editableProps>>>;\n\nexport interface TypographyProps extends HTMLAttributes {\n  direction?: Direction\n  prefixCls?: string\n}\n\nexport interface InternalTypographyProps extends TypographyProps {\n  component?: string\n}\nexport function typographyProps() {\n  return {\n    prefixCls: String,\n    direction: String as PropType<Direction>,\n    // Form Internal use\n    component: String,\n  };\n}\n"],"names":["omit","tupleNum"],"mappings":"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"}