{"version":3,"file":"readDictionariesFromDisk.cjs","names":["existsSync","readdirSync","basename","extname","readFileSync","join"],"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,QAAIA,oBAAW,SAAS,GAAG;EACzB,MAAM,YAAQC,qBAAY,SAAS,CAAC,CAAC,QAAQ,SAC3C,KAAK,SAAS,OAAO,CACvB;EAEA,KAAK,MAAM,QAAQ,OAAO;GACxB,MAAM,UAAMC,oBAAS,UAAMC,mBAAQ,IAAI,CAAC;GACxC,aAAa,OAAO,KAAK,UACvBC,0BAAaC,gBAAK,WAAW,IAAI,GAAG,OAAO,CAC7C;EACF;CACF;CAEA,OAAO;AACT"}