{"version":3,"file":"utils/stats.mjs","sources":["../../src/utils/stats.ts"],"sourcesContent":["import { Common, Manifest, Plugin, SDK } from '@rsdoctor/types';\nimport { PackageGraph } from '@rsdoctor/graph';\nimport { Chunks, ModuleGraphTrans } from '@rsdoctor/graph';\nimport { isArray } from 'es-toolkit/compat';\n\nexport function isRspackStats(\n  json: Common.PlainObject,\n): json is Plugin.StatsCompilation {\n  return isArray(json.assets) && isArray(json.chunks);\n}\n\nexport async function loadRspackStats(\n  jsons: Plugin.StatsCompilation[],\n): Promise<Manifest.RsdoctorManifest[]> {\n  const res = await Promise.all(\n    jsons.map(async (json) => {\n      const chunkGraph = Chunks.chunkTransform(new Map(), json);\n      const moduleGraph = ModuleGraphTrans.getModuleGraphByStats(\n        json,\n        '.',\n        chunkGraph,\n      );\n      await Chunks.getAssetsModulesData(\n        moduleGraph,\n        chunkGraph,\n        json.outputPath || '',\n        {},\n        undefined,\n      );\n      const pkgGraph = PackageGraph.fromModuleGraph(moduleGraph, '.');\n\n      return {\n        hash: json.hash || '',\n        moduleGraph: await moduleGraph.toData(),\n        chunkGraph: chunkGraph.toData(SDK.ToDataType.Normal),\n        packageGraph: pkgGraph.toData(),\n      } as Pick<\n        SDK.StoreData,\n        'moduleGraph' | 'chunkGraph' | 'hash' | 'packageGraph'\n      >;\n    }),\n  );\n\n  return res.map((e) => {\n    return {\n      client: {\n        enableRoutes: [],\n      },\n      data: {\n        pid: 0,\n        root: '',\n        errors: [],\n        configs: [],\n        plugin: {},\n        summary: {\n          costs: [],\n        },\n        envinfo: {} as SDK.EnvInfo,\n        resolver: [],\n        loader: [],\n        moduleCodeMap: {},\n        ...e,\n      },\n    };\n  });\n}\n"],"names":["isRspackStats","json","isArray","loadRspackStats","jsons","res","Promise","chunkGraph","Chunks","Map","moduleGraph","ModuleGraphTrans","undefined","pkgGraph","PackageGraph","SDK","e"],"mappings":";;;AAKO,SAASA,cACdC,IAAwB;IAExB,OAAOC,QAAQD,KAAK,MAAM,KAAKC,QAAQD,KAAK,MAAM;AACpD;AAEO,eAAeE,gBACpBC,KAAgC;IAEhC,MAAMC,MAAM,MAAMC,QAAQ,GAAG,CAC3BF,MAAM,GAAG,CAAC,OAAOH;QACf,MAAMM,aAAaC,OAAO,cAAc,CAAC,IAAIC,OAAOR;QACpD,MAAMS,cAAcC,iBAAiB,qBAAqB,CACxDV,MACA,KACAM;QAEF,MAAMC,OAAO,oBAAoB,CAC/BE,aACAH,YACAN,KAAK,UAAU,IAAI,IACnB,CAAC,GACDW;QAEF,MAAMC,WAAWC,aAAa,eAAe,CAACJ,aAAa;QAE3D,OAAO;YACL,MAAMT,KAAK,IAAI,IAAI;YACnB,aAAa,MAAMS,YAAY,MAAM;YACrC,YAAYH,WAAW,MAAM,CAACQ,IAAI,UAAU,CAAC,MAAM;YACnD,cAAcF,SAAS,MAAM;QAC/B;IAIF;IAGF,OAAOR,IAAI,GAAG,CAAC,CAACW,IACP;YACL,QAAQ;gBACN,cAAc,EAAE;YAClB;YACA,MAAM;gBACJ,KAAK;gBACL,MAAM;gBACN,QAAQ,EAAE;gBACV,SAAS,EAAE;gBACX,QAAQ,CAAC;gBACT,SAAS;oBACP,OAAO,EAAE;gBACX;gBACA,SAAS,CAAC;gBACV,UAAU,EAAE;gBACZ,QAAQ,EAAE;gBACV,eAAe,CAAC;gBAChB,GAAGA,CAAC;YACN;QACF;AAEJ"}