{
  "version": 3,
  "sources": ["../../../../src/packages/plugin-commands-script-runners/makeEnv.ts"],
  "sourcesContent": ["import { PnpmError } from '../error/index.ts';\nimport { prependDirsToPath } from '../env.path/index.ts';\nimport path from 'node:path';\nimport process from 'node:process';\n\nexport interface Env extends NodeJS.ProcessEnv {\n  npm_config_user_agent: string;\n  PATH?: string | undefined;\n  Path?: string | undefined;\n}\n\nexport function makeEnv(opts: {\n  extraEnv?: NodeJS.ProcessEnv | undefined;\n  userAgent?: string | undefined;\n  prependPaths: string[];\n}): Env {\n  for (const prependPath of opts.prependPaths) {\n    if (prependPath.includes(path.delimiter)) {\n      // Unfortunately, there is no way to escape the PATH delimiter,\n      // so directories added to the PATH should not contain it.\n      throw new PnpmError(\n        'BAD_PATH_DIR',\n        `Cannot add ${prependPath} to PATH because it contains the path delimiter character (${path.delimiter})`\n      );\n    }\n  }\n\n  const pathEnv = prependDirsToPath(opts.prependPaths);\n\n  return {\n    ...process.env,\n    ...opts.extraEnv,\n    npm_config_user_agent: opts.userAgent ?? 'pnpm',\n    [pathEnv.name]: pathEnv.value,\n  };\n}\n"],
  "mappings": "AAAA,SAAS,iBAAiB;AAC1B,SAAS,yBAAyB;AAClC,OAAO,UAAU;AACjB,OAAO,aAAa;AAQb,SAAS,QAAQ,MAIhB;AACN,aAAW,eAAe,KAAK,cAAc;AAC3C,QAAI,YAAY,SAAS,KAAK,SAAS,GAAG;AAGxC,YAAM,IAAI;AAAA,QACR;AAAA,QACA,cAAc,WAAW,8DAA8D,KAAK,SAAS;AAAA,MACvG;AAAA,IACF;AAAA,EACF;AAEA,QAAM,UAAU,kBAAkB,KAAK,YAAY;AAEnD,SAAO;AAAA,IACL,GAAG,QAAQ;AAAA,IACX,GAAG,KAAK;AAAA,IACR,uBAAuB,KAAK,aAAa;AAAA,IACzC,CAAC,QAAQ,IAAI,GAAG,QAAQ;AAAA,EAC1B;AACF;",
  "names": []
}
