vexip-ui
Version:
A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good
1 lines • 8.2 kB
Source Map (JSON)
{"version":3,"file":"props.cjs","sources":["../../../components/date-picker/props.ts"],"sourcesContent":["import {\n booleanProp,\n booleanStringProp,\n buildProps,\n eventProp,\n iconProp,\n localeProp,\n sizeProp,\n stateProp,\n} from '@vexip-ui/config'\n\nimport type { ExtractPropTypes, PropType } from 'vue'\nimport type { IconEffect } from '@/components/icon'\nimport type { ConfigurableProps, EventListener, LocaleConfig } from '@vexip-ui/config'\nimport type { Placement } from '@vexip-ui/hooks'\nimport type { Dateable } from '@vexip-ui/utils'\nimport type {\n DatePickerChangeEvent,\n DatePickerFormatFn,\n DatePickerSlots,\n DatePickerType,\n DateShortcut,\n DateShortcutsPlacement,\n DateTimeType,\n TimePickerChangeEvent,\n TimePickerSlots,\n TimeShortcut,\n TimeShortcutsPlacement,\n TimeType,\n} from './symbol'\n\nexport interface DatePickerShortcutEvent {\n (name: string, value: Dateable | Dateable[]): void,\n (name: string, value: Dateable): void,\n (name: string, value: Dateable[]): void,\n}\n\nexport const datePickerProps = buildProps({\n size: sizeProp,\n state: stateProp,\n locale: Object as PropType<Partial<LocaleConfig['calendar'] & LocaleConfig['datePicker']>>,\n type: String as PropType<DatePickerType>,\n visible: booleanProp,\n placement: String as PropType<Placement>,\n transfer: booleanStringProp,\n value: [Number, String, Date, Array] as PropType<Dateable | Dateable[]>,\n format: String,\n valueFormat: [String, Array, Function] as PropType<string | string[] | DatePickerFormatFn>,\n filler: String,\n clearable: booleanProp,\n noAction: booleanProp,\n labels: Object as PropType<Partial<Record<DateTimeType, string>>>,\n dateSeparator: String,\n timeSeparator: String,\n shortcuts: Array as PropType<DateShortcut[]>,\n disabledDate: Function as PropType<(date: Date) => boolean>,\n steps: Array as PropType<number[]>,\n ctrlSteps: Array as PropType<number[]>,\n prefix: iconProp,\n prefixColor: String,\n suffix: iconProp,\n suffixColor: String,\n noSuffix: booleanProp,\n disabled: booleanProp,\n transitionName: String,\n confirmText: String,\n cancelText: String,\n today: [Number, String, Date] as PropType<Dateable>,\n range: booleanProp,\n loading: booleanProp,\n loadingIcon: iconProp,\n loadingLock: booleanProp,\n loadingEffect: String as PropType<IconEffect>,\n min: [Number, String, Date] as PropType<Dateable>,\n max: [Number, String, Date] as PropType<Dateable>,\n outsideClose: booleanProp,\n outsideCancel: booleanProp,\n placeholder: [String, Array] as PropType<string | string[]>,\n unitReadonly: booleanProp,\n weekStart: Number,\n popperAlive: booleanProp,\n shortcutsPlacement: String as PropType<DateShortcutsPlacement>,\n slots: Object as PropType<DatePickerSlots>,\n onInput: eventProp<(type: DateTimeType, value: number) => void>(),\n onPlus: eventProp<(type: DateTimeType, value: number) => void>(),\n onMinus: eventProp<(type: DateTimeType, value: number) => void>(),\n onEnter: eventProp(),\n onCancel: eventProp(),\n onChange: eventProp<EventListener<DatePickerChangeEvent>>(),\n onClear: eventProp(),\n onShortcut: eventProp<DatePickerShortcutEvent>(),\n onToggle: eventProp<(visible: boolean) => void>(),\n onFocus: eventProp(),\n onBlur: eventProp(),\n onChangeCol: eventProp<(type: DateTimeType | null, inputType: 'start' | 'end') => void>(),\n onClickOutside: eventProp(),\n onOutsideClose: eventProp(),\n})\n\nexport type DatePickerProps = ExtractPropTypes<typeof datePickerProps>\nexport type DatePickerCProps = ConfigurableProps<DatePickerProps>\n\nexport interface TimePickerShortcutEvent {\n (name: string, value: string | string[]): void,\n (name: string, value: string): void,\n (name: string, value: string[]): void,\n}\n\nexport const timePickerProps = buildProps({\n size: sizeProp,\n state: stateProp,\n locale: localeProp('timePicker'),\n visible: booleanProp,\n placement: String as PropType<Placement>,\n transfer: booleanStringProp,\n format: String,\n separator: String,\n value: [String, Array] as PropType<string | string[]>,\n filler: String,\n clearable: booleanProp,\n noAction: booleanProp,\n noArrow: booleanProp,\n pointer: booleanProp,\n candidate: Number as PropType<0 | 1 | 2 | 3>,\n steps: Array as PropType<number[]>,\n labels: Object as PropType<Partial<Record<TimeType, string>>>,\n shortcuts: Array as PropType<TimeShortcut[]>,\n range: booleanProp,\n disabled: booleanProp,\n transitionName: String,\n confirmText: String,\n cancelText: String,\n ctrlSteps: Array as PropType<number[]>,\n prefix: iconProp,\n prefixColor: String,\n suffix: iconProp,\n suffixColor: String,\n noSuffix: booleanProp,\n exchange: booleanProp,\n loading: booleanProp,\n loadingIcon: iconProp,\n loadingLock: booleanProp,\n loadingEffect: String as PropType<IconEffect>,\n min: String,\n max: String,\n outsideClose: booleanProp,\n outsideCancel: booleanProp,\n unitReadonly: booleanProp,\n popperAlive: booleanProp,\n shortcutsPlacement: String as PropType<TimeShortcutsPlacement>,\n placeholder: [String, Array] as PropType<string | string[]>,\n slots: Object as PropType<TimePickerSlots>,\n onInput: eventProp<(type: TimeType, value: number) => void>(),\n onPlus: eventProp<(type: TimeType, value: number) => void>(),\n onMinus: eventProp<(type: TimeType, value: number) => void>(),\n onEnter: eventProp(),\n onCancel: eventProp(),\n onChange: eventProp<EventListener<TimePickerChangeEvent>>(),\n onClear: eventProp(),\n onShortcut: eventProp<TimePickerShortcutEvent>(),\n onToggle: eventProp<(visible: boolean) => void>(),\n onFocus: eventProp(),\n onBlur: eventProp(),\n onChangeCol: eventProp<(type: TimeType | null, inputType: 'start' | 'end') => void>(),\n onClickOutside: eventProp(),\n onOutsideClose: eventProp(),\n})\n\nexport type TimePickerProps = ExtractPropTypes<typeof timePickerProps>\nexport type TimePickerCProps = ConfigurableProps<TimePickerProps>\n"],"names":["datePickerProps","buildProps","sizeProp","stateProp","booleanProp","booleanStringProp","iconProp","eventProp","timePickerProps","localeProp"],"mappings":"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"}