Files
SnowLuma/.pnpm-store/v11/files/85/57107697e1fcfe9058b56fa21979fe4dd426b9b4b1e90b5412e8f6bf0744668f2dd277fc8d8ab273d50ef6cc6200ef37ab4b95bd7b00de844017b9e7afb934
T
TanTan 2a69b23b47
Dev Build / cleanup (push) Waiting to run
Dev Build / typecheck (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:27:07 +08:00

18 lines
624 B
Plaintext

import { DefaultThemeGroupIds, NoInfer, ThemeGetter, ThemeObject } from './types'
const fallbackThemeArr: ThemeObject<DefaultThemeGroupIds>[DefaultThemeGroupIds] = []
export const fromTheme = <
AdditionalThemeGroupIds extends string = never,
DefaultThemeGroupIdsInner extends string = DefaultThemeGroupIds,
>(
key: NoInfer<DefaultThemeGroupIdsInner | AdditionalThemeGroupIds>,
): ThemeGetter => {
const themeGetter = (theme: ThemeObject<DefaultThemeGroupIdsInner | AdditionalThemeGroupIds>) =>
theme[key] || fallbackThemeArr
themeGetter.isThemeGetter = true as const
return themeGetter
}