UNPKG

@intlayer/core

Version:

Includes core Intlayer functions like translation, dictionary, and utility functions shared across multiple packages.

29 lines (27 loc) 1.15 kB
import { t as translation } from "../transpiler/translation/translation.mjs"; import { getPerLocaleDictionary } from "../deepTransformPlugins/getLocalizedContent.mjs"; import { orderDictionaries } from "./orderDictionaries.mjs"; //#region src/dictionaryManipulator/normalizeDictionary.ts const normalizeDictionary = (dictionary, configuration) => { const { locales } = configuration.internationalization; const parsedDictionary = JSON.parse(JSON.stringify(dictionary)); if (dictionary.locale) return { ...dictionary, locale: void 0, content: translation({ [dictionary.locale]: dictionary.content }) }; const perLocaleContent = locales.reduce((acc, locale) => { acc[locale] = getPerLocaleDictionary(parsedDictionary, locale).content; return acc; }, {}); return { ...dictionary, content: translation(perLocaleContent) }; }; const normalizeDictionaries = (dictionaries, configuration) => { return orderDictionaries(dictionaries, configuration).map((dictionary) => normalizeDictionary(dictionary, configuration)); }; //#endregion export { normalizeDictionaries, normalizeDictionary }; //# sourceMappingURL=normalizeDictionary.mjs.map