20 lines
544 B
TypeScript
20 lines
544 B
TypeScript
![]() |
import type { InjectionKey } from 'vue'
|
||
|
import type { TabbarItemRect, TabbarProps } from '../components/tabbar'
|
||
|
|
||
|
export type TabbarItemContext = {
|
||
|
uid: number
|
||
|
name?: string | number
|
||
|
}
|
||
|
|
||
|
export type TabbarContext = TabbarProps & {
|
||
|
items: TabbarItemContext[]
|
||
|
activeUid: number
|
||
|
addItem: (item: TabbarItemContext) => void
|
||
|
removeItem: (uid: number) => void
|
||
|
setActiveItem: (uid: number) => void
|
||
|
setBulgeCircle: (rect: TabbarItemRect) => void
|
||
|
}
|
||
|
|
||
|
export const tabbarContextKey: InjectionKey<TabbarContext> =
|
||
|
Symbol('tabbarContextKey')
|