{
  "version": 3,
  "sources": ["../../../../src/packages/run-npm/index.ts"],
  "sourcesContent": ["import type childProcess from 'node:child_process';\nimport path from 'node:path';\nimport spawn from 'cross-spawn';\nimport process from 'node:process';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport PATH from 'path-name';\n\nexport interface RunNPMOptions {\n  cwd?: string;\n  env?: Record<string, string>;\n}\n\nexport function runNpm(\n  npmPath: string | undefined,\n  args: string[],\n  options?: RunNPMOptions\n): childProcess.SpawnSyncReturns<Buffer> {\n  const npm = npmPath ?? 'npm';\n  return runScriptSync(npm, args, {\n    cwd: options?.cwd ?? process.cwd(),\n    stdio: 'inherit',\n    userAgent: undefined,\n    env: { ...options?.env, COREPACK_ENABLE_STRICT: '0' },\n  });\n}\n\nexport function runScriptSync(\n  command: string,\n  args: string[],\n  opts: {\n    cwd: string;\n    stdio: childProcess.StdioOptions;\n    userAgent?: string | undefined;\n    env: Record<string, string>;\n  }\n): childProcess.SpawnSyncReturns<Buffer> {\n  const env = {\n    ...createEnv(opts),\n    ...opts.env,\n  };\n  const result = spawn.sync(command, args, {\n    ...opts,\n    env,\n  });\n  if (result.error) throw result.error;\n  return result;\n}\n\nfunction createEnv(opts: {\n  cwd: string;\n  userAgent?: string | undefined;\n}): NodeJS.ProcessEnv {\n  const env = { ...process.env };\n\n  env[PATH] = [\n    path.join(opts.cwd, 'node_modules', '.bin'),\n    path.dirname(process.execPath),\n    process.env[PATH],\n  ].join(path.delimiter);\n\n  if (typeof opts.userAgent === 'string' && opts.userAgent !== '') {\n    env.npm_config_user_agent = opts.userAgent;\n  }\n\n  return env;\n}\n"],
  "mappings": "AACA,OAAO,UAAU;AACjB,OAAO,WAAW;AAClB,OAAO,aAAa;AAGpB,OAAO,UAAU;AAOV,SAAS,OACd,SACA,MACA,SACuC;AACvC,QAAM,MAAM,WAAW;AACvB,SAAO,cAAc,KAAK,MAAM;AAAA,IAC9B,KAAK,SAAS,OAAO,QAAQ,IAAI;AAAA,IACjC,OAAO;AAAA,IACP,WAAW;AAAA,IACX,KAAK,EAAE,GAAG,SAAS,KAAK,wBAAwB,IAAI;AAAA,EACtD,CAAC;AACH;AAEO,SAAS,cACd,SACA,MACA,MAMuC;AACvC,QAAM,MAAM;AAAA,IACV,GAAG,UAAU,IAAI;AAAA,IACjB,GAAG,KAAK;AAAA,EACV;AACA,QAAM,SAAS,MAAM,KAAK,SAAS,MAAM;AAAA,IACvC,GAAG;AAAA,IACH;AAAA,EACF,CAAC;AACD,MAAI,OAAO,MAAO,OAAM,OAAO;AAC/B,SAAO;AACT;AAEA,SAAS,UAAU,MAGG;AACpB,QAAM,MAAM,EAAE,GAAG,QAAQ,IAAI;AAE7B,MAAI,IAAI,IAAI;AAAA,IACV,KAAK,KAAK,KAAK,KAAK,gBAAgB,MAAM;AAAA,IAC1C,KAAK,QAAQ,QAAQ,QAAQ;AAAA,IAC7B,QAAQ,IAAI,IAAI;AAAA,EAClB,EAAE,KAAK,KAAK,SAAS;AAErB,MAAI,OAAO,KAAK,cAAc,YAAY,KAAK,cAAc,IAAI;AAC/D,QAAI,wBAAwB,KAAK;AAAA,EACnC;AAEA,SAAO;AACT;",
  "names": []
}
