1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | var chalk_1 = require("chalk");
|
4 | var logUpdate = require("log-update");
|
5 | var identString = require("indent-string");
|
6 | var UpdateRenderer = require("listr-update-renderer");
|
7 | var errors_1 = require("../errors");
|
8 | var Renderer = (function () {
|
9 | function Renderer(tasks, options) {
|
10 | this.updateRenderer = new UpdateRenderer(tasks, options);
|
11 | }
|
12 | Renderer.prototype.render = function () {
|
13 | return this.updateRenderer.render();
|
14 | };
|
15 | Renderer.prototype.end = function (err) {
|
16 | this.updateRenderer.end(err);
|
17 | if (typeof err === undefined) {
|
18 | logUpdate.clear();
|
19 | return;
|
20 | }
|
21 |
|
22 | logUpdate.done();
|
23 |
|
24 | if (err) {
|
25 | if (err.errors && err.errors.length) {
|
26 | var count = identString(chalk_1.default.red.bold("We found " + err.errors.length + " errors"), 4);
|
27 | var details = err.errors
|
28 | .map(function (error) {
|
29 | if (errors_1.isDetailedError(error)) {
|
30 | return error.details;
|
31 | }
|
32 | return error;
|
33 | })
|
34 | .map(function (msg, i) {
|
35 | var source = err.errors[i].source;
|
36 | if (source) {
|
37 | var title = identString(chalk_1.default.red("Failed to generate " + source), 4);
|
38 | return [title, msg].join('\n');
|
39 | }
|
40 | return msg;
|
41 | })
|
42 | .join('\n');
|
43 | logUpdate(['', count, details].join('\n\n'));
|
44 | }
|
45 | else {
|
46 | logUpdate(chalk_1.default.red.bold(err.message));
|
47 | }
|
48 | }
|
49 | logUpdate.done();
|
50 | };
|
51 | return Renderer;
|
52 | }());
|
53 | exports.Renderer = Renderer;
|
54 |
|
\ | No newline at end of file |