react-intlayer
Version:
Easily internationalize i18n your React applications with type-safe multilingual content management.
22 lines (20 loc) • 1.32 kB
JavaScript
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
const require_server_serverContext = require('./serverContext.cjs');
const require_server_IntlayerServerProvider = require('./IntlayerServerProvider.cjs');
const require_server_useDictionary = require('./useDictionary.cjs');
const require_server_useLoadDynamic = require('./useLoadDynamic.cjs');
let _intlayer_config_built = require("@intlayer/config/built");
//#region src/server/useDictionaryDynamic.ts
/**
* On the server side, Hook that transform a dictionary and return the content
*
* If the locale is not provided, it will use the locale from the server context
*/
const useDictionaryDynamic = (dictionaryPromise, key, locale, fallbackLocale) => {
const localeTarget = locale ?? require_server_serverContext.getServerContext(require_server_IntlayerServerProvider.IntlayerServerContext) ?? fallbackLocale ?? _intlayer_config_built.internationalization.defaultLocale;
return require_server_useDictionary.useDictionary(require_server_useLoadDynamic.useLoadDynamic(`${String(key)}.${localeTarget}`, dictionaryPromise[localeTarget]?.()), localeTarget);
};
//#endregion
exports.useDictionaryDynamic = useDictionaryDynamic;
//# sourceMappingURL=useDictionaryDynamic.cjs.map