{
  "version": 3,
  "sources": ["../../../../../src/packages/core/uninstall/removeDeps.ts"],
  "sourcesContent": ["import { packageManifestLogger } from '../../core-loggers/index.ts';\nimport {\n  type DependenciesField,\n  DEPENDENCIES_FIELDS,\n  type ProjectManifest,\n} from '../../types/index.ts';\n\nexport async function removeDeps(\n  packageManifest: ProjectManifest,\n  removedPackages: string[],\n  opts: {\n    saveType?: DependenciesField | undefined;\n    prefix: string;\n  }\n): Promise<ProjectManifest> {\n  if (opts.saveType) {\n    if (packageManifest[opts.saveType] == null) {\n      return packageManifest;\n    }\n\n    for (const dependency of removedPackages) {\n      delete packageManifest[opts.saveType as DependenciesField]?.[dependency];\n    }\n  } else {\n    for (const depField of DEPENDENCIES_FIELDS) {\n      if (!packageManifest[depField]) {\n        continue;\n      }\n\n      for (const dependency of removedPackages) {\n        delete packageManifest[depField][dependency];\n      }\n    }\n  }\n\n  if (typeof packageManifest.peerDependencies !== 'undefined') {\n    for (const removedDependency of removedPackages) {\n      delete packageManifest.peerDependencies[removedDependency];\n    }\n  }\n\n  if (typeof packageManifest.dependenciesMeta !== 'undefined') {\n    for (const removedDependency of removedPackages) {\n      delete packageManifest.dependenciesMeta[removedDependency];\n    }\n  }\n\n  packageManifestLogger.debug({\n    prefix: opts.prefix,\n    updated: packageManifest,\n  });\n\n  return packageManifest;\n}\n"],
  "mappings": "AAAA,SAAS,6BAA6B;AACtC;AAAA,EAEE;AAAA,OAEK;AAEP,eAAsB,WACpB,iBACA,iBACA,MAI0B;AAC1B,MAAI,KAAK,UAAU;AACjB,QAAI,gBAAgB,KAAK,QAAQ,KAAK,MAAM;AAC1C,aAAO;AAAA,IACT;AAEA,eAAW,cAAc,iBAAiB;AACxC,aAAO,gBAAgB,KAAK,QAA6B,IAAI,UAAU;AAAA,IACzE;AAAA,EACF,OAAO;AACL,eAAW,YAAY,qBAAqB;AAC1C,UAAI,CAAC,gBAAgB,QAAQ,GAAG;AAC9B;AAAA,MACF;AAEA,iBAAW,cAAc,iBAAiB;AACxC,eAAO,gBAAgB,QAAQ,EAAE,UAAU;AAAA,MAC7C;AAAA,IACF;AAAA,EACF;AAEA,MAAI,OAAO,gBAAgB,qBAAqB,aAAa;AAC3D,eAAW,qBAAqB,iBAAiB;AAC/C,aAAO,gBAAgB,iBAAiB,iBAAiB;AAAA,IAC3D;AAAA,EACF;AAEA,MAAI,OAAO,gBAAgB,qBAAqB,aAAa;AAC3D,eAAW,qBAAqB,iBAAiB;AAC/C,aAAO,gBAAgB,iBAAiB,iBAAiB;AAAA,IAC3D;AAAA,EACF;AAEA,wBAAsB,MAAM;AAAA,IAC1B,QAAQ,KAAK;AAAA,IACb,SAAS;AAAA,EACX,CAAC;AAED,SAAO;AACT;",
  "names": []
}
