{"version":3,"file":"time-select.mjs","sources":["../../../../../../packages/components/time-select/src/time-select.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\nimport { CircleClose, Clock } from '@element-plus/icons-vue'\nimport { useEmptyValuesProps, useSizeProp } from '@element-plus/hooks'\n\nimport type { UseEmptyValuesProps } from '@element-plus/hooks'\nimport type { PopperEffect } from '@element-plus/components/popper'\nimport type TimeSelect from './time-select.vue'\nimport type { CSSProperties, Component, ExtractPublicPropTypes } from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\n\nexport interface TimeSelectProps extends UseEmptyValuesProps {\n  /**\n   * @description set format of time\n   */\n  format?: string\n  /**\n   * @description binding value\n   */\n  modelValue?: string | null\n  /**\n   * @description whether TimeSelect is disabled\n   */\n  disabled?: boolean\n  /**\n   * @description whether the input is editable\n   */\n  editable?: boolean\n  /**\n   * @description Tooltip theme, built-in theme: `dark` / `light`\n   */\n  effect?: PopperEffect\n  /**\n   * @description whether to show clear button\n   */\n  clearable?: boolean\n  /**\n   * @description size of Input\n   */\n  size?: ComponentSize\n  /**\n   * @description placeholder in non-range mode\n   */\n  placeholder?: string\n  /**\n   * @description start time\n   */\n  start?: string\n  /**\n   * @description end time\n   */\n  end?: string\n  /**\n   * @description time step\n   */\n  step?: string\n  /**\n   * @description minimum time, any time before this time will be disabled\n   */\n  minTime?: string | null\n  /**\n   * @description maximum time, any time after this time will be disabled\n   */\n  maxTime?: string | null\n  /**\n   * @description whether `end` is included in options\n   */\n  includeEndTime?: boolean\n  /**\n   * @description same as `name` in native input\n   */\n  name?: string\n  /**\n   * @description custom prefix icon component\n   */\n  prefixIcon?: string | Component\n  /**\n   * @description custom clear icon component\n   */\n  clearIcon?: string | Component\n  /**\n   * @description custom class name for TimeSelect's dropdown\n   */\n  popperClass?: string\n  /**\n   * @description custom style for TimeSelect's dropdown\n   */\n  popperStyle?: string | CSSProperties\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `TimeSelectProps` instead.\n */\nexport const timeSelectProps = buildProps({\n  /**\n   * @description set format of time\n   */\n  format: {\n    type: String,\n    default: 'HH:mm',\n  },\n  /**\n   * @description binding value\n   */\n  modelValue: {\n    type: definePropType<string | null>(String),\n  },\n  /**\n   * @description whether TimeSelect is disabled\n   */\n  disabled: {\n    type: Boolean,\n    default: undefined,\n  },\n  /**\n   * @description whether the input is editable\n   */\n  editable: {\n    type: Boolean,\n    default: true,\n  },\n  /**\n   * @description Tooltip theme, built-in theme: `dark` / `light`\n   */\n  effect: {\n    type: definePropType<PopperEffect>(String),\n    default: 'light',\n  },\n  /**\n   * @description whether to show clear button\n   */\n  clearable: {\n    type: Boolean,\n    default: true,\n  },\n  /**\n   * @description size of Input\n   */\n  size: useSizeProp,\n  /**\n   * @description placeholder in non-range mode\n   */\n  placeholder: String,\n  /**\n   * @description start time\n   */\n  start: {\n    type: String,\n    default: '09:00',\n  },\n  /**\n   * @description end time\n   */\n  end: {\n    type: String,\n    default: '18:00',\n  },\n  /**\n   * @description time step\n   */\n  step: {\n    type: String,\n    default: '00:30',\n  },\n  /**\n   * @description minimum time, any time before this time will be disabled\n   */\n  minTime: {\n    type: definePropType<string | null>(String),\n  },\n  /**\n   * @description maximum time, any time after this time will be disabled\n   */\n  maxTime: {\n    type: definePropType<string | null>(String),\n  },\n  /**\n   * @description whether `end` is included in options\n   */\n  includeEndTime: Boolean,\n  /**\n   * @description same as `name` in native input\n   */\n  name: String,\n  /**\n   * @description custom prefix icon component\n   */\n  prefixIcon: {\n    type: definePropType<string | Component>([String, Object]),\n    default: () => Clock,\n  },\n  /**\n   * @description custom clear icon component\n   */\n  clearIcon: {\n    type: definePropType<string | Component>([String, Object]),\n    default: () => CircleClose,\n  },\n  /**\n   * @description custom class name for TimeSelect's dropdown\n   */\n  popperClass: {\n    type: String,\n    default: '',\n  },\n  /**\n   * @description custom style for TimeSelect's dropdown\n   */\n  popperStyle: {\n    type: definePropType<string | CSSProperties>([String, Object]),\n  },\n  ...useEmptyValuesProps,\n} as const)\n\nexport type TimeSelectPropsPublic = ExtractPublicPropTypes<\n  typeof timeSelectProps\n>\n\nexport type TimeSelectInstance = InstanceType<typeof TimeSelect> & unknown\n"],"names":[],"mappings":";;;;;AA4FO,MAAM,kBAAkB,UAAA,CAAW;AAAA;AAAA;AAAA;AAAA,EAIxC,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,UAAA,EAAY;AAAA,IACV,IAAA,EAAM,eAA8B,MAAM;AAAA,GAC5C;AAAA;AAAA;AAAA;AAAA,EAIA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,MAAA,EAAQ;AAAA,IACN,IAAA,EAAM,eAA6B,MAAM,CAAA;AAAA,IACzC,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,IAAA,EAAM,WAAA;AAAA;AAAA;AAAA;AAAA,EAIN,WAAA,EAAa,MAAA;AAAA;AAAA;AAAA;AAAA,EAIb,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,GAAA,EAAK;AAAA,IACH,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,eAA8B,MAAM;AAAA,GAC5C;AAAA;AAAA;AAAA;AAAA,EAIA,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,eAA8B,MAAM;AAAA,GAC5C;AAAA;AAAA;AAAA;AAAA,EAIA,cAAA,EAAgB,OAAA;AAAA;AAAA;AAAA;AAAA,EAIhB,IAAA,EAAM,MAAA;AAAA;AAAA;AAAA;AAAA,EAIN,UAAA,EAAY;AAAA,IACV,IAAA,EAAM,cAAA,CAAmC,CAAC,MAAA,EAAQ,MAAM,CAAC,CAAA;AAAA,IACzD,SAAS,MAAM;AAAA,GACjB;AAAA;AAAA;AAAA;AAAA,EAIA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,cAAA,CAAmC,CAAC,MAAA,EAAQ,MAAM,CAAC,CAAA;AAAA,IACzD,SAAS,MAAM;AAAA,GACjB;AAAA;AAAA;AAAA;AAAA,EAIA,WAAA,EAAa;AAAA,IACX,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,WAAA,EAAa;AAAA,IACX,IAAA,EAAM,cAAA,CAAuC,CAAC,MAAA,EAAQ,MAAM,CAAC;AAAA,GAC/D;AAAA,EACA,GAAG;AACL,CAAU;;;;"}