{
  "version": 3,
  "sources": ["../../../../src/packages/resolve-dependencies/getNonDevWantedDependencies.ts"],
  "sourcesContent": ["import type {\n  Dependencies,\n  DependencyManifest,\n  DependenciesMeta,\n} from '../types/index.ts';\nimport pickBy from 'ramda/src/pickBy';\nimport type { WantedDependency } from './getWantedDependencies.ts';\n\ntype GetNonDevWantedDependenciesManifest = Pick<\n  DependencyManifest,\n  | 'bundleDependencies'\n  | 'bundledDependencies'\n  | 'optionalDependencies'\n  | 'dependencies'\n  | 'dependenciesMeta'\n>;\n\nexport function getNonDevWantedDependencies(\n  pkg: GetNonDevWantedDependenciesManifest\n): WantedDependency[] {\n  let bd = pkg.bundledDependencies ?? pkg.bundleDependencies;\n\n  if (bd === true) {\n    bd = pkg.dependencies != null ? Object.keys(pkg.dependencies) : [];\n  }\n\n  const bundledDeps = new Set(Array.isArray(bd) ? bd : []);\n\n  const filterDeps = getNotBundledDeps.bind(null, bundledDeps);\n\n  return getWantedDependenciesFromGivenSet(\n    filterDeps({ ...pkg.optionalDependencies, ...pkg.dependencies }),\n    {\n      dependenciesMeta: pkg.dependenciesMeta ?? {},\n      devDependencies: {},\n      optionalDependencies: pkg.optionalDependencies ?? {},\n    }\n  );\n}\n\nfunction getWantedDependenciesFromGivenSet(\n  deps: Dependencies | undefined,\n  opts: {\n    devDependencies: Dependencies;\n    optionalDependencies: Dependencies;\n    dependenciesMeta: DependenciesMeta;\n  }\n): WantedDependency[] {\n  if (!deps) {\n    return [];\n  }\n\n  return Object.entries(deps).map(\n    ([alias, pref]: [string, string]): WantedDependency & {\n      injected: boolean | undefined;\n    } => {\n      return {\n        alias,\n        dev: typeof opts.devDependencies[alias] !== 'undefined',\n        injected: opts.dependenciesMeta[alias]?.injected,\n        optional: typeof opts.optionalDependencies[alias] !== 'undefined',\n        pref,\n        raw: `${alias}@${pref}`,\n      };\n    }\n  );\n}\n\nfunction getNotBundledDeps(\n  bundledDeps: Set<string>,\n  deps: Dependencies\n): Record<string, string> {\n  return pickBy.default((_, depName) => !bundledDeps.has(depName), deps);\n}\n"],
  "mappings": "AAKA,OAAO,YAAY;AAYZ,SAAS,4BACd,KACoB;AACpB,MAAI,KAAK,IAAI,uBAAuB,IAAI;AAExC,MAAI,OAAO,MAAM;AACf,SAAK,IAAI,gBAAgB,OAAO,OAAO,KAAK,IAAI,YAAY,IAAI,CAAC;AAAA,EACnE;AAEA,QAAM,cAAc,IAAI,IAAI,MAAM,QAAQ,EAAE,IAAI,KAAK,CAAC,CAAC;AAEvD,QAAM,aAAa,kBAAkB,KAAK,MAAM,WAAW;AAE3D,SAAO;AAAA,IACL,WAAW,EAAE,GAAG,IAAI,sBAAsB,GAAG,IAAI,aAAa,CAAC;AAAA,IAC/D;AAAA,MACE,kBAAkB,IAAI,oBAAoB,CAAC;AAAA,MAC3C,iBAAiB,CAAC;AAAA,MAClB,sBAAsB,IAAI,wBAAwB,CAAC;AAAA,IACrD;AAAA,EACF;AACF;AAEA,SAAS,kCACP,MACA,MAKoB;AACpB,MAAI,CAAC,MAAM;AACT,WAAO,CAAC;AAAA,EACV;AAEA,SAAO,OAAO,QAAQ,IAAI,EAAE;AAAA,IAC1B,CAAC,CAAC,OAAO,IAAI,MAER;AACH,aAAO;AAAA,QACL;AAAA,QACA,KAAK,OAAO,KAAK,gBAAgB,KAAK,MAAM;AAAA,QAC5C,UAAU,KAAK,iBAAiB,KAAK,GAAG;AAAA,QACxC,UAAU,OAAO,KAAK,qBAAqB,KAAK,MAAM;AAAA,QACtD;AAAA,QACA,KAAK,GAAG,KAAK,IAAI,IAAI;AAAA,MACvB;AAAA,IACF;AAAA,EACF;AACF;AAEA,SAAS,kBACP,aACA,MACwB;AACxB,SAAO,OAAO,QAAQ,CAAC,GAAG,YAAY,CAAC,YAAY,IAAI,OAAO,GAAG,IAAI;AACvE;",
  "names": []
}
