{"version":3,"file":"defaults.mjs","sources":["../../../../../packages/components/select/src/defaults.ts"],"sourcesContent":["import { EmitFn, isValidComponentSize } from '@element-ultra/utils'\nimport { useTooltipContentProps } from '@element-ultra/components/tooltip'\nimport { CircleClose } from 'icon-ultra'\n\nimport type { PropType, Component } from 'vue'\nimport {\n  FORM_COMPONENT_PROPS,\n  type ComponentSize,\n  UPDATE_MODEL_EVENT,\n  CHANGE_EVENT\n} from '@element-ultra/shared'\nimport type { Options } from '@element-ultra/components/popper'\n\nexport const SelectProps = {\n  ...FORM_COMPONENT_PROPS,\n  allowCreate: Boolean,\n  autocomplete: {\n    type: String as PropType<'none' | 'both' | 'list' | 'inline'>,\n    default: 'none'\n  },\n  automaticDropdown: Boolean,\n  clearable: Boolean,\n  clearIcon: {\n    type: [String, Object] as PropType<string | Component>,\n    default: CircleClose\n  },\n  effect: {\n    type: String as PropType<'light' | 'dark'>,\n    default: 'light'\n  },\n  collapseTags: {\n    type: Boolean\n  },\n  defaultFirstOption: Boolean,\n  disabled: {\n    type: Boolean,\n    default: undefined\n  },\n  estimatedOptionHeight: {\n    type: Number,\n    default: undefined\n  },\n  filterable: Boolean,\n  filterMethod: Function,\n  height: {\n    type: Number,\n    default: 170 // 5 items by default\n  },\n  itemHeight: {\n    type: Number,\n    default: 34\n  },\n  id: String,\n  loading: Boolean,\n  loadingText: {\n    type: String,\n    default: '加载中'\n  },\n  labelKey: {\n    type: String,\n    default: 'label'\n  },\n  modelValue: {\n    type: [Array, String, Number, Boolean, Object] as PropType<\n      any[] | string | number | boolean | Record<string, any> | any\n    >,\n    default: undefined\n  },\n  multiple: Boolean,\n  multipleLimit: {\n    type: Number,\n    default: 0\n  },\n  name: String,\n  noDataText: {\n    type: String,\n    default: '无数据'\n  },\n  noMatchText: {\n    type: String,\n    default: '无匹配数据'\n  },\n  remoteMethod: Function,\n  reserveKeyword: {\n    type: Boolean,\n    default: true\n  },\n  options: {\n    type: Array as PropType<Record<string, any>[]>,\n    default: () => []\n  },\n  placeholder: {\n    type: String,\n    default: '请选择'\n  },\n  popperAppendToBody: {\n    type: Boolean,\n    default: undefined\n  },\n  teleported: useTooltipContentProps.teleported,\n  popperClass: {\n    type: String,\n    default: ''\n  },\n  popperOptions: {\n    type: Object as PropType<Partial<Options>>,\n    default: () => ({} as Partial<Options>)\n  },\n  remote: Boolean,\n  size: {\n    type: String as PropType<ComponentSize>,\n    validator: isValidComponentSize\n  },\n  valueKey: {\n    type: String,\n    default: 'value'\n  },\n  scrollbarAlwaysOn: {\n    type: Boolean,\n    default: false\n  },\n  selectable: {\n    type: Function as PropType<(node: any) => boolean>\n  },\n  text: {\n    type: String\n  },\n  textField: {\n    type: String\n  }\n}\n\nexport const SelectEmits = {\n  [UPDATE_MODEL_EVENT]: (\n    val: any,\n    label: string | string[],\n    option?: Record<string, any> | Record<string, any>[]\n  ) => true,\n  [CHANGE_EVENT]: (\n    val: any,\n    label: string | string[],\n    option?: Record<string, any> | Record<string, any>[]\n  ) => true,\n  'update:text': (label: string) => true,\n  'remove-tag': (tag: Record<string, any>) => true,\n  clear: () => true,\n  'visible-change': (visible: boolean) => true,\n  focus: (event: FocusEvent) => true,\n  blur: () => true\n}\n\nexport type SelectEmitFn = EmitFn<typeof SelectEmits>\n\nexport const OptionProps = {\n  disabled: {\n    type: Boolean\n  },\n  hovering: {\n    type: Boolean\n  },\n  item: {\n    type: Object as PropType<Record<string, any>>,\n    required: true\n  },\n  index: {\n    type: Number,\n    required: true\n  },\n  style: {\n    type: Object\n  },\n  selected: {\n    type: Boolean\n  },\n  created: {\n    type: Boolean\n  }\n}\n"],"names":[],"mappings":"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"}