@plugjs/plug 0.4.34 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build.cjs +14 -5
- package/dist/build.cjs.map +1 -1
- package/dist/build.d.ts +3 -1
- package/dist/build.mjs +14 -6
- package/dist/build.mjs.map +1 -1
- package/dist/cli.mjs +14 -11
- package/dist/cli.mjs.map +2 -2
- package/dist/fork.cjs +23 -18
- package/dist/fork.cjs.map +1 -1
- package/dist/fork.d.ts +1 -0
- package/dist/fork.mjs +23 -18
- package/dist/fork.mjs.map +1 -1
- package/dist/fs.cjs +1 -1
- package/dist/fs.cjs.map +1 -1
- package/dist/fs.d.ts +1 -1
- package/dist/fs.mjs +1 -1
- package/dist/fs.mjs.map +1 -1
- package/dist/helpers.d.ts +2 -2
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.map +1 -1
- package/dist/logging/emit.cjs +31 -2
- package/dist/logging/emit.cjs.map +2 -2
- package/dist/logging/emit.d.ts +14 -0
- package/dist/logging/emit.mjs +29 -2
- package/dist/logging/emit.mjs.map +2 -2
- package/dist/logging/github.cjs +4 -7
- package/dist/logging/github.cjs.map +1 -1
- package/dist/logging/github.mjs +4 -7
- package/dist/logging/github.mjs.map +1 -1
- package/dist/logging/logger.cjs +24 -38
- package/dist/logging/logger.cjs.map +1 -1
- package/dist/logging/logger.d.ts +7 -7
- package/dist/logging/logger.mjs +25 -39
- package/dist/logging/logger.mjs.map +1 -1
- package/dist/logging/options.cjs +31 -30
- package/dist/logging/options.cjs.map +1 -1
- package/dist/logging/options.d.ts +2 -11
- package/dist/logging/options.mjs +31 -30
- package/dist/logging/options.mjs.map +1 -1
- package/dist/logging.cjs +5 -3
- package/dist/logging.cjs.map +1 -1
- package/dist/logging.mjs +5 -3
- package/dist/logging.mjs.map +1 -1
- package/dist/pipe.d.ts +1 -1
- package/dist/plugs/build.cjs +12 -4
- package/dist/plugs/build.cjs.map +1 -1
- package/dist/plugs/build.d.ts +8 -3
- package/dist/plugs/build.mjs +12 -4
- package/dist/plugs/build.mjs.map +1 -1
- package/dist/plugs/exec.cjs +1 -1
- package/dist/plugs/exec.cjs.map +1 -1
- package/dist/plugs/exec.mjs +1 -1
- package/dist/plugs/exec.mjs.map +1 -1
- package/dist/plugs/exports.cjs +3 -5
- package/dist/plugs/exports.cjs.map +1 -1
- package/dist/plugs/exports.mjs +3 -5
- package/dist/plugs/exports.mjs.map +1 -1
- package/dist/utils/ansi.cjs +39 -0
- package/dist/utils/ansi.cjs.map +6 -0
- package/dist/utils/ansi.d.ts +4 -0
- package/dist/utils/ansi.mjs +13 -0
- package/dist/utils/ansi.mjs.map +6 -0
- package/dist/utils/exec.cjs +10 -1
- package/dist/utils/exec.cjs.map +1 -1
- package/dist/utils/exec.mjs +11 -2
- package/dist/utils/exec.mjs.map +1 -1
- package/dist/utils.cjs +2 -0
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.ts +1 -0
- package/dist/utils.mjs +1 -0
- package/dist/utils.mjs.map +1 -1
- package/package.json +1 -1
- package/src/build.ts +15 -6
- package/src/cli.mts +14 -9
- package/src/fork.ts +29 -23
- package/src/fs.ts +1 -1
- package/src/helpers.ts +2 -2
- package/src/index.ts +2 -2
- package/src/logging/emit.ts +65 -2
- package/src/logging/github.ts +4 -11
- package/src/logging/logger.ts +26 -44
- package/src/logging/options.ts +30 -38
- package/src/logging.ts +5 -3
- package/src/pipe.ts +1 -1
- package/src/plugs/build.ts +19 -5
- package/src/plugs/exec.ts +2 -2
- package/src/plugs/exports.ts +3 -4
- package/src/utils/ansi.ts +10 -0
- package/src/utils/exec.ts +7 -2
- package/src/utils.ts +1 -0
package/dist/index.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWA,mBAAsB;AAqBtB,cAAyB;AACzB,YAAuB;AACvB,YAAuB;AACvB,WAAsB;AACtB,SAAoB;AACpB,cAAyB;AACzB,YAAuB;AACvB,WAAsB;AACtB,YAAuB;AAGvB,qBAA+F;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWA,mBAAsB;AAqBtB,cAAyB;AACzB,YAAuB;AACvB,YAAuB;AACvB,WAAsB;AACtB,SAAoB;AACpB,cAAyB;AACzB,YAAuB;AACvB,WAAsB;AACtB,YAAuB;AAGvB,qBAA2C;AAC3C,qBAA+F;AAG/F,wBAAc,wBA/Cd;AAgDA,wBAAc,0BAhDd;AAiDA,wBAAc,wBAjDd;AAkDA,wBAAc,wBAlDd;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -29,8 +29,8 @@ export * as logging from './logging';
|
|
|
29
29
|
export * as paths from './paths';
|
|
30
30
|
export * as pipe from './pipe';
|
|
31
31
|
export * as utils from './utils';
|
|
32
|
-
export {
|
|
33
|
-
export {
|
|
32
|
+
export { BuildFailure, assert, fail } from './asserts';
|
|
33
|
+
export { $blu, $cyn, $grn, $gry, $mgt, $ms, $p, $red, $t, $und, $wht, $ylw, banner, log } from './logging';
|
|
34
34
|
export * from './build';
|
|
35
35
|
export * from './helpers';
|
|
36
36
|
export * from './plugs';
|
package/dist/index.mjs
CHANGED
|
@@ -9,8 +9,8 @@ import * as logging from "./logging.mjs";
|
|
|
9
9
|
import * as paths from "./paths.mjs";
|
|
10
10
|
import * as pipe from "./pipe.mjs";
|
|
11
11
|
import * as utils from "./utils.mjs";
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
12
|
+
import { BuildFailure, assert, fail } from "./asserts.mjs";
|
|
13
|
+
import { $blu, $cyn, $grn, $gry, $mgt, $ms, $p, $red, $t, $und, $wht, $ylw, banner, log } from "./logging.mjs";
|
|
14
14
|
export * from "./build.mjs";
|
|
15
15
|
export * from "./helpers.mjs";
|
|
16
16
|
export * from "./plugs.mjs";
|
package/dist/index.mjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts"],
|
|
4
|
-
"mappings": ";AAWA,SAAS,aAAa;AAqBtB,YAAY,aAAa;AACzB,YAAY,WAAW;AACvB,YAAY,WAAW;AACvB,YAAY,UAAU;AACtB,YAAY,QAAQ;AACpB,YAAY,aAAa;AACzB,YAAY,WAAW;AACvB,YAAY,UAAU;AACtB,YAAY,WAAW;AAGvB,SAAS,QAAQ,
|
|
4
|
+
"mappings": ";AAWA,SAAS,aAAa;AAqBtB,YAAY,aAAa;AACzB,YAAY,WAAW;AACvB,YAAY,WAAW;AACvB,YAAY,UAAU;AACtB,YAAY,QAAQ;AACpB,YAAY,aAAa;AACzB,YAAY,WAAW;AACvB,YAAY,UAAU;AACtB,YAAY,WAAW;AAGvB,SAAS,cAAc,QAAQ,YAAY;AAC3C,SAAS,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,IAAI,MAAM,IAAI,MAAM,MAAM,MAAM,QAAQ,WAAW;AAG/F,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/logging/emit.cjs
CHANGED
|
@@ -20,11 +20,14 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
20
20
|
// logging/emit.ts
|
|
21
21
|
var emit_exports = {};
|
|
22
22
|
__export(emit_exports, {
|
|
23
|
+
emit: () => emit2,
|
|
23
24
|
emitFancy: () => emitFancy,
|
|
25
|
+
emitForked: () => emitForked,
|
|
24
26
|
emitPlain: () => emitPlain
|
|
25
27
|
});
|
|
26
28
|
module.exports = __toCommonJS(emit_exports);
|
|
27
29
|
var import_node_util = require("node:util");
|
|
30
|
+
var import_asserts = require("../asserts.cjs");
|
|
28
31
|
var import_colors = require("./colors.cjs");
|
|
29
32
|
var import_levels = require("./levels.cjs");
|
|
30
33
|
var import_options = require("./options.cjs");
|
|
@@ -33,13 +36,14 @@ var _output = import_options.logOptions.output;
|
|
|
33
36
|
var _indentSize = import_options.logOptions.indentSize;
|
|
34
37
|
var _taskLength = import_options.logOptions.taskLength;
|
|
35
38
|
var _lineLength = import_options.logOptions.lineLength;
|
|
36
|
-
var _inspectOptions = import_options.logOptions.inspectOptions;
|
|
39
|
+
var _inspectOptions = { ...import_options.logOptions.inspectOptions };
|
|
37
40
|
import_options.logOptions.on("changed", (options) => {
|
|
38
41
|
_output = options.output;
|
|
39
42
|
_indentSize = options.indentSize;
|
|
40
43
|
_taskLength = options.taskLength;
|
|
41
44
|
_lineLength = options.lineLength;
|
|
42
|
-
_inspectOptions = options.inspectOptions;
|
|
45
|
+
_inspectOptions = { ...options.inspectOptions };
|
|
46
|
+
_defaultEmitter = options.format === "fancy" ? emitFancy : options.format === "plain" ? emitPlain : (0, import_asserts.fail)(`Invalid log format "${import_options.logOptions.format}"`);
|
|
43
47
|
});
|
|
44
48
|
var emitFancy = (options, args) => {
|
|
45
49
|
const { taskName, level, prefix = "", indent = 0 } = options;
|
|
@@ -97,9 +101,34 @@ var emitPlain = (options, args) => {
|
|
|
97
101
|
`);
|
|
98
102
|
}
|
|
99
103
|
};
|
|
104
|
+
var emitForked = (options, args) => {
|
|
105
|
+
if (process.connected && process.send) {
|
|
106
|
+
const { taskName, level, prefix = "", indent = 0 } = options;
|
|
107
|
+
const linePrefix = "".padStart(indent * _indentSize) + prefix;
|
|
108
|
+
const breakLength = _lineLength - _taskLength - linePrefix.length - 20;
|
|
109
|
+
const message = (0, import_node_util.formatWithOptions)({ ..._inspectOptions, breakLength }, ...args);
|
|
110
|
+
const lines = message.split("\n").map((line) => `${linePrefix}${line}`);
|
|
111
|
+
process.send({ logLevel: level, taskName, lines });
|
|
112
|
+
} else {
|
|
113
|
+
_defaultEmitter(options, args);
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
var _defaultEmitter = import_options.logOptions.format === "fancy" ? emitFancy : import_options.logOptions.format === "plain" ? emitPlain : (0, import_asserts.fail)(`Invalid log format "${import_options.logOptions.format}"`);
|
|
117
|
+
var _emitter = _defaultEmitter;
|
|
118
|
+
var wrapper = function emit(options, args) {
|
|
119
|
+
_defaultEmitter(options, args);
|
|
120
|
+
};
|
|
121
|
+
var emit2 = Object.defineProperty(wrapper, "emitter", {
|
|
122
|
+
get: () => _emitter,
|
|
123
|
+
set: (emitter) => {
|
|
124
|
+
_emitter = emitter || _defaultEmitter;
|
|
125
|
+
}
|
|
126
|
+
});
|
|
100
127
|
// Annotate the CommonJS export names for ESM import in node:
|
|
101
128
|
0 && (module.exports = {
|
|
129
|
+
emit,
|
|
102
130
|
emitFancy,
|
|
131
|
+
emitForked,
|
|
103
132
|
emitPlain
|
|
104
133
|
});
|
|
105
134
|
//# sourceMappingURL=emit.cjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/logging/emit.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAkC;AAElC,oBAAiD;AACjD,oBAAiD;AACjD,qBAA2B;AAC3B,qBAA2B;AAO3B,IAAI,UAAU,0BAAW;AACzB,IAAI,cAAc,0BAAW;AAC7B,IAAI,cAAc,0BAAW;AAC7B,IAAI,cAAc,0BAAW;AAC7B,IAAI,kBAAkB,0BAAW;
|
|
5
|
-
"names": []
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["emit"]
|
|
6
6
|
}
|
package/dist/logging/emit.d.ts
CHANGED
|
@@ -8,7 +8,21 @@ export interface LogEmitterOptions {
|
|
|
8
8
|
}
|
|
9
9
|
/** Emit a line (or multiple lines) of text to the log */
|
|
10
10
|
export type LogEmitter = (options: LogEmitterOptions, args: any[]) => void;
|
|
11
|
+
/** A {@link LogEmitter} function configurable with a specific emitter */
|
|
12
|
+
export interface ConfigurableLogEmitter extends LogEmitter {
|
|
13
|
+
get emitter(): LogEmitter;
|
|
14
|
+
set emitter(emitter: LogEmitter | undefined);
|
|
15
|
+
}
|
|
11
16
|
/** Emit in full colors with spinner support and whatnot! */
|
|
12
17
|
export declare const emitFancy: LogEmitter;
|
|
13
18
|
/** Emit in plain text (maybe with some colors?) */
|
|
14
19
|
export declare const emitPlain: LogEmitter;
|
|
20
|
+
export interface ForkedLogMessage {
|
|
21
|
+
logLevel: LogLevel;
|
|
22
|
+
taskName: string;
|
|
23
|
+
lines: string[];
|
|
24
|
+
}
|
|
25
|
+
/** Emit to the parent process of a forked child, or to the default emitter */
|
|
26
|
+
export declare const emitForked: LogEmitter;
|
|
27
|
+
/** A _configurable_ {@link LogEmitter} where log should be emitted to */
|
|
28
|
+
export declare const emit: ConfigurableLogEmitter;
|
package/dist/logging/emit.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// logging/emit.ts
|
|
2
2
|
import { formatWithOptions } from "node:util";
|
|
3
|
+
import { fail } from "../asserts.mjs";
|
|
3
4
|
import { $blu, $grn, $gry, $red, $t, $ylw } from "./colors.mjs";
|
|
4
5
|
import { DEBUG, INFO, NOTICE, TRACE, WARN } from "./levels.mjs";
|
|
5
6
|
import { logOptions } from "./options.mjs";
|
|
@@ -8,13 +9,14 @@ var _output = logOptions.output;
|
|
|
8
9
|
var _indentSize = logOptions.indentSize;
|
|
9
10
|
var _taskLength = logOptions.taskLength;
|
|
10
11
|
var _lineLength = logOptions.lineLength;
|
|
11
|
-
var _inspectOptions = logOptions.inspectOptions;
|
|
12
|
+
var _inspectOptions = { ...logOptions.inspectOptions };
|
|
12
13
|
logOptions.on("changed", (options) => {
|
|
13
14
|
_output = options.output;
|
|
14
15
|
_indentSize = options.indentSize;
|
|
15
16
|
_taskLength = options.taskLength;
|
|
16
17
|
_lineLength = options.lineLength;
|
|
17
|
-
_inspectOptions = options.inspectOptions;
|
|
18
|
+
_inspectOptions = { ...options.inspectOptions };
|
|
19
|
+
_defaultEmitter = options.format === "fancy" ? emitFancy : options.format === "plain" ? emitPlain : fail(`Invalid log format "${logOptions.format}"`);
|
|
18
20
|
});
|
|
19
21
|
var emitFancy = (options, args) => {
|
|
20
22
|
const { taskName, level, prefix = "", indent = 0 } = options;
|
|
@@ -72,8 +74,33 @@ var emitPlain = (options, args) => {
|
|
|
72
74
|
`);
|
|
73
75
|
}
|
|
74
76
|
};
|
|
77
|
+
var emitForked = (options, args) => {
|
|
78
|
+
if (process.connected && process.send) {
|
|
79
|
+
const { taskName, level, prefix = "", indent = 0 } = options;
|
|
80
|
+
const linePrefix = "".padStart(indent * _indentSize) + prefix;
|
|
81
|
+
const breakLength = _lineLength - _taskLength - linePrefix.length - 20;
|
|
82
|
+
const message = formatWithOptions({ ..._inspectOptions, breakLength }, ...args);
|
|
83
|
+
const lines = message.split("\n").map((line) => `${linePrefix}${line}`);
|
|
84
|
+
process.send({ logLevel: level, taskName, lines });
|
|
85
|
+
} else {
|
|
86
|
+
_defaultEmitter(options, args);
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
var _defaultEmitter = logOptions.format === "fancy" ? emitFancy : logOptions.format === "plain" ? emitPlain : fail(`Invalid log format "${logOptions.format}"`);
|
|
90
|
+
var _emitter = _defaultEmitter;
|
|
91
|
+
var wrapper = function emit(options, args) {
|
|
92
|
+
_defaultEmitter(options, args);
|
|
93
|
+
};
|
|
94
|
+
var emit2 = Object.defineProperty(wrapper, "emitter", {
|
|
95
|
+
get: () => _emitter,
|
|
96
|
+
set: (emitter) => {
|
|
97
|
+
_emitter = emitter || _defaultEmitter;
|
|
98
|
+
}
|
|
99
|
+
});
|
|
75
100
|
export {
|
|
101
|
+
emit2 as emit,
|
|
76
102
|
emitFancy,
|
|
103
|
+
emitForked,
|
|
77
104
|
emitPlain
|
|
78
105
|
};
|
|
79
106
|
//# sourceMappingURL=emit.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/logging/emit.ts"],
|
|
4
|
-
"mappings": ";AAAA,SAAS,yBAAyB;AAElC,SAAS,MAAM,MAAM,MAAM,MAAM,IAAI,YAAY;AACjD,SAAS,OAAO,MAAM,QAAQ,OAAO,YAAY;AACjD,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAO3B,IAAI,UAAU,WAAW;AACzB,IAAI,cAAc,WAAW;AAC7B,IAAI,cAAc,WAAW;AAC7B,IAAI,cAAc,WAAW;AAC7B,IAAI,kBAAkB,WAAW;
|
|
5
|
-
"names": []
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["emit"]
|
|
6
6
|
}
|
package/dist/logging/github.cjs
CHANGED
|
@@ -25,24 +25,21 @@ __export(github_exports, {
|
|
|
25
25
|
module.exports = __toCommonJS(github_exports);
|
|
26
26
|
var import_node_os = require("node:os");
|
|
27
27
|
var import_node_util = require("node:util");
|
|
28
|
+
var import_ansi = require("../utils/ansi.cjs");
|
|
28
29
|
var import_options = require("./options.cjs");
|
|
29
|
-
var ansiRegExp = new RegExp([
|
|
30
|
-
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
|
31
|
-
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
|
|
32
|
-
].join("|"), "g");
|
|
33
30
|
var _output = import_options.logOptions.output;
|
|
34
|
-
var _inspectOptions = import_options.logOptions.inspectOptions;
|
|
35
31
|
var _githubAnnotations = import_options.logOptions.githubAnnotations;
|
|
32
|
+
var _inspectOptions = { ...import_options.logOptions.inspectOptions, breakLength: Infinity };
|
|
36
33
|
import_options.logOptions.on("changed", (options) => {
|
|
37
34
|
_output = options.output;
|
|
38
35
|
_githubAnnotations = options.githubAnnotations;
|
|
39
36
|
_inspectOptions = { ...options.inspectOptions, breakLength: Infinity };
|
|
40
37
|
});
|
|
41
38
|
function escapeData(data) {
|
|
42
|
-
return
|
|
39
|
+
return (0, import_ansi.stripAnsi)(data).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A");
|
|
43
40
|
}
|
|
44
41
|
function escapeProp(prop) {
|
|
45
|
-
return `${prop}
|
|
42
|
+
return (0, import_ansi.stripAnsi)(`${prop}`).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A").replace(/:/g, "%3A").replace(/,/g, "%2C");
|
|
46
43
|
}
|
|
47
44
|
function githubAnnotation(options, ...args) {
|
|
48
45
|
if (!_githubAnnotations)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/logging/github.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAoB;AACpB,uBAAkC;AAElC,qBAA2B;AAK3B,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAoB;AACpB,uBAAkC;AAElC,kBAA0B;AAC1B,qBAA2B;AAK3B,IAAI,UAAU,0BAAW;AACzB,IAAI,qBAAqB,0BAAW;AACpC,IAAI,kBAAkB,EAAE,GAAG,0BAAW,gBAAgB,aAAa,SAAS;AAC5E,0BAAW,GAAG,WAAW,CAAC,YAAY;AACpC,YAAU,QAAQ;AAClB,uBAAqB,QAAQ;AAC7B,oBAAkB,EAAE,GAAG,QAAQ,gBAAgB,aAAa,SAAS;AACvE,CAAC;AAGD,SAAS,WAAW,MAAsB;AACxC,aAAO,uBAAU,IAAI,EAChB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK;AAC3B;AAEA,SAAS,WAAW,MAA+B;AACjD,aAAO,uBAAU,GAAG,IAAI,EAAE,EACrB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK,EACpB,QAAQ,MAAM,KAAK,EACnB,QAAQ,MAAM,KAAK;AAC1B;AAiBO,SAAS,iBAAiB,YAA4D,MAAmB;AAC9G,MAAI,CAAE;AAAoB;AAE1B,MAAI,OAAO,YAAY;AAAU,cAAU,EAAE,MAAM,QAAQ;AAC3D,QAAM,EAAE,MAAM,GAAG,WAAW,IAAI;AAEhC,QAAM,aAAa,OAAO,QAAQ,UAAU,EACvC,OAAO,CAAC,CAAE,KAAK,KAAM,MAAM,CAAC,EAAE,OAAO,MAAM,EAC3C,IAAI,CAAC,CAAE,KAAK,KAAM,MAAM,GAAG,GAAG,IAAI,WAAW,KAAK,CAAC,EAAE,EACrD,KAAK,GAAG;AAEb,QAAM,MAAM,eAAW,oCAAkB,iBAAiB,GAAG,IAAI,CAAC;AAElE,MAAI,YAAY;AACd,YAAQ,MAAM,KAAK,IAAI,IAAI,UAAU,KAAK,GAAG,GAAG,kBAAG,EAAE;AAAA,EACvD,OAAO;AACL,YAAQ,MAAM,KAAK,IAAI,KAAK,GAAG,GAAG,kBAAG,EAAE;AAAA,EACzC;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/logging/github.mjs
CHANGED
|
@@ -1,24 +1,21 @@
|
|
|
1
1
|
// logging/github.ts
|
|
2
2
|
import { EOL } from "node:os";
|
|
3
3
|
import { formatWithOptions } from "node:util";
|
|
4
|
+
import { stripAnsi } from "../utils/ansi.mjs";
|
|
4
5
|
import { logOptions } from "./options.mjs";
|
|
5
|
-
var ansiRegExp = new RegExp([
|
|
6
|
-
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
|
7
|
-
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
|
|
8
|
-
].join("|"), "g");
|
|
9
6
|
var _output = logOptions.output;
|
|
10
|
-
var _inspectOptions = logOptions.inspectOptions;
|
|
11
7
|
var _githubAnnotations = logOptions.githubAnnotations;
|
|
8
|
+
var _inspectOptions = { ...logOptions.inspectOptions, breakLength: Infinity };
|
|
12
9
|
logOptions.on("changed", (options) => {
|
|
13
10
|
_output = options.output;
|
|
14
11
|
_githubAnnotations = options.githubAnnotations;
|
|
15
12
|
_inspectOptions = { ...options.inspectOptions, breakLength: Infinity };
|
|
16
13
|
});
|
|
17
14
|
function escapeData(data) {
|
|
18
|
-
return data
|
|
15
|
+
return stripAnsi(data).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A");
|
|
19
16
|
}
|
|
20
17
|
function escapeProp(prop) {
|
|
21
|
-
return `${prop}
|
|
18
|
+
return stripAnsi(`${prop}`).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A").replace(/:/g, "%3A").replace(/,/g, "%2C");
|
|
22
19
|
}
|
|
23
20
|
function githubAnnotation(options, ...args) {
|
|
24
21
|
if (!_githubAnnotations)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/logging/github.ts"],
|
|
4
|
-
"mappings": ";AAAA,SAAS,WAAW;AACpB,SAAS,yBAAyB;AAElC,SAAS,kBAAkB;AAK3B,
|
|
4
|
+
"mappings": ";AAAA,SAAS,WAAW;AACpB,SAAS,yBAAyB;AAElC,SAAS,iBAAiB;AAC1B,SAAS,kBAAkB;AAK3B,IAAI,UAAU,WAAW;AACzB,IAAI,qBAAqB,WAAW;AACpC,IAAI,kBAAkB,EAAE,GAAG,WAAW,gBAAgB,aAAa,SAAS;AAC5E,WAAW,GAAG,WAAW,CAAC,YAAY;AACpC,YAAU,QAAQ;AAClB,uBAAqB,QAAQ;AAC7B,oBAAkB,EAAE,GAAG,QAAQ,gBAAgB,aAAa,SAAS;AACvE,CAAC;AAGD,SAAS,WAAW,MAAsB;AACxC,SAAO,UAAU,IAAI,EAChB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK;AAC3B;AAEA,SAAS,WAAW,MAA+B;AACjD,SAAO,UAAU,GAAG,IAAI,EAAE,EACrB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK,EACpB,QAAQ,MAAM,KAAK,EACnB,QAAQ,MAAM,KAAK;AAC1B;AAiBO,SAAS,iBAAiB,YAA4D,MAAmB;AAC9G,MAAI,CAAE;AAAoB;AAE1B,MAAI,OAAO,YAAY;AAAU,cAAU,EAAE,MAAM,QAAQ;AAC3D,QAAM,EAAE,MAAM,GAAG,WAAW,IAAI;AAEhC,QAAM,aAAa,OAAO,QAAQ,UAAU,EACvC,OAAO,CAAC,CAAE,KAAK,KAAM,MAAM,CAAC,EAAE,OAAO,MAAM,EAC3C,IAAI,CAAC,CAAE,KAAK,KAAM,MAAM,GAAG,GAAG,IAAI,WAAW,KAAK,CAAC,EAAE,EACrD,KAAK,GAAG;AAEb,QAAM,MAAM,WAAW,kBAAkB,iBAAiB,GAAG,IAAI,CAAC;AAElE,MAAI,YAAY;AACd,YAAQ,MAAM,KAAK,IAAI,IAAI,UAAU,KAAK,GAAG,GAAG,GAAG,EAAE;AAAA,EACvD,OAAO;AACL,YAAQ,MAAM,KAAK,IAAI,KAAK,GAAG,GAAG,GAAG,EAAE;AAAA,EACzC;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/logging/logger.cjs
CHANGED
|
@@ -26,40 +26,34 @@ __export(logger_exports, {
|
|
|
26
26
|
module.exports = __toCommonJS(logger_exports);
|
|
27
27
|
var import_node_util = require("node:util");
|
|
28
28
|
var import_asserts = require("../asserts.cjs");
|
|
29
|
+
var import_async = require("../async.cjs");
|
|
30
|
+
var import_ansi = require("../utils/ansi.cjs");
|
|
31
|
+
var import_colors = require("./colors.cjs");
|
|
29
32
|
var import_emit = require("./emit.cjs");
|
|
30
33
|
var import_levels = require("./levels.cjs");
|
|
31
34
|
var import_options = require("./options.cjs");
|
|
32
35
|
var import_report = require("./report.cjs");
|
|
33
|
-
var import_colors = require("./colors.cjs");
|
|
34
36
|
var _level = import_options.logOptions.level;
|
|
35
|
-
|
|
36
|
-
var _defaultTaskName = import_options.logOptions.defaultTaskName;
|
|
37
|
-
import_options.logOptions.on("changed", ({ defaultTaskName, format, level }) => {
|
|
38
|
-
_defaultTaskName = defaultTaskName;
|
|
39
|
-
_format = format;
|
|
37
|
+
import_options.logOptions.on("changed", ({ level }) => {
|
|
40
38
|
_level = level;
|
|
41
39
|
});
|
|
42
|
-
function getLogger(task
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
_loggers.set(task, logger);
|
|
48
|
-
}
|
|
49
|
-
return logger;
|
|
40
|
+
function getLogger(task, indent) {
|
|
41
|
+
const context = (0, import_async.currentContext)();
|
|
42
|
+
const taskName = task === void 0 ? context?.taskName || "" : task;
|
|
43
|
+
const indentLevel = indent === void 0 ? context?.log.indent || 0 : 0;
|
|
44
|
+
return new LoggerImpl(taskName, import_emit.emit, indentLevel);
|
|
50
45
|
}
|
|
51
|
-
var _loggers = /* @__PURE__ */ new Map();
|
|
52
46
|
var _loggedFailures = /* @__PURE__ */ new WeakSet();
|
|
53
47
|
var LoggerImpl = class {
|
|
54
|
-
constructor(_task, _emitter) {
|
|
48
|
+
constructor(_task, _emitter, indent) {
|
|
55
49
|
this._task = _task;
|
|
56
50
|
this._emitter = _emitter;
|
|
51
|
+
this.indent = indent;
|
|
57
52
|
}
|
|
58
53
|
_stack = [];
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
if (this._level > level)
|
|
54
|
+
level = _level;
|
|
55
|
+
_emit(level, args, taskName = this._task) {
|
|
56
|
+
if (this.level > level)
|
|
63
57
|
return;
|
|
64
58
|
const params = args.filter((arg) => {
|
|
65
59
|
if (arg instanceof import_asserts.BuildFailure) {
|
|
@@ -79,7 +73,7 @@ var LoggerImpl = class {
|
|
|
79
73
|
});
|
|
80
74
|
if (params.length === 0)
|
|
81
75
|
return;
|
|
82
|
-
const options = { level, taskName
|
|
76
|
+
const options = { level, taskName, indent: this.indent };
|
|
83
77
|
if (this._stack.length) {
|
|
84
78
|
for (const { message, ...extras } of this._stack) {
|
|
85
79
|
this._emitter({ ...options, ...extras }, [message]);
|
|
@@ -88,12 +82,6 @@ var LoggerImpl = class {
|
|
|
88
82
|
}
|
|
89
83
|
this._emitter(options, params);
|
|
90
84
|
}
|
|
91
|
-
get level() {
|
|
92
|
-
return this._level;
|
|
93
|
-
}
|
|
94
|
-
set level(level) {
|
|
95
|
-
this._level = level;
|
|
96
|
-
}
|
|
97
85
|
trace(...args) {
|
|
98
86
|
this._emit(import_levels.TRACE, args);
|
|
99
87
|
}
|
|
@@ -119,15 +107,15 @@ var LoggerImpl = class {
|
|
|
119
107
|
enter(...args) {
|
|
120
108
|
if (args.length) {
|
|
121
109
|
const [level, message] = args;
|
|
122
|
-
this._stack.push({ level, message, indent: this.
|
|
110
|
+
this._stack.push({ level, message, indent: this.indent });
|
|
123
111
|
}
|
|
124
|
-
this.
|
|
112
|
+
this.indent++;
|
|
125
113
|
}
|
|
126
114
|
leave(...args) {
|
|
127
115
|
this._stack.pop();
|
|
128
|
-
this.
|
|
129
|
-
if (this.
|
|
130
|
-
this.
|
|
116
|
+
this.indent--;
|
|
117
|
+
if (this.indent < 0)
|
|
118
|
+
this.indent = 0;
|
|
131
119
|
if (args.length) {
|
|
132
120
|
const [level, message] = args;
|
|
133
121
|
this._emit(level, [message]);
|
|
@@ -142,15 +130,13 @@ var LoggerImpl = class {
|
|
|
142
130
|
this._stack.splice(0);
|
|
143
131
|
}
|
|
144
132
|
let { indent = 0, prefix = "" } = options;
|
|
145
|
-
prefix = this.
|
|
146
|
-
indent += this.
|
|
133
|
+
prefix = this.indent ? (0, import_colors.$gry)("| ") + prefix : prefix;
|
|
134
|
+
indent += this.indent;
|
|
147
135
|
this._emitter({ ...options, indent, prefix }, args);
|
|
148
136
|
};
|
|
149
137
|
return new import_report.ReportImpl(title, this._task, emitter);
|
|
150
138
|
}
|
|
151
139
|
};
|
|
152
|
-
var ansiPattern = "[\\u001b\\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]";
|
|
153
|
-
var ansiRegExp = new RegExp(ansiPattern, "g");
|
|
154
140
|
var TestLogger = class extends LoggerImpl {
|
|
155
141
|
_lines = [];
|
|
156
142
|
constructor() {
|
|
@@ -158,10 +144,10 @@ var TestLogger = class extends LoggerImpl {
|
|
|
158
144
|
const { prefix = "", indent = 0 } = options;
|
|
159
145
|
const linePrefix = "".padStart(indent * 2) + prefix;
|
|
160
146
|
(0, import_node_util.formatWithOptions)({ colors: false, breakLength: 120 }, ...args).split("\n").forEach((line) => {
|
|
161
|
-
const stripped =
|
|
147
|
+
const stripped = (0, import_ansi.stripAnsi)(line);
|
|
162
148
|
this._lines.push(`${linePrefix}${stripped}`);
|
|
163
149
|
});
|
|
164
|
-
});
|
|
150
|
+
}, 0);
|
|
165
151
|
}
|
|
166
152
|
/** Return the _current_ buffer for this instance */
|
|
167
153
|
get buffer() {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/logging/logger.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAkC;AAElC,qBAA6B;AAC7B,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/logging/logger.d.ts
CHANGED
|
@@ -22,6 +22,8 @@ export interface Log {
|
|
|
22
22
|
export interface Logger extends Log {
|
|
23
23
|
/** The current level for logging. */
|
|
24
24
|
level: LogLevel;
|
|
25
|
+
/** The current indent level for logging. */
|
|
26
|
+
indent: number;
|
|
25
27
|
/** Enter a sub-level of logging, increasing indent */
|
|
26
28
|
enter(): void;
|
|
27
29
|
/** Enter a sub-level of logging, increasing indent */
|
|
@@ -34,18 +36,16 @@ export interface Logger extends Log {
|
|
|
34
36
|
report(title: string): Report;
|
|
35
37
|
}
|
|
36
38
|
/** Return a {@link Logger} associated with the specified task name. */
|
|
37
|
-
export declare function getLogger(task?: string): Logger;
|
|
39
|
+
export declare function getLogger(task?: string, indent?: number): Logger;
|
|
38
40
|
/** Default implementation of the {@link Logger} interface. */
|
|
39
41
|
declare class LoggerImpl implements Logger {
|
|
40
42
|
private readonly _task;
|
|
41
43
|
private readonly _emitter;
|
|
44
|
+
indent: number;
|
|
42
45
|
private readonly _stack;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
constructor(_task: string, _emitter: LogEmitter);
|
|
46
|
+
level: LogLevel;
|
|
47
|
+
constructor(_task: string, _emitter: LogEmitter, indent: number);
|
|
46
48
|
private _emit;
|
|
47
|
-
get level(): LogLevel;
|
|
48
|
-
set level(level: LogLevel);
|
|
49
49
|
trace(...args: [any, ...any]): void;
|
|
50
50
|
debug(...args: [any, ...any]): void;
|
|
51
51
|
info(...args: [any, ...any]): void;
|
|
@@ -59,7 +59,7 @@ declare class LoggerImpl implements Logger {
|
|
|
59
59
|
leave(level: LogLevel, message: string): void;
|
|
60
60
|
report(title: string): Report;
|
|
61
61
|
}
|
|
62
|
-
/** A test logger, writing to a buffer always _without_ colors */
|
|
62
|
+
/** A test logger, writing to a buffer always _without_ colors/indent */
|
|
63
63
|
export declare class TestLogger extends LoggerImpl {
|
|
64
64
|
private _lines;
|
|
65
65
|
constructor();
|
package/dist/logging/logger.mjs
CHANGED
|
@@ -1,40 +1,34 @@
|
|
|
1
1
|
// logging/logger.ts
|
|
2
2
|
import { formatWithOptions } from "node:util";
|
|
3
3
|
import { BuildFailure } from "../asserts.mjs";
|
|
4
|
-
import {
|
|
4
|
+
import { currentContext } from "../async.mjs";
|
|
5
|
+
import { stripAnsi } from "../utils/ansi.mjs";
|
|
6
|
+
import { $gry } from "./colors.mjs";
|
|
7
|
+
import { emit } from "./emit.mjs";
|
|
5
8
|
import { DEBUG, ERROR, INFO, NOTICE, TRACE, WARN } from "./levels.mjs";
|
|
6
9
|
import { logOptions } from "./options.mjs";
|
|
7
10
|
import { ReportImpl } from "./report.mjs";
|
|
8
|
-
import { $gry } from "./colors.mjs";
|
|
9
11
|
var _level = logOptions.level;
|
|
10
|
-
|
|
11
|
-
var _defaultTaskName = logOptions.defaultTaskName;
|
|
12
|
-
logOptions.on("changed", ({ defaultTaskName, format, level }) => {
|
|
13
|
-
_defaultTaskName = defaultTaskName;
|
|
14
|
-
_format = format;
|
|
12
|
+
logOptions.on("changed", ({ level }) => {
|
|
15
13
|
_level = level;
|
|
16
14
|
});
|
|
17
|
-
function getLogger(task
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
_loggers.set(task, logger);
|
|
23
|
-
}
|
|
24
|
-
return logger;
|
|
15
|
+
function getLogger(task, indent) {
|
|
16
|
+
const context = currentContext();
|
|
17
|
+
const taskName = task === void 0 ? context?.taskName || "" : task;
|
|
18
|
+
const indentLevel = indent === void 0 ? context?.log.indent || 0 : 0;
|
|
19
|
+
return new LoggerImpl(taskName, emit, indentLevel);
|
|
25
20
|
}
|
|
26
|
-
var _loggers = /* @__PURE__ */ new Map();
|
|
27
21
|
var _loggedFailures = /* @__PURE__ */ new WeakSet();
|
|
28
22
|
var LoggerImpl = class {
|
|
29
|
-
constructor(_task, _emitter) {
|
|
23
|
+
constructor(_task, _emitter, indent) {
|
|
30
24
|
this._task = _task;
|
|
31
25
|
this._emitter = _emitter;
|
|
26
|
+
this.indent = indent;
|
|
32
27
|
}
|
|
33
28
|
_stack = [];
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
if (this._level > level)
|
|
29
|
+
level = _level;
|
|
30
|
+
_emit(level, args, taskName = this._task) {
|
|
31
|
+
if (this.level > level)
|
|
38
32
|
return;
|
|
39
33
|
const params = args.filter((arg) => {
|
|
40
34
|
if (arg instanceof BuildFailure) {
|
|
@@ -54,7 +48,7 @@ var LoggerImpl = class {
|
|
|
54
48
|
});
|
|
55
49
|
if (params.length === 0)
|
|
56
50
|
return;
|
|
57
|
-
const options = { level, taskName
|
|
51
|
+
const options = { level, taskName, indent: this.indent };
|
|
58
52
|
if (this._stack.length) {
|
|
59
53
|
for (const { message, ...extras } of this._stack) {
|
|
60
54
|
this._emitter({ ...options, ...extras }, [message]);
|
|
@@ -63,12 +57,6 @@ var LoggerImpl = class {
|
|
|
63
57
|
}
|
|
64
58
|
this._emitter(options, params);
|
|
65
59
|
}
|
|
66
|
-
get level() {
|
|
67
|
-
return this._level;
|
|
68
|
-
}
|
|
69
|
-
set level(level) {
|
|
70
|
-
this._level = level;
|
|
71
|
-
}
|
|
72
60
|
trace(...args) {
|
|
73
61
|
this._emit(TRACE, args);
|
|
74
62
|
}
|
|
@@ -94,15 +82,15 @@ var LoggerImpl = class {
|
|
|
94
82
|
enter(...args) {
|
|
95
83
|
if (args.length) {
|
|
96
84
|
const [level, message] = args;
|
|
97
|
-
this._stack.push({ level, message, indent: this.
|
|
85
|
+
this._stack.push({ level, message, indent: this.indent });
|
|
98
86
|
}
|
|
99
|
-
this.
|
|
87
|
+
this.indent++;
|
|
100
88
|
}
|
|
101
89
|
leave(...args) {
|
|
102
90
|
this._stack.pop();
|
|
103
|
-
this.
|
|
104
|
-
if (this.
|
|
105
|
-
this.
|
|
91
|
+
this.indent--;
|
|
92
|
+
if (this.indent < 0)
|
|
93
|
+
this.indent = 0;
|
|
106
94
|
if (args.length) {
|
|
107
95
|
const [level, message] = args;
|
|
108
96
|
this._emit(level, [message]);
|
|
@@ -117,15 +105,13 @@ var LoggerImpl = class {
|
|
|
117
105
|
this._stack.splice(0);
|
|
118
106
|
}
|
|
119
107
|
let { indent = 0, prefix = "" } = options;
|
|
120
|
-
prefix = this.
|
|
121
|
-
indent += this.
|
|
108
|
+
prefix = this.indent ? $gry("| ") + prefix : prefix;
|
|
109
|
+
indent += this.indent;
|
|
122
110
|
this._emitter({ ...options, indent, prefix }, args);
|
|
123
111
|
};
|
|
124
112
|
return new ReportImpl(title, this._task, emitter);
|
|
125
113
|
}
|
|
126
114
|
};
|
|
127
|
-
var ansiPattern = "[\\u001b\\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]";
|
|
128
|
-
var ansiRegExp = new RegExp(ansiPattern, "g");
|
|
129
115
|
var TestLogger = class extends LoggerImpl {
|
|
130
116
|
_lines = [];
|
|
131
117
|
constructor() {
|
|
@@ -133,10 +119,10 @@ var TestLogger = class extends LoggerImpl {
|
|
|
133
119
|
const { prefix = "", indent = 0 } = options;
|
|
134
120
|
const linePrefix = "".padStart(indent * 2) + prefix;
|
|
135
121
|
formatWithOptions({ colors: false, breakLength: 120 }, ...args).split("\n").forEach((line) => {
|
|
136
|
-
const stripped = line
|
|
122
|
+
const stripped = stripAnsi(line);
|
|
137
123
|
this._lines.push(`${linePrefix}${stripped}`);
|
|
138
124
|
});
|
|
139
|
-
});
|
|
125
|
+
}, 0);
|
|
140
126
|
}
|
|
141
127
|
/** Return the _current_ buffer for this instance */
|
|
142
128
|
get buffer() {
|