terse-cli 0.1.75 → 0.1.76
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/cliUi.d.ts +2 -1
- package/dist/cliUi.d.ts.map +1 -1
- package/dist/cliUi.js +35 -6
- package/dist/cliUi.js.map +1 -1
- package/package.json +3 -3
package/dist/cliUi.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import { type SpinnerResult } from "@clack/prompts";
|
|
2
|
+
export declare function createSpinner(): SpinnerResult;
|
|
2
3
|
export declare function interceptConsole(onLine: (line: string) => void): () => void;
|
|
3
4
|
export declare function createRunIndicator(title: string): {
|
|
4
5
|
start(): void;
|
package/dist/cliUi.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cliUi.d.ts","sourceRoot":"","sources":["../src/cliUi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cliUi.d.ts","sourceRoot":"","sources":["../src/cliUi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,gBAAgB,CAAA;AAIjE,wBAAgB,aAAa,IAAI,aAAa,CAO7C;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI,CAS3E;AAID,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM;;kBAU1B,MAAM;mBAKL,MAAM;qBAIJ,MAAM;kBAIT,MAAM;EAK3B;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAIlD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,QAAQ,SAAI,GAAG,MAAM,CAQvE"}
|
package/dist/cliUi.js
CHANGED
|
@@ -2,9 +2,12 @@ import { log, spinner } from "@clack/prompts";
|
|
|
2
2
|
import chalk from "chalk";
|
|
3
3
|
import { format } from "node:util";
|
|
4
4
|
export function createSpinner() {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
if (isInteractiveOutput()) {
|
|
6
|
+
return spinner({
|
|
7
|
+
styleFrame: frame => chalk.hex("#04AB62")(frame)
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
return new StaticSpinner();
|
|
8
11
|
}
|
|
9
12
|
export function interceptConsole(onLine) {
|
|
10
13
|
const levels = ["log", "info", "warn", "error"];
|
|
@@ -20,7 +23,8 @@ export function interceptConsole(onLine) {
|
|
|
20
23
|
// Log lines print once and scroll naturally; the spinner lifts out of the way for
|
|
21
24
|
// each one, so colored output never collides with clack's repaint.
|
|
22
25
|
export function createRunIndicator(title) {
|
|
23
|
-
const
|
|
26
|
+
const interactive = isInteractiveOutput();
|
|
27
|
+
const spin = interactive ? spinner({ styleFrame: frame => chalk.hex("#04AB62")(frame), withGuide: false }) : new StaticSpinner();
|
|
24
28
|
let live = false;
|
|
25
29
|
return {
|
|
26
30
|
start() {
|
|
@@ -28,11 +32,11 @@ export function createRunIndicator(title) {
|
|
|
28
32
|
spin.start(title);
|
|
29
33
|
},
|
|
30
34
|
logLine(line) {
|
|
31
|
-
if (live)
|
|
35
|
+
if (live && interactive)
|
|
32
36
|
spin.clear();
|
|
33
37
|
for (const l of line.split("\n"))
|
|
34
38
|
log.message(l, { spacing: 0 });
|
|
35
|
-
if (live)
|
|
39
|
+
if (live && interactive)
|
|
36
40
|
spin.start(title);
|
|
37
41
|
},
|
|
38
42
|
pause(message) {
|
|
@@ -62,4 +66,29 @@ export function formatSummaryList(items, maxItems = 8) {
|
|
|
62
66
|
const remaining = items.length - maxItems;
|
|
63
67
|
return `${visible.join(", ")}, +${remaining} more`;
|
|
64
68
|
}
|
|
69
|
+
function isInteractiveOutput() {
|
|
70
|
+
return Boolean(process.stdout.isTTY) && process.env.CI !== "true" && !process.env.TERSE_NO_SPINNER;
|
|
71
|
+
}
|
|
72
|
+
// Non-TTY drop-in for clack's spinner. A spinner is a human affordance; a captured
|
|
73
|
+
// stream just gets its animation frames as literal noise. So progress goes dark and
|
|
74
|
+
// only failures, the one thing an agent acts on, print a line.
|
|
75
|
+
class StaticSpinner {
|
|
76
|
+
cancelled = false;
|
|
77
|
+
start() { }
|
|
78
|
+
message() { }
|
|
79
|
+
stop() { }
|
|
80
|
+
error(message = "") {
|
|
81
|
+
if (message)
|
|
82
|
+
log.error(message);
|
|
83
|
+
}
|
|
84
|
+
cancel(message = "") {
|
|
85
|
+
this.cancelled = true;
|
|
86
|
+
if (message)
|
|
87
|
+
log.error(message);
|
|
88
|
+
}
|
|
89
|
+
clear() { }
|
|
90
|
+
get isCancelled() {
|
|
91
|
+
return this.cancelled;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
65
94
|
//# sourceMappingURL=cliUi.js.map
|
package/dist/cliUi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cliUi.js","sourceRoot":"","sources":["../src/cliUi.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"cliUi.js","sourceRoot":"","sources":["../src/cliUi.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "terse-cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.76",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"repository": {
|
|
@@ -38,8 +38,8 @@
|
|
|
38
38
|
"typescript": "^5.0.0",
|
|
39
39
|
"workflow": "5.0.0-beta.19",
|
|
40
40
|
"zod": "^4.3.6",
|
|
41
|
-
"terse-
|
|
42
|
-
"terse-
|
|
41
|
+
"terse-sdk": "0.1.65",
|
|
42
|
+
"terse-types": "0.0.60"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@types/luxon": "^3.7.1",
|