diff --git a/src/core/create_compilers/WebpackResult.ts b/src/core/create_compilers/WebpackResult.ts index c014f11..6c8d777 100644 --- a/src/core/create_compilers/WebpackResult.ts +++ b/src/core/create_compilers/WebpackResult.ts @@ -1,6 +1,6 @@ import format_messages from 'webpack-format-messages'; import { CompileResult, BuildInfo, CompileError, Chunk, CssFile } from './interfaces'; -import { ManifestData, Dirs } from '../../interfaces'; +import { ManifestData, Dirs, PageComponent } from '../../interfaces'; const locPattern = /\((\d+):(\d+)\)$/; @@ -66,14 +66,17 @@ export default class WebpackResult implements CompileResult { assets: this.assets, css: { main: extract_css(this.assets.main), - chunks: Object - .keys(this.assets) - .filter(chunkName => chunkName !== 'main') - .reduce((chunks: { [key: string]: string }, chukName) => { - const assets = this.assets[chukName]; - chunks[chukName] = extract_css(assets); - return chunks; - }, {}) + chunks: manifest_data.components + .reduce((chunks: Record, component: PageComponent) => { + const css_dependencies = []; + const css = extract_css(this.assets[component.name]); + + if (css) css_dependencies.push(css); + + chunks[component.file] = css_dependencies; + + return chunks; + }, {}) } }; } @@ -81,4 +84,4 @@ export default class WebpackResult implements CompileResult { print() { return this.stats.toString({ colors: true }); } -} \ No newline at end of file +}