Skip to content

Commit 66a3929

Browse files
committed
fix: dedupe assets
1 parent 787353c commit 66a3929

1 file changed

Lines changed: 8 additions & 3 deletions

File tree

packages/vite/src/node/plugins/manifest.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,21 +95,26 @@ export function manifestPlugin(config: ResolvedConfig): Plugin {
9595
}
9696
}
9797

98+
let assetSet: Set<string> | null = null
99+
98100
if (chunk.viteMetadata?.importedAssets.size) {
99-
manifestChunk.assets = [...chunk.viteMetadata.importedAssets]
101+
assetSet = chunk.viteMetadata.importedAssets
100102
}
101103

102104
if (chunk.viteMetadata?.importedCss.size) {
103105
manifestChunk.css = [...chunk.viteMetadata.importedCss]
104106
manifestChunk.css.forEach((cssFile) => {
105107
const asset = fileNameToAssetMeta.get(cssFile)
106108
if (asset?.importedAssets) {
107-
manifestChunk.assets ||= []
108-
manifestChunk.assets.push(...asset.importedAssets)
109+
assetSet = new Set([...(assetSet || []), ...asset.importedAssets])
109110
}
110111
})
111112
}
112113

114+
if (assetSet?.size) {
115+
manifestChunk.assets = [...assetSet]
116+
}
117+
113118
return manifestChunk
114119
}
115120

0 commit comments

Comments
 (0)