element-plus/packages/tokens/tabs.ts
啝裳 d5e586b51b
feat: tabpane name support number type (#5915)
* feat: tabpane name support number type

* fix: update
2022-02-10 23:25:39 +08:00

29 lines
733 B
TypeScript

import type { TabsProps, TabPaneProps } from '@element-plus/components/tabs'
import type {
ComponentInternalInstance,
ComputedRef,
Ref,
InjectionKey,
UnwrapRef,
ShallowReactive,
} from 'vue'
export type TabsPaneContext = UnwrapRef<{
uid: number
instance: ShallowReactive<ComponentInternalInstance>
props: TabPaneProps
paneName: ComputedRef<string | number | undefined>
active: ComputedRef<boolean>
index: Ref<string | undefined>
isClosable: ComputedRef<boolean>
}>
export interface TabsRootContext {
props: TabsProps
currentName: Ref<string | number>
updatePaneState: (pane: TabsPaneContext) => void
}
export const tabsRootContextKey: InjectionKey<TabsRootContext> =
Symbol('tabsRootContextKey')