{"version":3,"file":"index.mjs","names":[],"sources":["../../src/index.ts"],"sourcesContent":["/**\n * @intlayer/dictionaries-entry is a package that only returns the dictionary entry file.\n * Using an external package allow to alias it in the bundle configuration (such as webpack).\n * The alias allow hot reload the app (such as nextjs) on any dictionary change.\n */\n\nimport { existsSync } from 'node:fs';\nimport { join } from 'node:path';\nimport { default as defaultConfiguration } from '@intlayer/config/built';\nimport { configESMxCJSRequire } from '@intlayer/config/utils';\nimport type { IntlayerConfig } from '@intlayer/types/config';\nimport type { DictionaryRegistry } from '@intlayer/types/module_augmentation';\n\ntype GetDictionaries = (configuration?: IntlayerConfig) => DictionaryRegistry;\n\nexport const getDictionaries: GetDictionaries = (\n  configuration: IntlayerConfig = defaultConfiguration\n) => {\n  const { system, build } = configuration;\n\n  // Always use cjs for dictionaries entry as it uses require\n  const dictionariesPath = join(system.mainDir, `dictionaries.cjs`);\n\n  let dictionaries = {};\n  if (existsSync(dictionariesPath)) {\n    dictionaries = (build.require ?? configESMxCJSRequire)(dictionariesPath);\n  }\n\n  return (dictionaries ?? {}) as DictionaryRegistry;\n};\n"],"mappings":";;;;;;;;;;;AAeA,MAAa,mBACX,gBAAgC,yBAC7B;CACH,MAAM,EAAE,QAAQ,UAAU;CAG1B,MAAM,mBAAmB,KAAK,OAAO,SAAS,kBAAkB;CAEhE,IAAI,eAAe,CAAC;CACpB,IAAI,WAAW,gBAAgB,GAC7B,gBAAgB,MAAM,WAAW,sBAAsB,gBAAgB;CAGzE,OAAQ,gBAAgB,CAAC;AAC3B"}