Skip to content

Commit 0126721

Browse files
Teamopclydin
authored andcommitted
fix(@angular-devkit/build_angular): use webpack 4 hooks for karma plugin
1 parent dad2de9 commit 0126721

File tree

1 file changed

+13
-9
lines changed
  • packages/angular_devkit/build_angular/src/angular-cli-files/plugins

1 file changed

+13
-9
lines changed

packages/angular_devkit/build_angular/src/angular-cli-files/plugins/karma.ts

+13-9
Original file line numberDiff line numberDiff line change
@@ -155,23 +155,27 @@ const init: any = (config: any, emitter: any, customFileHandlers: any) => {
155155
throw e;
156156
}
157157

158-
['invalid', 'watch-run', 'run'].forEach(function (name) {
159-
compiler.plugin(name, function (_: any, callback: () => void) {
160-
isBlocked = true;
158+
function handler(callback?: () => void) {
159+
isBlocked = true;
161160

162-
if (typeof callback === 'function') {
163-
callback();
164-
}
165-
});
166-
});
161+
if (typeof callback === 'function') {
162+
callback();
163+
}
164+
}
165+
166+
compiler.hooks.invalid.tap('karma', () => handler());
167+
168+
compiler.hooks.watchRun.tapAsync('karma', (_: any, callback: () => void) => handler(callback));
169+
170+
compiler.hooks.run.tapAsync('karma', (_: any, callback: () => void) => handler(callback));
167171

168172
function unblock(){
169173
isBlocked = false;
170174
blocked.forEach((cb) => cb());
171175
blocked = [];
172176
}
173177

174-
compiler.plugin('done', (stats: any) => {
178+
compiler.hooks.done.tap('karma', (stats: any) => {
175179
// Don't refresh karma when there are webpack errors.
176180
if (stats.compilation.errors.length === 0) {
177181
emitter.refreshFiles();

0 commit comments

Comments
 (0)