diff options
author | Sebastian <sebasjm@gmail.com> | 2023-05-26 16:51:47 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2023-05-26 16:51:47 -0300 |
commit | be27647ff73d1529372a80c3e145f3ee4f229a17 (patch) | |
tree | a8fd227dc5e8e4d871fde98fff0a9e49836a2ba6 /packages/web-util/src/hooks/useLang.ts | |
parent | 62cec679833db48465d67194e39b29db985aa430 (diff) |
use buildKeyStorage to prevent different type for same key
Diffstat (limited to 'packages/web-util/src/hooks/useLang.ts')
-rw-r--r-- | packages/web-util/src/hooks/useLang.ts | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/packages/web-util/src/hooks/useLang.ts b/packages/web-util/src/hooks/useLang.ts index d64cf6e1a..448cd8aba 100644 --- a/packages/web-util/src/hooks/useLang.ts +++ b/packages/web-util/src/hooks/useLang.ts @@ -14,7 +14,11 @@ GNU Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/> */ -import { LocalStorageState, useLocalStorage } from "./useLocalStorage.js"; +import { + StorageState, + buildStorageKey, + useLocalStorage, +} from "./useLocalStorage.js"; function getBrowserLang(): string | undefined { if (typeof window === "undefined") return undefined; @@ -23,7 +27,9 @@ function getBrowserLang(): string | undefined { return undefined; } -export function useLang(initial?: string): Required<LocalStorageState> { +const langPreferenceKey = buildStorageKey("lang-preference"); + +export function useLang(initial?: string): Required<StorageState> { const defaultValue = (getBrowserLang() || initial || "en").substring(0, 2); - return useLocalStorage("lang-preference", { defaultValue: defaultValue }); + return useLocalStorage(langPreferenceKey, defaultValue); } |