{
  "version": 3,
  "sources": ["../../../../src/packages/cli-meta/index.ts"],
  "sourcesContent": ["import path from 'node:path';\nimport type { DependencyManifest } from '../types/index.ts';\nimport { loadJsonFile } from 'load-json-file';\nimport process from 'node:process';\n\nconst defaultManifest = {\n  name:\n    process.env.npm_package_name != null && process.env.npm_package_name !== ''\n      ? process.env.npm_package_name\n      : 'pnpm',\n  version:\n    process.env.npm_package_version != null &&\n    process.env.npm_package_version !== ''\n      ? process.env.npm_package_version\n      : '0.0.0',\n};\n\nlet pkgJson: DependencyManifest | undefined;\n\nif (require.main == null) {\n  pkgJson = defaultManifest;\n} else {\n  try {\n    pkgJson = {\n      ...defaultManifest,\n      ...loadJsonFile<DependencyManifest>(\n        path.join(path.dirname(require.main.filename), '../package.json')\n      ),\n    };\n  } catch {\n    pkgJson = defaultManifest;\n  }\n}\n\nexport const packageManager = {\n  name: pkgJson.name,\n  // Never a prerelease version\n  stableVersion: pkgJson.version.includes('-')\n    ? pkgJson.version.slice(0, pkgJson.version.indexOf('-'))\n    : pkgJson.version,\n  // This may be a 3.0.0-beta.2\n  version: pkgJson.version,\n};\n\nexport interface Process {\n  arch: NodeJS.Architecture;\n  platform: NodeJS.Platform;\n  pkg?: unknown;\n}\n\nexport function detectIfCurrentPkgIsExecutable(\n  proc: Process = process\n): boolean {\n  return 'pkg' in proc && proc.pkg != null;\n}\n\nexport function isExecutedByCorepack(\n  env: NodeJS.ProcessEnv = process.env\n): boolean {\n  return env.COREPACK_ROOT != null;\n}\n\nexport function getCurrentPackageName(proc: Process = process): string {\n  return detectIfCurrentPkgIsExecutable(proc)\n    ? getExePackageName(proc)\n    : 'pnpm';\n}\n\nfunction getExePackageName(proc: Process): string {\n  return `@pnpm/${normalizePlatformName(proc)}-${normalizeArchName(proc)}`;\n}\n\nfunction normalizePlatformName(proc: Process): string {\n  switch (proc.platform) {\n    case 'win32':\n      return 'win';\n    case 'darwin':\n      return 'macos';\n    default:\n      return proc.platform;\n  }\n}\n\nfunction normalizeArchName(proc: Process): string {\n  if (proc.platform === 'win32' && proc.arch === 'ia32') {\n    return 'x86';\n  }\n  return proc.arch;\n}\n"],
  "mappings": "AAAA,OAAO,UAAU;AAEjB,SAAS,oBAAoB;AAC7B,OAAO,aAAa;AAEpB,MAAM,kBAAkB;AAAA,EACtB,MACE,QAAQ,IAAI,oBAAoB,QAAQ,QAAQ,IAAI,qBAAqB,KACrE,QAAQ,IAAI,mBACZ;AAAA,EACN,SACE,QAAQ,IAAI,uBAAuB,QACnC,QAAQ,IAAI,wBAAwB,KAChC,QAAQ,IAAI,sBACZ;AACR;AAEA,IAAI;AAEJ,IAAI,QAAQ,QAAQ,MAAM;AACxB,YAAU;AACZ,OAAO;AACL,MAAI;AACF,cAAU;AAAA,MACR,GAAG;AAAA,MACH,GAAG;AAAA,QACD,KAAK,KAAK,KAAK,QAAQ,QAAQ,KAAK,QAAQ,GAAG,iBAAiB;AAAA,MAClE;AAAA,IACF;AAAA,EACF,QAAQ;AACN,cAAU;AAAA,EACZ;AACF;AAEO,MAAM,iBAAiB;AAAA,EAC5B,MAAM,QAAQ;AAAA;AAAA,EAEd,eAAe,QAAQ,QAAQ,SAAS,GAAG,IACvC,QAAQ,QAAQ,MAAM,GAAG,QAAQ,QAAQ,QAAQ,GAAG,CAAC,IACrD,QAAQ;AAAA;AAAA,EAEZ,SAAS,QAAQ;AACnB;AAQO,SAAS,+BACd,OAAgB,SACP;AACT,SAAO,SAAS,QAAQ,KAAK,OAAO;AACtC;AAEO,SAAS,qBACd,MAAyB,QAAQ,KACxB;AACT,SAAO,IAAI,iBAAiB;AAC9B;AAEO,SAAS,sBAAsB,OAAgB,SAAiB;AACrE,SAAO,+BAA+B,IAAI,IACtC,kBAAkB,IAAI,IACtB;AACN;AAEA,SAAS,kBAAkB,MAAuB;AAChD,SAAO,SAAS,sBAAsB,IAAI,CAAC,IAAI,kBAAkB,IAAI,CAAC;AACxE;AAEA,SAAS,sBAAsB,MAAuB;AACpD,UAAQ,KAAK,UAAU;AAAA,IACrB,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO,KAAK;AAAA,EAChB;AACF;AAEA,SAAS,kBAAkB,MAAuB;AAChD,MAAI,KAAK,aAAa,WAAW,KAAK,SAAS,QAAQ;AACrD,WAAO;AAAA,EACT;AACA,SAAO,KAAK;AACd;",
  "names": []
}
