import { primitiveUtils } from "@local-logic/core/utils"; import { useMemo } from "react"; import { useLocalLogic } from "~/context"; import { TranslationsGroup } from "~/localization/types"; const useTranslator = (translationPacks: TranslationsGroup[]) => { const { client } = useLocalLogic(); const locale = client?.options?.locale ? client.options.locale : "en"; const translations = useMemo(() => { const translationPacksObj = primitiveUtils.object.mergeDeep( {}, ...translationPacks ) as TranslationsGroup; return translationPacksObj[locale]; }, [locale, translationPacks]); return { locale, translations, }; }; export default useTranslator;