@unstoppabledomains/ud-cli 0.1.13 → 0.1.14
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmE7D"}
|
package/dist/commands/update.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
-
import
|
|
2
|
+
import { createSpinner } from '../lib/spinner.js';
|
|
3
3
|
import { checkForUpdate, isBinaryInstall, selfUpdate, } from '../lib/update.js';
|
|
4
4
|
export function registerUpdateCommands(program) {
|
|
5
5
|
const update = program
|
|
6
6
|
.command('update')
|
|
7
7
|
.description('Update ud-cli to the latest version')
|
|
8
8
|
.action(async () => {
|
|
9
|
-
const spinner =
|
|
9
|
+
const spinner = await createSpinner('Checking for updates…');
|
|
10
|
+
spinner.start();
|
|
10
11
|
let info;
|
|
11
12
|
try {
|
|
12
13
|
info = await checkForUpdate();
|
|
@@ -28,7 +29,8 @@ export function registerUpdateCommands(program) {
|
|
|
28
29
|
console.log(chalk.cyan(' npm update -g @unstoppabledomains/ud-cli'));
|
|
29
30
|
return;
|
|
30
31
|
}
|
|
31
|
-
const dlSpinner =
|
|
32
|
+
const dlSpinner = await createSpinner(`Downloading v${info.latest}…`);
|
|
33
|
+
dlSpinner.start();
|
|
32
34
|
try {
|
|
33
35
|
const result = await selfUpdate(info.latest);
|
|
34
36
|
dlSpinner.succeed(`Updated successfully: ${chalk.dim(result.previousVersion)} → ${chalk.bold(result.newVersion)}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/spinner.d.ts
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Spinner wrapper that uses ora for npm installs and a lightweight
|
|
3
|
+
* built-in spinner for pkg binaries (ora segfaults in pkg's patched V8).
|
|
3
4
|
*/
|
|
4
5
|
import type { OutputFormat } from './types.js';
|
|
5
|
-
interface SpinnerLike {
|
|
6
|
+
export interface SpinnerLike {
|
|
6
7
|
start(text?: string): SpinnerLike;
|
|
7
8
|
stop(): SpinnerLike;
|
|
8
9
|
succeed(text?: string): SpinnerLike;
|
|
9
10
|
fail(text?: string): SpinnerLike;
|
|
11
|
+
info(text?: string): SpinnerLike;
|
|
10
12
|
}
|
|
11
|
-
export declare function createSpinner(text: string, options
|
|
13
|
+
export declare function createSpinner(text: string, options?: {
|
|
12
14
|
quiet?: boolean;
|
|
13
15
|
format?: OutputFormat;
|
|
14
16
|
}): Promise<SpinnerLike>;
|
|
15
|
-
export {};
|
|
16
17
|
//# sourceMappingURL=spinner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../src/lib/spinner.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../src/lib/spinner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAClC,IAAI,IAAI,WAAW,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IACpC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IACjC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;CAClC;AAsED,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,YAAY,CAAA;CAAO,GACvD,OAAO,CAAC,WAAW,CAAC,CAiBtB"}
|
package/dist/lib/spinner.js
CHANGED
|
@@ -1,23 +1,81 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Spinner wrapper that uses ora for npm installs and a lightweight
|
|
3
|
+
* built-in spinner for pkg binaries (ora segfaults in pkg's patched V8).
|
|
3
4
|
*/
|
|
5
|
+
import chalk from 'chalk';
|
|
4
6
|
const noopSpinner = {
|
|
5
7
|
start() { return this; },
|
|
6
8
|
stop() { return this; },
|
|
7
9
|
succeed() { return this; },
|
|
8
10
|
fail() { return this; },
|
|
11
|
+
info() { return this; },
|
|
9
12
|
};
|
|
10
|
-
|
|
13
|
+
// --- Lightweight spinner for pkg binaries ---
|
|
14
|
+
const SPINNER_FRAMES = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
|
|
15
|
+
class SimpleSpinner {
|
|
16
|
+
#text;
|
|
17
|
+
#interval;
|
|
18
|
+
#frameIndex = 0;
|
|
19
|
+
#stream = process.stderr;
|
|
20
|
+
constructor(text) {
|
|
21
|
+
this.#text = text;
|
|
22
|
+
}
|
|
23
|
+
start(text) {
|
|
24
|
+
if (this.#interval)
|
|
25
|
+
return this;
|
|
26
|
+
if (text)
|
|
27
|
+
this.#text = text;
|
|
28
|
+
this.#interval = setInterval(() => {
|
|
29
|
+
const frame = SPINNER_FRAMES[this.#frameIndex % SPINNER_FRAMES.length];
|
|
30
|
+
this.#stream.write(`\r${chalk.cyan(frame)} ${this.#text}`);
|
|
31
|
+
this.#frameIndex++;
|
|
32
|
+
}, 80);
|
|
33
|
+
return this;
|
|
34
|
+
}
|
|
35
|
+
stop() {
|
|
36
|
+
if (this.#interval) {
|
|
37
|
+
clearInterval(this.#interval);
|
|
38
|
+
this.#interval = undefined;
|
|
39
|
+
}
|
|
40
|
+
this.#stream.write('\r\x1b[K');
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
succeed(text) {
|
|
44
|
+
this.stop();
|
|
45
|
+
this.#stream.write(`${chalk.green('✔')} ${text ?? this.#text}\n`);
|
|
46
|
+
return this;
|
|
47
|
+
}
|
|
48
|
+
fail(text) {
|
|
49
|
+
this.stop();
|
|
50
|
+
this.#stream.write(`${chalk.red('✖')} ${text ?? this.#text}\n`);
|
|
51
|
+
return this;
|
|
52
|
+
}
|
|
53
|
+
info(text) {
|
|
54
|
+
this.stop();
|
|
55
|
+
this.#stream.write(`${chalk.blue('ℹ')} ${text ?? this.#text}\n`);
|
|
56
|
+
return this;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
// --- Factory ---
|
|
60
|
+
/** Returns true when running inside a @yao-pkg/pkg binary bundle. */
|
|
61
|
+
function isPkgBinary() {
|
|
62
|
+
return !!process.pkg;
|
|
63
|
+
}
|
|
64
|
+
export async function createSpinner(text, options = {}) {
|
|
11
65
|
// No spinner for non-TTY, quiet mode, or machine-readable formats
|
|
12
|
-
if (options.quiet || options.format === 'json' || options.format === 'csv' || !process.
|
|
66
|
+
if (options.quiet || options.format === 'json' || options.format === 'csv' || !process.stderr.isTTY) {
|
|
13
67
|
return noopSpinner;
|
|
14
68
|
}
|
|
69
|
+
// Use lightweight spinner in pkg binaries — ora segfaults in pkg's patched V8
|
|
70
|
+
if (isPkgBinary()) {
|
|
71
|
+
return new SimpleSpinner(text);
|
|
72
|
+
}
|
|
15
73
|
try {
|
|
16
74
|
const ora = (await import('ora')).default;
|
|
17
75
|
return ora({ text, discardStdin: false });
|
|
18
76
|
}
|
|
19
77
|
catch {
|
|
20
|
-
return
|
|
78
|
+
return new SimpleSpinner(text);
|
|
21
79
|
}
|
|
22
80
|
}
|
|
23
81
|
//# sourceMappingURL=spinner.js.map
|
package/dist/lib/spinner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spinner.js","sourceRoot":"","sources":["../../src/lib/spinner.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"spinner.js","sourceRoot":"","sources":["../../src/lib/spinner.ts"],"names":[],"mappings":"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"}
|