diff options
Diffstat (limited to 'config')
| -rw-r--r-- | config/webpack.config.js | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/config/webpack.config.js b/config/webpack.config.js index aaee2f0..b645166 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -22,18 +22,21 @@ const entries = {}; const _scripts = {}; for (const scriptType in scripts) { - _scripts[getScriptRuntimeFromType(scriptType)] = { - ..._scripts[getScriptRuntimeFromType(scriptType)], - ...scripts[scriptType] - }; + const currentScripts = scripts[scriptType]; + const scriptRuntime = getScriptRuntimeFromType(scriptType); + for (const scriptName in currentScripts) { + const scriptPath = currentScripts[scriptName]; + _scripts[scriptPath] = _scripts[scriptPath] || {}; + _scripts[scriptPath][scriptRuntime] = _scripts[scriptPath][scriptRuntime] || []; + _scripts[scriptPath][scriptRuntime].push(scriptName); + } } -for (const scriptRuntime in _scripts) { - const scripts = _scripts[scriptRuntime]; - for (const script in scripts) { - const scriptPath = scripts[script]; +for (const scriptPath in _scripts) { + for (const scriptRuntime in _scripts[scriptPath]) { + const currentScripts = _scripts[scriptPath][scriptRuntime]; entries[`${scriptRuntime} - "${scriptPath}"`] = { - import: inlineJavascript(Object.keys(scripts).map(script => `import "${path.resolve(SOURCE_DIR, "scripts", script)}";`).join("\n")), + import: inlineJavascript(currentScripts.map(script => `import "${path.resolve(SOURCE_DIR, "scripts", script)}";`).join("\n")), filename: `scripts/${getFileNameHash(scriptPath)}/${scriptRuntime}.js` }; } @@ -63,6 +66,9 @@ module.exports = { } ] }, + optimization: { + concatenateModules: false + }, plugins: [ new SanitizeScriptsImportPlugin(), new InjectScriptPlugin(), |
