UNPKG

next-bundle-analyzer

Version:
24 lines (21 loc) 790 B
'use strict'; // @see https://github.com/vercel/next.js/blob/canary/packages/next/build/utils.ts function getCommonChunks(buildManifest) { const chunksMap = new Map(); let pageCount = 0; Object.entries(buildManifest.pages).forEach(([pageLabel, pageChunks]) => { pageCount += 1; pageChunks .filter((chunk) => !chunk.endsWith('.css')) .forEach((chunk) => { chunksMap.set(chunk, [...(chunksMap.get(chunk) || []), pageLabel]); }); }); return [...chunksMap.entries()] .filter(([, pageLabels]) => pageLabels.length > 1) .map(([chunk, pageLabels]) => ({ chunk, sharedByPages: pageLabels.length >= pageCount ? 'all' : pageLabels, })); } exports.getCommonChunks = getCommonChunks;