{
  "version": 3,
  "sources": ["../../../../src/packages/default-resolver/index.ts"],
  "sourcesContent": ["import { PnpmError } from '../error/index.ts';\nimport type {\n  FetchFromRegistry,\n  GetAuthHeader,\n} from '../fetching-types/index.ts';\nimport { createGitResolver } from '../git-resolver/index.ts';\nimport { resolveFromLocal } from '../local-resolver/index.ts';\nimport {\n  type PackageMeta,\n  createNpmResolver,\n  type PackageMetaCache,\n  type ResolverFactoryOptions,\n} from '../npm-resolver/index.ts';\nimport type { WantedDependency } from '../resolve-dependencies/getWantedDependencies.ts';\nimport type {\n  ResolveResult,\n  ResolveOptions,\n  ResolveFunction,\n  WorkspaceResolveResult,\n} from '../resolver-base/index.ts';\nimport { resolveFromTarball } from '../tarball-resolver/index.ts';\n\nexport type {\n  PackageMeta,\n  PackageMetaCache,\n  ResolveFunction,\n  ResolverFactoryOptions,\n};\n\nexport function createResolver(\n  fetchFromRegistry: FetchFromRegistry,\n  getAuthHeader: GetAuthHeader,\n  pnpmOpts: ResolverFactoryOptions\n): { resolve: ResolveFunction; clearCache: () => void } {\n  const { resolveFromNpm, clearCache } = createNpmResolver(\n    fetchFromRegistry,\n    getAuthHeader,\n    pnpmOpts\n  );\n\n  const resolveFromGit = createGitResolver(pnpmOpts);\n\n  return {\n    resolve: async (\n      wantedDependency: WantedDependency,\n      opts: ResolveOptions\n    ): Promise<ResolveResult | WorkspaceResolveResult> => {\n      const resolution =\n        (await resolveFromNpm(wantedDependency, opts)) ??\n        (typeof wantedDependency.pref === 'string' &&\n          ((await resolveFromTarball(fetchFromRegistry, {\n            pref: wantedDependency.pref,\n          })) ??\n            (await resolveFromGit({ pref: wantedDependency.pref })) ??\n            (await resolveFromLocal(\n              {\n                pref: wantedDependency.pref,\n              },\n              opts\n            ))));\n\n      if (resolution === false || resolution === null) {\n        throw new PnpmError(\n          'SPEC_NOT_SUPPORTED_BY_ANY_RESOLVER',\n          `${typeof wantedDependency.alias === 'string' ? `${wantedDependency.alias}@` : ''}${wantedDependency.pref} isn't supported by any available resolver.`\n        );\n      }\n\n      return resolution;\n    },\n    clearCache,\n  };\n}\n"],
  "mappings": "AAAA,SAAS,iBAAiB;AAK1B,SAAS,yBAAyB;AAClC,SAAS,wBAAwB;AACjC;AAAA,EAEE;AAAA,OAGK;AAQP,SAAS,0BAA0B;AAS5B,SAAS,eACd,mBACA,eACA,UACsD;AACtD,QAAM,EAAE,gBAAgB,WAAW,IAAI;AAAA,IACrC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,iBAAiB,kBAAkB,QAAQ;AAEjD,SAAO;AAAA,IACL,SAAS,OACP,kBACA,SACoD;AACpD,YAAM,aACH,MAAM,eAAe,kBAAkB,IAAI,MAC3C,OAAO,iBAAiB,SAAS,aAC9B,MAAM,mBAAmB,mBAAmB;AAAA,QAC5C,MAAM,iBAAiB;AAAA,MACzB,CAAC,KACE,MAAM,eAAe,EAAE,MAAM,iBAAiB,KAAK,CAAC,KACpD,MAAM;AAAA,QACL;AAAA,UACE,MAAM,iBAAiB;AAAA,QACzB;AAAA,QACA;AAAA,MACF;AAEN,UAAI,eAAe,SAAS,eAAe,MAAM;AAC/C,cAAM,IAAI;AAAA,UACR;AAAA,UACA,GAAG,OAAO,iBAAiB,UAAU,WAAW,GAAG,iBAAiB,KAAK,MAAM,EAAE,GAAG,iBAAiB,IAAI;AAAA,QAC3G;AAAA,MACF;AAEA,aAAO;AAAA,IACT;AAAA,IACA;AAAA,EACF;AACF;",
  "names": []
}
