UNPKG

ar-design

Version:

AR Design is a (react | nextjs) ui library.

26 lines (25 loc) 1.02 kB
import Utils from "../../../infrastructure/shared/Utils"; import { NotificationEN, NotificationTR } from "../locales"; import KanbanBoardEN from "../locales/kanban-board/en"; import KanbanBoardTR from "../locales/kanban-board/tr"; import TableEN from "../locales/table/en"; import TableTR from "../locales/table/tr"; const useTranslation = function (currentLanguage, translations = {}) { const merged = {}; const ExtraLocales = { tr: { ...TableTR, ...KanbanBoardTR, ...NotificationTR }, en: { ...TableEN, ...KanbanBoardEN, ...NotificationEN }, }; const allLanguages = new Set([...Object.keys(translations), ...Object.keys(ExtraLocales)]); allLanguages.forEach((lang) => { merged[lang] = { ...translations[lang], ...ExtraLocales[lang], }; }); const t = (key, ...args) => { return Utils.StringFormat(merged[currentLanguage ?? "tr"][key], ...args) ?? ""; }; return { t, currentLanguage }; }; export default useTranslation;