{"version":3,"file":"textarea.mjs","sources":["../../../../../packages/components/textarea/src/textarea.ts"],"sourcesContent":["import { isString } from '@vue/shared'\n\nimport {\n  FORM_COMPONENT_PROPS,\n  UPDATE_MODEL_EVENT\n} from '@element-ultra/shared'\nimport type { StyleValue, ExtractPropTypes, PropType } from 'vue'\n\ntype AutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const textareaProps = {\n  ...FORM_COMPONENT_PROPS,\n  disabled: {\n    type: Boolean,\n    default: undefined\n  },\n  modelValue: {\n    type: [String, Number] as PropType<string | number | null | undefined>,\n    default: ''\n  },\n  resize: {\n    type: String,\n    values: ['none', 'both', 'horizontal', 'vertical']\n  },\n  autosize: {\n    type: [Boolean, Object] as PropType<AutoSize>,\n    default: false\n  },\n  autocomplete: {\n    type: String,\n    default: 'off'\n  },\n  placeholder: {\n    type: String,\n    default: '请输入'\n  },\n  form: {\n    type: String,\n    default: ''\n  },\n  readonly: {\n    type: Boolean,\n    default: false\n  },\n\n  showWordLimit: {\n    type: Boolean,\n    default: false\n  },\n\n  tabindex: {\n    type: [Number, String]\n  },\n  innerStyle: {\n    type: [Object, Array, String] as PropType<StyleValue>,\n    default: () => ({})\n  }\n}\nexport type TextareaProps = ExtractPropTypes<typeof textareaProps>\n\nexport const textareaEmits = {\n  [UPDATE_MODEL_EVENT]: (value: string) => isString(value),\n  input: (value: string) => isString(value),\n  change: (value: string) => isString(value),\n  focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n  blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n  mouseleave: (evt: MouseEvent) => evt instanceof MouseEvent,\n  mouseenter: (evt: MouseEvent) => evt instanceof MouseEvent,\n  keydown: (evt: KeyboardEvent) => evt instanceof KeyboardEvent,\n  compositionstart: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n  compositionupdate: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n  compositionend: (evt: CompositionEvent) => evt instanceof CompositionEvent\n}\nexport type TextareaEmits = typeof textareaEmits\n"],"names":[],"mappings":";;;;;AAUO,MAAM,aAAgB,GAAA;AAAA,EAC3B,GAAG,oBAAA;AAAA,EACH,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA,CAAA;AAAA,GACX;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,IACrB,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,MAAQ,EAAA,CAAC,MAAQ,EAAA,MAAA,EAAQ,cAAc,UAAU,CAAA;AAAA,GACnD;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAA,EAAM,CAAC,OAAA,EAAS,MAAM,CAAA;AAAA,IACtB,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,oBAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EAEA,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,GACvB;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,CAAC,MAAQ,EAAA,KAAA,EAAO,MAAM,CAAA;AAAA,IAC5B,OAAA,EAAS,OAAO,EAAC,CAAA;AAAA,GACnB;AACF,EAAA;AAGO,MAAM,aAAgB,GAAA;AAAA,EAC3B,CAAC,kBAAkB,GAAG,CAAC,KAAA,KAAkB,SAAS,KAAK,CAAA;AAAA,EACvD,KAAO,EAAA,CAAC,KAAkB,KAAA,QAAA,CAAS,KAAK,CAAA;AAAA,EACxC,MAAQ,EAAA,CAAC,KAAkB,KAAA,QAAA,CAAS,KAAK,CAAA;AAAA,EACzC,KAAA,EAAO,CAAC,GAAA,KAAoB,GAAe,YAAA,UAAA;AAAA,EAC3C,IAAA,EAAM,CAAC,GAAA,KAAoB,GAAe,YAAA,UAAA;AAAA,EAC1C,UAAA,EAAY,CAAC,GAAA,KAAoB,GAAe,YAAA,UAAA;AAAA,EAChD,UAAA,EAAY,CAAC,GAAA,KAAoB,GAAe,YAAA,UAAA;AAAA,EAChD,OAAA,EAAS,CAAC,GAAA,KAAuB,GAAe,YAAA,aAAA;AAAA,EAChD,gBAAA,EAAkB,CAAC,GAAA,KAA0B,GAAe,YAAA,gBAAA;AAAA,EAC5D,iBAAA,EAAmB,CAAC,GAAA,KAA0B,GAAe,YAAA,gBAAA;AAAA,EAC7D,cAAA,EAAgB,CAAC,GAAA,KAA0B,GAAe,YAAA,gBAAA;AAC5D;;;;"}