{
  "version": 3,
  "sources": ["../../../../src/packages/plugin-commands-store/storePrune.ts"],
  "sourcesContent": ["import { streamParser } from '../logger/index.ts';\nimport type {\n  PackageResponse,\n  StoreController,\n} from '../store-controller-types/index.ts';\nimport type { ReporterFunction } from './types.ts';\nimport { cleanExpiredDlxCache } from './cleanExpiredDlxCache.ts';\n\nexport async function storePrune(opts: {\n  reporter?: ReporterFunction | undefined;\n  storeController: StoreController<\n    PackageResponse,\n    PackageResponse,\n    { isBuilt: boolean; importMethod?: string | undefined }\n  >;\n  removeAlienFiles?: boolean | undefined;\n  cacheDir: string;\n  dlxCacheMaxAge: number;\n}): Promise<void> {\n  const reporter = opts.reporter;\n\n  if (typeof reporter !== 'undefined' && typeof reporter === 'function') {\n    streamParser.on('data', reporter);\n  }\n\n  await opts.storeController.prune(opts.removeAlienFiles);\n\n  await opts.storeController.close();\n\n  await cleanExpiredDlxCache({\n    cacheDir: opts.cacheDir,\n    dlxCacheMaxAge: opts.dlxCacheMaxAge,\n    now: new Date(),\n  });\n\n  if (reporter != null && typeof reporter === 'function') {\n    streamParser.removeListener('data', reporter);\n  }\n}\n"],
  "mappings": "AAAA,SAAS,oBAAoB;AAM7B,SAAS,4BAA4B;AAErC,eAAsB,WAAW,MAUf;AAChB,QAAM,WAAW,KAAK;AAEtB,MAAI,OAAO,aAAa,eAAe,OAAO,aAAa,YAAY;AACrE,iBAAa,GAAG,QAAQ,QAAQ;AAAA,EAClC;AAEA,QAAM,KAAK,gBAAgB,MAAM,KAAK,gBAAgB;AAEtD,QAAM,KAAK,gBAAgB,MAAM;AAEjC,QAAM,qBAAqB;AAAA,IACzB,UAAU,KAAK;AAAA,IACf,gBAAgB,KAAK;AAAA,IACrB,KAAK,oBAAI,KAAK;AAAA,EAChB,CAAC;AAED,MAAI,YAAY,QAAQ,OAAO,aAAa,YAAY;AACtD,iBAAa,eAAe,QAAQ,QAAQ;AAAA,EAC9C;AACF;",
  "names": []
}
