UNPKG

2.01 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const webpack = require("webpack");
4const path = require("path");
5const rimraf = require("rimraf");
6const Task = require('../ember-cli/lib/models/task');
7const webpack_xi18n_config_1 = require("../models/webpack-xi18n-config");
8const config_1 = require("../models/config");
9const app_utils_1 = require("../utilities/app-utils");
10exports.Extracti18nTask = Task.extend({
11 run: function (runTaskOptions) {
12 const project = this.project;
13 const appConfig = app_utils_1.getAppFromConfig(config_1.CliConfig.fromProject().config.apps, runTaskOptions.app);
14 const buildDir = '.tmp';
15 const genDir = runTaskOptions.outputPath || appConfig.root;
16 const config = new webpack_xi18n_config_1.XI18nWebpackConfig({
17 genDir,
18 buildDir,
19 i18nFormat: runTaskOptions.i18nFormat,
20 verbose: runTaskOptions.verbose,
21 progress: runTaskOptions.progress,
22 app: runTaskOptions.app,
23 }, appConfig).buildConfig();
24 const webpackCompiler = webpack(config);
25 return new Promise((resolve, reject) => {
26 const callback = (err, stats) => {
27 if (err) {
28 return reject(err);
29 }
30 if (stats.hasErrors()) {
31 reject();
32 }
33 else {
34 resolve();
35 }
36 };
37 webpackCompiler.run(callback);
38 })
39 .then(() => {
40 // Deletes temporary build folder
41 rimraf.sync(path.resolve(project.root, buildDir));
42 })
43 .catch((err) => {
44 if (err) {
45 this.ui.writeError('\nAn error occured during the i18n extraction:\n'
46 + ((err && err.stack) || err));
47 }
48 throw err;
49 });
50 }
51});
52//# sourceMappingURL=/users/hans/sources/angular-cli/tasks/extract-i18n.js.map
\No newline at end of file