{"version":3,"file":"getIntlayerBundle.cjs","names":["builtinModules"],"sources":["../../../src/loadDictionaries/getIntlayerBundle.ts"],"sourcesContent":["import { readFile } from 'node:fs/promises';\nimport { builtinModules } from 'node:module';\nimport { join } from 'node:path';\nimport { bundleFile, type ESBuildPlugin } from '@intlayer/config/file';\nimport { getProjectRequire } from '@intlayer/config/utils';\nimport type { IntlayerConfig } from '@intlayer/types/config';\n\n/**\n * Rewrites bare specifiers to absolute paths on the user's disk and externalizes them\n * to preserve directory context (__dirname/import.meta.url).\n */\nconst localResolvePlugin = (\n  aliases: Record<string, string>,\n  rootRequire: NodeJS.Require\n): ESBuildPlugin => {\n  return {\n    name: 'local-resolve',\n    setup(build) {\n      build.onResolve({ filter: /.*/ }, (args) => {\n        // Direct alias match\n        if (aliases[args.path]) {\n          return {\n            path: aliases[args.path],\n            external: true, // Prevents inlining and context loss\n          };\n        }\n\n        // Dynamic resolution via user workspace\n        if (args.path === 'defu' || args.path.startsWith('@intlayer/')) {\n          try {\n            const absolutePath = rootRequire.resolve(args.path);\n            return {\n              path: absolutePath,\n              external: true, // Injects `require('/absolute/path')`\n            };\n          } catch {\n            return null;\n          }\n        }\n\n        return null;\n      });\n    },\n  };\n};\n\nexport const getIntlayerBundle = async (configuration: IntlayerConfig) => {\n  const rootRequire = getProjectRequire(configuration.system.baseDir);\n\n  const configurationPath = join(\n    configuration.system.configDir,\n    `configuration.cjs`\n  );\n\n  const aliases = {\n    '@intlayer/config/built': configurationPath,\n  };\n\n  const filePath = rootRequire.resolve('intlayer');\n  const code = await readFile(filePath, 'utf-8');\n\n  const output = await bundleFile(code, filePath, {\n    bundle: true,\n    platform: 'node',\n    external: [\n      ...builtinModules,\n      ...builtinModules.map((mod) => `node:${mod}`),\n      'vscode',\n      'esbuild',\n    ],\n    minify: true,\n    plugins: [localResolvePlugin(aliases, rootRequire)],\n  });\n\n  return output ?? '';\n};\n"],"mappings":";;;;;;;;;;;;;AAWA,MAAM,sBACJ,SACA,gBACkB;AAClB,QAAO;EACL,MAAM;EACN,MAAM,OAAO;AACX,SAAM,UAAU,EAAE,QAAQ,MAAM,GAAG,SAAS;AAE1C,QAAI,QAAQ,KAAK,MACf,QAAO;KACL,MAAM,QAAQ,KAAK;KACnB,UAAU;KACX;AAIH,QAAI,KAAK,SAAS,UAAU,KAAK,KAAK,WAAW,aAAa,CAC5D,KAAI;AAEF,YAAO;MACL,MAFmB,YAAY,QAAQ,KAAK,KAE1B;MAClB,UAAU;MACX;YACK;AACN,YAAO;;AAIX,WAAO;KACP;;EAEL;;AAGH,MAAa,oBAAoB,OAAO,kBAAkC;CACxE,MAAM,4DAAgC,cAAc,OAAO,QAAQ;CAOnE,MAAM,UAAU,EACd,8CALA,cAAc,OAAO,WACrB,oBAI2C,EAC5C;CAED,MAAM,WAAW,YAAY,QAAQ,WAAW;AAgBhD,QAAO,4CAbyB,qCAFJ,UAAU,QAAQ,EAER,UAAU;EAC9C,QAAQ;EACR,UAAU;EACV,UAAU;GACR,GAAGA;GACH,GAAGA,2BAAe,KAAK,QAAQ,QAAQ,MAAM;GAC7C;GACA;GACD;EACD,QAAQ;EACR,SAAS,CAAC,mBAAmB,SAAS,YAAY,CAAC;EACpD,CAAC,IAEe"}