UNPKG

vexip-ui

Version:

A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good

1 lines 2.25 kB
{"version":3,"file":"symbol.cjs","sources":["../../../components/select/symbol.ts"],"sourcesContent":["import type { OptionKeyConfig, OptionState, RawOption } from '@/components/option'\n\nexport interface SelectKeyConfig extends OptionKeyConfig {\n group?: string,\n children?: string,\n}\n\nexport type SelectRawOption = RawOption\nexport type SelectBaseValue = string | number | boolean\nexport type SelectValue = SelectBaseValue | SelectBaseValue[] | null\n\nexport interface SelectOptionState extends OptionState {\n group: boolean,\n depth: number,\n parent: SelectOptionState | null,\n data: SelectRawOption,\n}\n\nexport type SelectFilter = (value: string, option: SelectOptionState) => boolean\n\nexport type SelectFilterPosition = 'in-control' | 'in-list'\n\nexport type SelectEvent = (value: SelectBaseValue, data: any) => void\nexport type ChangeEvent = (value: SelectValue, data: any | any[]) => void\n\nexport interface SelectListSlotParams {\n options: SelectOptionState[],\n isSelected: (option: SelectOptionState) => boolean,\n handleSelect: (option?: SelectOptionState | null) => void,\n}\n\nexport interface SelectSlots {\n selected?: (params: {\n value: SelectBaseValue,\n option: SelectOptionState | null,\n preview?: boolean,\n }) => any,\n prefix?: () => any,\n suffix?: () => any,\n control?: () => any,\n tag?: (params: {\n value: SelectBaseValue,\n option: SelectOptionState | null,\n handleClose: () => void,\n }) => any,\n restTag?: (params: { restCount: number }) => any,\n list?: (params: SelectListSlotParams) => any,\n prepend?: () => any,\n append?: () => any,\n /**\n * Option content slot.\n */\n default?: (params: { option: SelectOptionState, index: number, selected: boolean }) => any,\n group?: (params: { option: SelectOptionState, index: number }) => any,\n empty?: () => any,\n}\n\nexport const defaultKeyConfig: Required<SelectKeyConfig> = Object.freeze({\n value: 'value',\n label: 'label',\n disabled: 'disabled',\n divided: 'divided',\n title: 'title',\n group: 'group',\n children: 'children',\n})\n"],"names":["defaultKeyConfig"],"mappings":"gFAyDa,MAAAA,EAA8C,OAAO,OAAO,CACvE,MAAO,QACP,MAAO,QACP,SAAU,WACV,QAAS,UACT,MAAO,QACP,MAAO,QACP,SAAU,UACZ,CAAC"}