Skip to content

Commit

Permalink
fix: Modify manifest entries for asset entrypoints (close #1765)
Browse files Browse the repository at this point in the history
  • Loading branch information
ElMassimo committed Jan 28, 2021
1 parent ca862a2 commit 882d354
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions packages/vite/src/node/plugins/manifest.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ interface ManifestChunk {
dynamicImports?: string[]
}

function isEmptyChunk(chunk: OutputChunk): boolean {
return !chunk.code || (chunk.code.length <= 1 && !chunk.code.trim())
}

export function manifestPlugin(config: ResolvedConfig): Plugin {
const manifest: Manifest = {}

Expand All @@ -42,6 +46,15 @@ export function manifestPlugin(config: ResolvedConfig): Plugin {
}
}

function replaceFileWithAsset(chunk: OutputChunk) {
const name = chunk.facadeModuleId ? getChunkName(chunk) : chunk.name
const asset = Object.values(bundle).find(
(otherChunk) => otherChunk.type === 'asset' && otherChunk.name == name
)
if (asset) chunk.fileName = asset.fileName
return chunk
}

function createChunk(chunk: OutputChunk): ManifestChunk {
const manifestChunk: ManifestChunk = {
file: chunk.fileName
Expand Down Expand Up @@ -83,6 +96,9 @@ export function manifestPlugin(config: ResolvedConfig): Plugin {
for (const file in bundle) {
const chunk = bundle[file]
if (chunk.type === 'chunk') {
if (isEmptyChunk(chunk)) {
replaceFileWithAsset(chunk)
}
manifest[getChunkName(chunk)] = createChunk(chunk)
}
}
Expand Down

0 comments on commit 882d354

Please sign in to comment.