Files
my_site/node_modules/tailwind-merge/src/lib/from-theme.ts
2026-03-24 14:30:59 +08:00

18 lines
624 B
TypeScript

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
}