diff --git a/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/browser.ts b/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/browser.ts
index d805e2f15e8c..807dc7568a5a 100644
--- a/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/browser.ts
+++ b/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/browser.ts
@@ -11,7 +11,7 @@ import * as webpack from 'webpack';
import { IndexHtmlWebpackPlugin } from '../../plugins/index-html-webpack-plugin';
import { generateEntryPoints } from '../../utilities/package-chunk-sort';
import { WebpackConfigOptions } from '../build-options';
-import { getSourceMapDevTool, normalizeExtraEntryPoints } from './utils';
+import { getSourceMapDevTool, isPolyfillsEntry, normalizeExtraEntryPoints } from './utils';
const SubresourceIntegrityPlugin = require('webpack-subresource-integrity');
@@ -114,7 +114,7 @@ export function getBrowserConfig(wco: WebpackConfigOptions): webpack.Configurati
const moduleName = module.nameForCondition ? module.nameForCondition() : '';
return /[\\/]node_modules[\\/]/.test(moduleName)
- && !chunks.some(({ name }) => name === 'polyfills' || name === 'polyfills-es5'
+ && !chunks.some(({ name }) => isPolyfillsEntry(name)
|| globalStylesBundleNames.includes(name));
},
},
diff --git a/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/test.ts b/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/test.ts
index 2ea075e9c397..8c9566b6337f 100644
--- a/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/test.ts
+++ b/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/test.ts
@@ -10,7 +10,7 @@ import * as glob from 'glob';
import * as path from 'path';
import * as webpack from 'webpack';
import { WebpackConfigOptions, WebpackTestOptions } from '../build-options';
-import { getSourceMapDevTool } from './utils';
+import { getSourceMapDevTool, isPolyfillsEntry } from './utils';
/**
@@ -85,7 +85,7 @@ export function getTestConfig(
plugins: extraPlugins,
optimization: {
splitChunks: {
- chunks: ((chunk: { name: string }) => chunk.name !== 'polyfills'),
+ chunks: ((chunk: { name: string }) => !isPolyfillsEntry(chunk.name)),
cacheGroups: {
vendors: false,
vendor: {
@@ -95,7 +95,7 @@ export function getTestConfig(
const moduleName = module.nameForCondition ? module.nameForCondition() : '';
return /[\\/]node_modules[\\/]/.test(moduleName)
- && !chunks.some(({ name }) => name === 'polyfills');
+ && !chunks.some(({ name }) => isPolyfillsEntry(name));
},
},
},
diff --git a/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/utils.ts b/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/utils.ts
index 0a601b89e769..386128732417 100644
--- a/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/utils.ts
+++ b/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/utils.ts
@@ -101,3 +101,7 @@ export function getEsVersionForFileName(
return scriptTargetOverride && esVersionInFileName ?
'-' + ts.ScriptTarget[scriptTargetOverride].toLowerCase() : '';
}
+
+export function isPolyfillsEntry(name: string) {
+ return name === 'polyfills' || name === 'polyfills-es5';
+}
diff --git a/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma-context.html b/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma-context.html
index 5de33896d7db..cef84e87c8ea 100644
--- a/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma-context.html
+++ b/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma-context.html
@@ -29,6 +29,7 @@
+
%SCRIPTS%
diff --git a/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma-debug.html b/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma-debug.html
index 93a8a2005d6f..93739d39b7cf 100644
--- a/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma-debug.html
+++ b/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma-debug.html
@@ -30,6 +30,7 @@
+
%SCRIPTS%
diff --git a/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma.ts b/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma.ts
index a009ab2abab5..ca4958baf4a9 100644
--- a/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma.ts
+++ b/packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma.ts
@@ -209,6 +209,7 @@ const init: any = (config: any, emitter: any, customFileHandlers: any) => {
const alwaysServe = [
'/_karma_webpack_/runtime.js',
'/_karma_webpack_/polyfills.js',
+ '/_karma_webpack_/polyfills-es5.js',
'/_karma_webpack_/scripts.js',
'/_karma_webpack_/styles.js',
'/_karma_webpack_/vendor.js',