@@ -3,6 +3,8 @@ import * as webpack from 'webpack';
33import { AngularCompilerPlugin } from '@ngtools/webpack' ;
44import { XI18nWebpackConfig } from '../models/webpack-xi18n-config' ;
55import { getAppFromConfig } from '../utilities/app-utils' ;
6+ import { getWebpackStatsConfig } from '../models/webpack-configs' ;
7+ import { statsErrorsToString , statsWarningsToString } from '../utilities/stats' ;
68
79const Task = require ( '../ember-cli/lib/models/task' ) ;
810const MemoryFS = require ( 'memory-fs' ) ;
@@ -34,27 +36,26 @@ export const Extracti18nTask = Task.extend({
3436
3537 const webpackCompiler = webpack ( config ) ;
3638 webpackCompiler . outputFileSystem = new MemoryFS ( ) ;
39+ const statsConfig = getWebpackStatsConfig ( runTaskOptions . verbose ) ;
3740
3841 return new Promise ( ( resolve , reject ) => {
3942 const callback : webpack . compiler . CompilerCallback = ( err , stats ) => {
4043 if ( err ) {
4144 return reject ( err ) ;
4245 }
4346
47+ const json = stats . toJson ( 'verbose' ) ;
48+ if ( stats . hasWarnings ( ) ) {
49+ this . ui . writeLine ( statsWarningsToString ( json , statsConfig ) ) ;
50+ }
4451 if ( stats . hasErrors ( ) ) {
45- reject ( ) ;
52+ reject ( statsErrorsToString ( json , statsConfig ) ) ;
4653 } else {
4754 resolve ( ) ;
4855 }
4956 } ;
5057
5158 webpackCompiler . run ( callback ) ;
52- } )
53- . catch ( ( err : Error ) => {
54- if ( err ) {
55- this . ui . writeError ( '\nAn error occured during the i18n extraction:\n'
56- + ( ( err && err . stack ) || err ) ) ;
57- }
5859 } ) ;
5960 }
6061} ) ;
0 commit comments