aboutsummaryrefslogtreecommitdiffstats
path: root/excalidraw-app/app-language/language-state.ts
blob: f491c2215eb06b8f609824af78bcf6c8018ef6d8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { useEffect } from "react";
import { atom, useAtom } from "../app-jotai";
import { getPreferredLanguage, languageDetector } from "./language-detector";

export const appLangCodeAtom = atom(getPreferredLanguage());

export const useAppLangCode = () => {
  const [langCode, setLangCode] = useAtom(appLangCodeAtom);

  useEffect(() => {
    languageDetector.cacheUserLanguage(langCode);
  }, [langCode]);

  return [langCode, setLangCode] as const;
};