Skip to content

Commit

Permalink
Emit assets correctly
Browse files Browse the repository at this point in the history
  • Loading branch information
timneutkens committed Aug 2, 2020
1 parent 0052fe1 commit cb3c096
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 49 deletions.
23 changes: 5 additions & 18 deletions packages/next/build/webpack/plugins/build-manifest-plugin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,7 @@ export default class BuildManifestPlugin {
this.modern = options.modern
}

createAssets(compilation: any) {
const assets: { [name: string]: any } = {}
createAssets(compilation: any, assets: any) {
const namedChunks: Map<string, CompilationType.Chunk> =
compilation.namedChunks
const assetMap: BuildManifest = {
Expand Down Expand Up @@ -213,27 +212,15 @@ export default class BuildManifestPlugin {
stage: webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS,
},
(assets: any) => {
const additionalAssets = this.createAssets(compilation)
return {
...assets,
...additionalAssets,
}
this.createAssets(compilation, assets)
}
)
})
return
}

compiler.hooks.emit.tapAsync(
'NextJsBuildManifest',
(compilation: any, callback: any) => {
const additionalAssets = this.createAssets(compilation)
compilation.assets = {
...compilation.assets,
...additionalAssets,
}
callback()
}
)
compiler.hooks.emit.tap('NextJsBuildManifest', (compilation: any) => {
this.createAssets(compilation, compilation.assets)
})
}
}
24 changes: 5 additions & 19 deletions packages/next/build/webpack/plugins/pages-manifest-plugin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,7 @@ export default class PagesManifestPlugin implements Plugin {
this.serverless = serverless
}

createAssets(compilation: any) {
const assets: { [name: string]: any } = {}
createAssets(compilation: any, assets: any) {
const entrypoints = compilation.entrypoints
const pages: PagesManifest = {}

Expand Down Expand Up @@ -49,7 +48,6 @@ export default class PagesManifestPlugin implements Plugin {
}

assets[PAGES_MANIFEST] = new RawSource(JSON.stringify(pages, null, 2))
return assets
}

apply(compiler: Compiler): void {
Expand All @@ -63,27 +61,15 @@ export default class PagesManifestPlugin implements Plugin {
stage: webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS,
},
(assets: any) => {
const additionalAssets = this.createAssets(compilation)
return {
...assets,
...additionalAssets,
}
this.createAssets(compilation, assets)
}
)
})
return
}

compiler.hooks.emit.tapAsync(
'NextJsPagesManifest',
(compilation: any, callback: any) => {
const additionalAssets = this.createAssets(compilation)
compilation.assets = {
...compilation.assets,
...additionalAssets,
}
callback()
}
)
compiler.hooks.emit.tap('NextJsPagesManifest', (compilation: any) => {
this.createAssets(compilation, compilation.assets)
})
}
}
15 changes: 3 additions & 12 deletions packages/next/build/webpack/plugins/react-loadable-plugin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,7 @@ export class ReactLoadablePlugin {
this.filename = opts.filename
}

createAssets(compiler: any, compilation: any) {
const assets: { [name: string]: any } = {}
createAssets(compiler: any, compilation: any, assets: any) {
const manifest = buildManifest(compiler, compilation)
var json = JSON.stringify(manifest, null, 2)
assets[this.filename] = {
Expand All @@ -132,23 +131,15 @@ export class ReactLoadablePlugin {
stage: webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS,
},
(assets: any) => {
const additionalAssets = this.createAssets(compiler, compilation)
return {
...assets,
...additionalAssets,
}
this.createAssets(compiler, compilation, assets)
}
)
})
return
}

compiler.hooks.emit.tap('ReactLoadableManifest', (compilation: any) => {
const additionalAssets = this.createAssets(compiler, compilation)
compilation.assets = {
...compilation.assets,
...additionalAssets,
}
this.createAssets(compiler, compilation, compilation.assets)
})
}
}

0 comments on commit cb3c096

Please sign in to comment.