UNPKG

1.64 kBJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.setPrinter = setPrinter;
7exports.warn = warn;
8exports.log = log;
9exports.subTask = subTask;
10exports.task = task;
11
12var _chalk;
13
14function _load_chalk() {
15 return _chalk = require("chalk");
16}
17
18var _nodeEmoji;
19
20function _load_nodeEmoji() {
21 return _nodeEmoji = require("node-emoji");
22}
23
24let printer = null;
25function setPrinter(value) {
26 printer = value;
27}
28class Logger {
29 constructor(stream) {
30 this.stream = stream;
31 }
32 warn(message) {
33 this.log((0, (_chalk || _load_chalk()).yellow)(`Warning: ${message}`));
34 }
35 log(message) {
36 if (printer == null) {
37 this.stream.write(`${message}\n`);
38 } else {
39 printer(message);
40 }
41 }
42 subTask(title, _promise) {
43 this.log(` ${title}`);
44 return _promise;
45 }
46 task(title, _promise) {
47 const promise = _promise;
48 this.log(title);
49 return promise;
50 }
51}
52class TtyLogger extends Logger {
53 constructor(stream) {
54 super(stream);
55 }
56 warn(message) {
57 this.log(`${(0, (_nodeEmoji || _load_nodeEmoji()).get)("warning")} ${(0, (_chalk || _load_chalk()).yellow)(message)}`);
58 }
59}
60const logger = process.stdout.isTTY ? new TtyLogger(process.stdout) : new Logger(process.stdout);
61function warn(message) {
62 logger.warn(message);
63}
64function log(message) {
65 logger.log(message);
66}
67function subTask(title, promise) {
68 return logger.subTask(title, promise);
69}
70function task(title, promise) {
71 return logger.task(title, promise);
72}
73//# sourceMappingURL=log.js.map
\No newline at end of file