From e1d8d8b4f3329dd2162339402cc13caa50a2cc61 Mon Sep 17 00:00:00 2001 From: owjs3901 Date: Mon, 3 Feb 2025 15:10:29 +0900 Subject: [PATCH] Fix theme typing --- .changeset/khaki-weeks-film.md | 5 +++++ packages/react/src/utils/get-theme.ts | 4 +++- packages/react/src/utils/set-theme.ts | 4 +++- 3 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 .changeset/khaki-weeks-film.md diff --git a/.changeset/khaki-weeks-film.md b/.changeset/khaki-weeks-film.md new file mode 100644 index 00000000..8829c4a1 --- /dev/null +++ b/.changeset/khaki-weeks-film.md @@ -0,0 +1,5 @@ +--- +"@devup-ui/react": patch +--- + +Fix typing issue diff --git a/packages/react/src/utils/get-theme.ts b/packages/react/src/utils/get-theme.ts index 47fc7643..134e8445 100644 --- a/packages/react/src/utils/get-theme.ts +++ b/packages/react/src/utils/get-theme.ts @@ -2,6 +2,8 @@ import { DevupTheme } from '../types/theme' -export function getTheme(): keyof DevupTheme | null { +export function getTheme(): + | (keyof DevupTheme extends undefined ? string : keyof DevupTheme) + | null { return document.documentElement.getAttribute('data-theme') as keyof DevupTheme } diff --git a/packages/react/src/utils/set-theme.ts b/packages/react/src/utils/set-theme.ts index 92f642d3..94269790 100644 --- a/packages/react/src/utils/set-theme.ts +++ b/packages/react/src/utils/set-theme.ts @@ -2,7 +2,9 @@ import { DevupTheme } from '../types/theme' -export function setTheme(theme: keyof DevupTheme): void { +export function setTheme( + theme: keyof DevupTheme extends undefined ? string : keyof DevupTheme, +): void { document.documentElement.setAttribute('data-theme', theme) localStorage.setItem('__DF_THEME_SELECTED__', theme) }