UNPKG

vexip-ui

Version:

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

1 lines 1.71 kB
{"version":3,"file":"symbol.cjs","sources":["../../../components/tab-nav/symbol.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\n\nexport type TabNavAlign = 'left' | 'center' | 'right'\nexport type TabNavPlacement = 'top' | 'right' | 'bottom' | 'left'\n\nexport interface TabNavItemOptions {\n label: string | number,\n content?: string,\n icon?: Record<string, any>,\n disabled?: boolean,\n closable?: boolean,\n onToggle?: (active: boolean) => void,\n}\n\nexport type TabNavOptions = TabNavItemOptions | string | number\n\nexport interface ItemState {\n el?: HTMLElement | null,\n label: string | number,\n index: number,\n total: number,\n}\n\nexport interface TabNavState {\n currentActive: string | number,\n closable: boolean,\n increaseItem: (item: ItemState) => void,\n decreaseItem: (item: ItemState) => void,\n handleActive: (label: string | number) => void,\n handleClose: (label: string | number) => void,\n refreshLabels: () => void,\n}\n\nexport type ChangeEvent = (label: string | number) => void\n\nexport interface TabNavSlots {\n prefix?: () => any,\n suffix?: () => any,\n add?: () => any,\n marker?: () => any,\n /**\n * @internal\n */\n default?: () => any,\n}\n\nexport const TAB_NAV_STATE = '__VXP_TAB_NAV_STATE' as unknown as InjectionKey<TabNavState>\n\nexport const trackStyleMap = Object.freeze({\n top: ['left', 'width'],\n right: ['top', 'height'],\n bottom: ['left', 'width'],\n left: ['top', 'height'],\n} as const)\n"],"names":["TAB_NAV_STATE","trackStyleMap"],"mappings":"gFA8CO,MAAMA,EAAgB,sBAEhBC,EAAgB,OAAO,OAAO,CACzC,IAAK,CAAC,OAAQ,OAAO,EACrB,MAAO,CAAC,MAAO,QAAQ,EACvB,OAAQ,CAAC,OAAQ,OAAO,EACxB,KAAM,CAAC,MAAO,QAAQ,CACxB,CAAU"}