@intlayer/dictionaries-entry
Version:
Provides the entry path for Intlayer dictionaries, solving filesystem retrieval issues for bundlers like Webpack and Rollup.
25 lines (23 loc) • 1.2 kB
JavaScript
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
const require_runtime = require('./_virtual/_rolldown/runtime.cjs');
let node_fs = require("node:fs");
let node_path = require("node:path");
let _intlayer_config_built = require("@intlayer/config/built");
_intlayer_config_built = require_runtime.__toESM(_intlayer_config_built);
let _intlayer_config_utils = require("@intlayer/config/utils");
//#region src/index.ts
/**
* @intlayer/dictionaries-entry is a package that only returns the dictionary entry file.
* Using an external package allow to alias it in the bundle configuration (such as webpack).
* The alias allow hot reload the app (such as nextjs) on any dictionary change.
*/
const getDictionaries = (configuration = _intlayer_config_built.default) => {
const { system, build } = configuration;
const dictionariesPath = (0, node_path.join)(system.mainDir, `dictionaries.cjs`);
let dictionaries = {};
if ((0, node_fs.existsSync)(dictionariesPath)) dictionaries = (build.require ?? _intlayer_config_utils.configESMxCJSRequire)(dictionariesPath);
return dictionaries ?? {};
};
//#endregion
exports.getDictionaries = getDictionaries;
//# sourceMappingURL=index.cjs.map