{"version":3,"file":"readDictionariesFromDisk.cjs","names":[],"sources":["../../../src/utils/readDictionariesFromDisk.ts"],"sourcesContent":["import { existsSync, readdirSync, readFileSync } from 'node:fs';\nimport { basename, extname, join } from 'node:path';\n\n/**\n * Reads all JSON dictionary files from a directory, keyed by filename.\n * Uses readFileSync instead of require() to avoid require.cache memory leak.\n */\nexport const readDictionariesFromDisk = <T = Record<string, any>>(\n  directory: string\n): T => {\n  const dictionaries: Record<string, any> = {};\n\n  if (existsSync(directory)) {\n    const files = readdirSync(directory).filter((file) =>\n      file.endsWith('.json')\n    );\n\n    for (const file of files) {\n      const key = basename(file, extname(file));\n      dictionaries[key] = JSON.parse(\n        readFileSync(join(directory, file), 'utf-8')\n      );\n    }\n  }\n\n  return dictionaries as T;\n};\n"],"mappings":";;;;;;;;;;AAOA,MAAa,4BACX,cACM;CACN,MAAM,eAAoC,CAAC;CAE3C,4BAAe,SAAS,GAAG;EACzB,MAAM,iCAAoB,SAAS,EAAE,QAAQ,SAC3C,KAAK,SAAS,OAAO,CACvB;EAEA,KAAK,MAAM,QAAQ,OAAO;GACxB,MAAM,8BAAe,6BAAc,IAAI,CAAC;GACxC,aAAa,OAAO,KAAK,oDACL,WAAW,IAAI,GAAG,OAAO,CAC7C;EACF;CACF;CAEA,OAAO;AACT"}