@radkode/neo 1.1.2 → 1.2.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/cli.d.ts.map +1 -1
- package/dist/cli.js +46 -8
- package/dist/cli.js.map +1 -1
- package/dist/commands/agent/context/index.d.ts.map +1 -1
- package/dist/commands/agent/context/index.js +72 -21
- package/dist/commands/agent/context/index.js.map +1 -1
- package/dist/commands/agent/index.d.ts.map +1 -1
- package/dist/commands/agent/index.js +7 -1
- package/dist/commands/agent/index.js.map +1 -1
- package/dist/commands/alias/setup/index.d.ts.map +1 -1
- package/dist/commands/alias/setup/index.js +55 -41
- package/dist/commands/alias/setup/index.js.map +1 -1
- package/dist/commands/gh/pr/create/index.d.ts.map +1 -1
- package/dist/commands/gh/pr/create/index.js +84 -44
- package/dist/commands/gh/pr/create/index.js.map +1 -1
- package/dist/commands/git/branch/index.d.ts.map +1 -1
- package/dist/commands/git/branch/index.js +55 -31
- package/dist/commands/git/branch/index.js.map +1 -1
- package/dist/commands/git/commit/index.d.ts.map +1 -1
- package/dist/commands/git/commit/index.js +65 -33
- package/dist/commands/git/commit/index.js.map +1 -1
- package/dist/commands/git/pull/index.d.ts +7 -1
- package/dist/commands/git/pull/index.d.ts.map +1 -1
- package/dist/commands/git/pull/index.js +60 -58
- package/dist/commands/git/pull/index.js.map +1 -1
- package/dist/commands/git/push/index.d.ts +2 -0
- package/dist/commands/git/push/index.d.ts.map +1 -1
- package/dist/commands/git/push/index.js +61 -38
- package/dist/commands/git/push/index.js.map +1 -1
- package/dist/commands/git/stash/index.d.ts.map +1 -1
- package/dist/commands/git/stash/index.js +42 -10
- package/dist/commands/git/stash/index.js.map +1 -1
- package/dist/commands/git/worktree/add.d.ts.map +1 -1
- package/dist/commands/git/worktree/add.js +4 -3
- package/dist/commands/git/worktree/add.js.map +1 -1
- package/dist/commands/git/worktree/remove.d.ts.map +1 -1
- package/dist/commands/git/worktree/remove.js +17 -7
- package/dist/commands/git/worktree/remove.js.map +1 -1
- package/dist/commands/git/worktree/switch.d.ts.map +1 -1
- package/dist/commands/git/worktree/switch.js +23 -8
- package/dist/commands/git/worktree/switch.js.map +1 -1
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +3 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/init/index.d.ts.map +1 -1
- package/dist/commands/init/index.js +50 -16
- package/dist/commands/init/index.js.map +1 -1
- package/dist/commands/schema/index.d.ts +44 -0
- package/dist/commands/schema/index.d.ts.map +1 -0
- package/dist/commands/schema/index.js +120 -0
- package/dist/commands/schema/index.js.map +1 -0
- package/dist/commands/update/index.d.ts.map +1 -1
- package/dist/commands/update/index.js +107 -81
- package/dist/commands/update/index.js.map +1 -1
- package/dist/types/schemas.d.ts +2 -2
- package/dist/utils/logger.d.ts +1 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +52 -11
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/output.d.ts +15 -0
- package/dist/utils/output.d.ts.map +1 -0
- package/dist/utils/output.js +50 -0
- package/dist/utils/output.js.map +1 -0
- package/dist/utils/prompt.d.ts +17 -2
- package/dist/utils/prompt.d.ts.map +1 -1
- package/dist/utils/prompt.js +66 -11
- package/dist/utils/prompt.js.map +1 -1
- package/dist/utils/run-action.d.ts +3 -0
- package/dist/utils/run-action.d.ts.map +1 -0
- package/dist/utils/run-action.js +19 -0
- package/dist/utils/run-action.js.map +1 -0
- package/dist/utils/runtime-context.d.ts +27 -0
- package/dist/utils/runtime-context.d.ts.map +1 -0
- package/dist/utils/runtime-context.js +74 -0
- package/dist/utils/runtime-context.js.map +1 -0
- package/dist/utils/ui-types.d.ts +2 -0
- package/dist/utils/ui-types.d.ts.map +1 -1
- package/dist/utils/ui.d.ts +2 -0
- package/dist/utils/ui.d.ts.map +1 -1
- package/dist/utils/ui.js +96 -22
- package/dist/utils/ui.js.map +1 -1
- package/package.json +1 -1
package/dist/types/schemas.d.ts
CHANGED
|
@@ -40,12 +40,12 @@ export declare const gitBranchOptionsSchema: z.ZodObject<{
|
|
|
40
40
|
force: z.ZodOptional<z.ZodBoolean>;
|
|
41
41
|
}, z.core.$strip>;
|
|
42
42
|
export declare const commitTypeSchema: z.ZodEnum<{
|
|
43
|
+
test: "test";
|
|
43
44
|
feat: "feat";
|
|
44
45
|
fix: "fix";
|
|
45
46
|
docs: "docs";
|
|
46
47
|
style: "style";
|
|
47
48
|
refactor: "refactor";
|
|
48
|
-
test: "test";
|
|
49
49
|
chore: "chore";
|
|
50
50
|
}>;
|
|
51
51
|
export declare const commitScopeSchema: z.ZodOptional<z.ZodString>;
|
|
@@ -56,12 +56,12 @@ export declare const gitCommitOptionsSchema: z.ZodObject<{
|
|
|
56
56
|
color: z.ZodOptional<z.ZodBoolean>;
|
|
57
57
|
banner: z.ZodOptional<z.ZodBoolean>;
|
|
58
58
|
type: z.ZodOptional<z.ZodEnum<{
|
|
59
|
+
test: "test";
|
|
59
60
|
feat: "feat";
|
|
60
61
|
fix: "fix";
|
|
61
62
|
docs: "docs";
|
|
62
63
|
style: "style";
|
|
63
64
|
refactor: "refactor";
|
|
64
|
-
test: "test";
|
|
65
65
|
chore: "chore";
|
|
66
66
|
}>>;
|
|
67
67
|
scope: z.ZodOptional<z.ZodString>;
|
package/dist/utils/logger.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ declare class Logger implements ILogger {
|
|
|
10
10
|
error(message: string, context?: Record<string, unknown>): void;
|
|
11
11
|
debug(message: string, context?: Record<string, unknown>): void;
|
|
12
12
|
log(message: string): void;
|
|
13
|
+
private emitJsonLog;
|
|
13
14
|
private formatMessage;
|
|
14
15
|
}
|
|
15
16
|
export declare const logger: Logger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAGpE,cAAM,MAAO,YAAW,OAAO;IAC7B,OAAO,CAAC,KAAK,CAA2B;IAExC,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAI/B,QAAQ,IAAI,QAAQ;IAIpB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIlC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAc9D,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAajE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAY9D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAY/D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAY/D,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK1B,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,aAAa;CAMtB;AAED,eAAO,MAAM,MAAM,QAAe,CAAC"}
|
package/dist/utils/logger.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { Colors } from './ui-types.js';
|
|
3
3
|
import { LogLevel } from '../core/interfaces/index.js';
|
|
4
|
+
import { getRuntimeContext } from './runtime-context.js';
|
|
4
5
|
class Logger {
|
|
5
6
|
level = LogLevel.INFO;
|
|
6
7
|
setLevel(level) {
|
|
@@ -13,32 +14,72 @@ class Logger {
|
|
|
13
14
|
this.level = verbose ? LogLevel.DEBUG : LogLevel.INFO;
|
|
14
15
|
}
|
|
15
16
|
info(message, context) {
|
|
16
|
-
if (this.level
|
|
17
|
-
|
|
17
|
+
if (this.level > LogLevel.INFO)
|
|
18
|
+
return;
|
|
19
|
+
const ctx = getRuntimeContext();
|
|
20
|
+
if (ctx.quiet)
|
|
21
|
+
return;
|
|
22
|
+
if (ctx.format === 'json') {
|
|
23
|
+
this.emitJsonLog('info', message, context);
|
|
24
|
+
return;
|
|
18
25
|
}
|
|
26
|
+
process.stderr.write(`${chalk.hex(Colors.muted)('ℹ')} ${this.formatMessage(message, context)}\n`);
|
|
19
27
|
}
|
|
20
28
|
success(message, context) {
|
|
21
|
-
if (this.level
|
|
22
|
-
|
|
29
|
+
if (this.level > LogLevel.INFO)
|
|
30
|
+
return;
|
|
31
|
+
const ctx = getRuntimeContext();
|
|
32
|
+
if (ctx.quiet)
|
|
33
|
+
return;
|
|
34
|
+
if (ctx.format === 'json') {
|
|
35
|
+
this.emitJsonLog('success', message, context);
|
|
36
|
+
return;
|
|
23
37
|
}
|
|
38
|
+
process.stderr.write(`${chalk.hex(Colors.success)('✓')} ${this.formatMessage(message, context)}\n`);
|
|
24
39
|
}
|
|
25
40
|
warn(message, context) {
|
|
26
|
-
if (this.level
|
|
27
|
-
|
|
41
|
+
if (this.level > LogLevel.WARN)
|
|
42
|
+
return;
|
|
43
|
+
const ctx = getRuntimeContext();
|
|
44
|
+
if (ctx.format === 'json') {
|
|
45
|
+
this.emitJsonLog('warn', message, context);
|
|
46
|
+
return;
|
|
28
47
|
}
|
|
48
|
+
process.stderr.write(`${chalk.hex(Colors.error)('⚠')} ${this.formatMessage(message, context)}\n`);
|
|
29
49
|
}
|
|
30
50
|
error(message, context) {
|
|
31
|
-
if (this.level
|
|
32
|
-
|
|
51
|
+
if (this.level > LogLevel.ERROR)
|
|
52
|
+
return;
|
|
53
|
+
const ctx = getRuntimeContext();
|
|
54
|
+
if (ctx.format === 'json') {
|
|
55
|
+
this.emitJsonLog('error', message, context);
|
|
56
|
+
return;
|
|
33
57
|
}
|
|
58
|
+
process.stderr.write(`${chalk.hex(Colors.error)('✖')} ${this.formatMessage(message, context)}\n`);
|
|
34
59
|
}
|
|
35
60
|
debug(message, context) {
|
|
36
|
-
if (this.level
|
|
37
|
-
|
|
61
|
+
if (this.level > LogLevel.DEBUG)
|
|
62
|
+
return;
|
|
63
|
+
const ctx = getRuntimeContext();
|
|
64
|
+
if (ctx.format === 'json') {
|
|
65
|
+
this.emitJsonLog('debug', message, context);
|
|
66
|
+
return;
|
|
38
67
|
}
|
|
68
|
+
process.stderr.write(`${chalk.hex(Colors.muted)('[DEBUG]')} ${this.formatMessage(message, context)}\n`);
|
|
39
69
|
}
|
|
40
70
|
log(message) {
|
|
41
|
-
|
|
71
|
+
process.stdout.write(`${message}\n`);
|
|
72
|
+
}
|
|
73
|
+
emitJsonLog(level, message, context) {
|
|
74
|
+
const payload = {
|
|
75
|
+
level,
|
|
76
|
+
message,
|
|
77
|
+
ts: new Date().toISOString(),
|
|
78
|
+
};
|
|
79
|
+
if (context && Object.keys(context).length > 0) {
|
|
80
|
+
payload['context'] = context;
|
|
81
|
+
}
|
|
82
|
+
process.stderr.write(`${JSON.stringify(payload)}\n`);
|
|
42
83
|
}
|
|
43
84
|
formatMessage(message, context) {
|
|
44
85
|
if (!context || Object.keys(context).length === 0) {
|
package/dist/utils/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAgB,QAAQ,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { AppError } from '../core/errors/index.js';
|
|
2
|
+
export interface EmitOptions {
|
|
3
|
+
text?: () => void;
|
|
4
|
+
}
|
|
5
|
+
export declare function emitJson<T extends Record<string, unknown> | unknown[]>(data: T, options?: EmitOptions): void;
|
|
6
|
+
export interface SerializedError {
|
|
7
|
+
code: string;
|
|
8
|
+
message: string;
|
|
9
|
+
category?: string;
|
|
10
|
+
severity?: string;
|
|
11
|
+
suggestions?: string[];
|
|
12
|
+
context?: Record<string, unknown>;
|
|
13
|
+
}
|
|
14
|
+
export declare function emitError(error: AppError | Error, options?: EmitOptions): void;
|
|
15
|
+
//# sourceMappingURL=output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,WAAW,WAAW;IAE1B,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;CACnB;AAOD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,EACpE,IAAI,EAAE,CAAC,EACP,OAAO,GAAE,WAAgB,GACxB,IAAI,CASN;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAOD,wBAAgB,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,EAAE,OAAO,GAAE,WAAgB,GAAG,IAAI,CAmBlF"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { getRuntimeContext } from './runtime-context.js';
|
|
2
|
+
import { ui } from './ui.js';
|
|
3
|
+
export function emitJson(data, options = {}) {
|
|
4
|
+
const ctx = getRuntimeContext();
|
|
5
|
+
if (ctx.format === 'json') {
|
|
6
|
+
process.stdout.write(`${JSON.stringify(data)}\n`);
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
if (options.text) {
|
|
10
|
+
options.text();
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export function emitError(error, options = {}) {
|
|
14
|
+
const ctx = getRuntimeContext();
|
|
15
|
+
if (ctx.format === 'json') {
|
|
16
|
+
const payload = {
|
|
17
|
+
error: serializeError(error),
|
|
18
|
+
};
|
|
19
|
+
process.stdout.write(`${JSON.stringify(payload)}\n`);
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (options.text) {
|
|
23
|
+
options.text();
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
ui.error(error.message);
|
|
27
|
+
const suggestions = error.suggestions;
|
|
28
|
+
if (suggestions && suggestions.length > 0) {
|
|
29
|
+
ui.warn('Suggestions:');
|
|
30
|
+
ui.list(suggestions);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
function serializeError(error) {
|
|
34
|
+
const appError = error;
|
|
35
|
+
const serialized = {
|
|
36
|
+
code: appError.code ?? 'UNKNOWN',
|
|
37
|
+
message: error.message,
|
|
38
|
+
};
|
|
39
|
+
if (appError.category)
|
|
40
|
+
serialized.category = String(appError.category);
|
|
41
|
+
if (appError.severity)
|
|
42
|
+
serialized.severity = String(appError.severity);
|
|
43
|
+
if (appError.suggestions && appError.suggestions.length > 0) {
|
|
44
|
+
serialized.suggestions = appError.suggestions;
|
|
45
|
+
}
|
|
46
|
+
if (appError.context)
|
|
47
|
+
serialized.context = appError.context;
|
|
48
|
+
return serialized;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAa7B,MAAM,UAAU,QAAQ,CACtB,IAAO,EACP,UAAuB,EAAE;IAEzB,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAChC,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAgBD,MAAM,UAAU,SAAS,CAAC,KAAuB,EAAE,UAAuB,EAAE;IAC1E,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAChC,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,OAAO,GAA+B;YAC1C,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC;SAC7B,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IACD,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxB,MAAM,WAAW,GAAI,KAAkB,CAAC,WAAW,CAAC;IACpD,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACxB,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAuB;IAC7C,MAAM,QAAQ,GAAG,KAAiB,CAAC;IACnC,MAAM,UAAU,GAAoB;QAClC,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,SAAS;QAChC,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;IACF,IAAI,QAAQ,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACvE,IAAI,QAAQ,CAAC,QAAQ;QAAE,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACvE,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5D,UAAU,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;IAChD,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO;QAAE,UAAU,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAC5D,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
package/dist/utils/prompt.d.ts
CHANGED
|
@@ -6,10 +6,25 @@ export interface SelectPromptOptions<T extends string> {
|
|
|
6
6
|
choices: SelectChoice<T>[];
|
|
7
7
|
defaultValue?: T;
|
|
8
8
|
message: string;
|
|
9
|
+
flag?: string;
|
|
10
|
+
safeDefaultForNonInteractive?: boolean;
|
|
9
11
|
}
|
|
10
|
-
export declare
|
|
12
|
+
export declare class NonInteractiveError extends Error {
|
|
13
|
+
readonly code = "NEO_NON_INTERACTIVE";
|
|
14
|
+
readonly flag?: string;
|
|
15
|
+
readonly prompt: string;
|
|
16
|
+
constructor(prompt: string, flag?: string);
|
|
17
|
+
}
|
|
18
|
+
export declare function promptSelect<T extends string>({ choices, defaultValue, message, flag, safeDefaultForNonInteractive, }: SelectPromptOptions<T>): Promise<T>;
|
|
11
19
|
export interface PasswordPromptOptions {
|
|
12
20
|
message: string;
|
|
21
|
+
envVar?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare function promptPassword({ message, envVar, }: PasswordPromptOptions): Promise<string>;
|
|
24
|
+
export declare function mayPrompt(promptDescription: string, flag?: string): boolean;
|
|
25
|
+
export interface PromptGate {
|
|
26
|
+
shouldPrompt: boolean;
|
|
27
|
+
acceptDefault: boolean;
|
|
13
28
|
}
|
|
14
|
-
export declare function
|
|
29
|
+
export declare function promptGate(): PromptGate;
|
|
15
30
|
//# sourceMappingURL=prompt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/utils/prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/utils/prompt.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,MAAM;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;CACV;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,MAAM;IACnD,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAKhB,IAAI,CAAC,EAAE,MAAM,CAAC;IAKd,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC;AAMD,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,IAAI,yBAAyB;IACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEZ,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;CAS1C;AAOD,wBAAsB,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,EACnD,OAAO,EACP,YAAY,EACZ,OAAO,EACP,IAAI,EACJ,4BAA4B,GAC7B,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA8ErC;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAEhB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD,wBAAsB,cAAc,CAAC,EACnC,OAAO,EACP,MAAM,GACP,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAqEzC;AAYD,wBAAgB,SAAS,CAAC,iBAAiB,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAO3E;AAMD,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,wBAAgB,UAAU,IAAI,UAAU,CAKvC"}
|
package/dist/utils/prompt.js
CHANGED
|
@@ -1,13 +1,38 @@
|
|
|
1
1
|
import select from '@inquirer/select';
|
|
2
2
|
import readline from 'node:readline/promises';
|
|
3
3
|
import { stdin as input, stdout as output } from 'node:process';
|
|
4
|
-
|
|
4
|
+
import { getRuntimeContext } from './runtime-context.js';
|
|
5
|
+
export class NonInteractiveError extends Error {
|
|
6
|
+
code = 'NEO_NON_INTERACTIVE';
|
|
7
|
+
flag;
|
|
8
|
+
prompt;
|
|
9
|
+
constructor(prompt, flag) {
|
|
10
|
+
const suffix = flag ? ` Pass ${flag} to bypass.` : '';
|
|
11
|
+
super(`Interactive prompt required in non-interactive mode: "${prompt}".${suffix}`);
|
|
12
|
+
this.name = 'NonInteractiveError';
|
|
13
|
+
this.prompt = prompt;
|
|
14
|
+
if (flag !== undefined) {
|
|
15
|
+
this.flag = flag;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export async function promptSelect({ choices, defaultValue, message, flag, safeDefaultForNonInteractive, }) {
|
|
5
20
|
const defaultIndex = defaultValue !== undefined ? choices.findIndex(({ value }) => value === defaultValue) : 0;
|
|
6
21
|
const safeDefaultIndex = defaultIndex >= 0 ? defaultIndex : 0;
|
|
7
22
|
const fallbackValue = choices[safeDefaultIndex]?.value;
|
|
8
23
|
if (!fallbackValue) {
|
|
9
24
|
throw new Error('No choices provided to promptSelect');
|
|
10
25
|
}
|
|
26
|
+
const ctx = getRuntimeContext();
|
|
27
|
+
if (ctx.yes && defaultValue !== undefined) {
|
|
28
|
+
return fallbackValue;
|
|
29
|
+
}
|
|
30
|
+
if (ctx.nonInteractive) {
|
|
31
|
+
if (safeDefaultForNonInteractive && defaultValue !== undefined) {
|
|
32
|
+
return fallbackValue;
|
|
33
|
+
}
|
|
34
|
+
throw new NonInteractiveError(message, flag);
|
|
35
|
+
}
|
|
11
36
|
if (input.isTTY && output.isTTY) {
|
|
12
37
|
const interactiveResult = await select({
|
|
13
38
|
choices: choices.map(({ label, value }) => ({
|
|
@@ -23,12 +48,15 @@ export async function promptSelect({ choices, defaultValue, message, }) {
|
|
|
23
48
|
return interactiveResult;
|
|
24
49
|
}
|
|
25
50
|
}
|
|
26
|
-
const rl = readline.createInterface({ input, output });
|
|
51
|
+
const rl = readline.createInterface({ input, output: process.stderr });
|
|
52
|
+
const writeLine = (line) => {
|
|
53
|
+
process.stderr.write(`${line}\n`);
|
|
54
|
+
};
|
|
27
55
|
try {
|
|
28
|
-
|
|
56
|
+
writeLine(message);
|
|
29
57
|
choices.forEach(({ label }, index) => {
|
|
30
58
|
const marker = index === safeDefaultIndex ? ' (default)' : '';
|
|
31
|
-
|
|
59
|
+
writeLine(` ${index + 1}. ${label}${marker}`);
|
|
32
60
|
});
|
|
33
61
|
let selected = null;
|
|
34
62
|
while (selected === null) {
|
|
@@ -41,7 +69,7 @@ export async function promptSelect({ choices, defaultValue, message, }) {
|
|
|
41
69
|
selected = choices[parsedIndex]?.value ?? fallbackValue;
|
|
42
70
|
break;
|
|
43
71
|
}
|
|
44
|
-
|
|
72
|
+
writeLine('Please enter a valid number from the list.');
|
|
45
73
|
}
|
|
46
74
|
return selected ?? fallbackValue;
|
|
47
75
|
}
|
|
@@ -49,10 +77,20 @@ export async function promptSelect({ choices, defaultValue, message, }) {
|
|
|
49
77
|
rl.close();
|
|
50
78
|
}
|
|
51
79
|
}
|
|
52
|
-
export async function promptPassword({ message }) {
|
|
80
|
+
export async function promptPassword({ message, envVar, }) {
|
|
81
|
+
const ctx = getRuntimeContext();
|
|
82
|
+
if (envVar && process.env[envVar]) {
|
|
83
|
+
return process.env[envVar];
|
|
84
|
+
}
|
|
85
|
+
if (ctx.nonInteractive) {
|
|
86
|
+
throw new NonInteractiveError(message, envVar ? `$${envVar} env var` : undefined);
|
|
87
|
+
}
|
|
53
88
|
return new Promise((resolve) => {
|
|
54
89
|
let password = '';
|
|
55
|
-
|
|
90
|
+
const write = (s) => {
|
|
91
|
+
process.stderr.write(s);
|
|
92
|
+
};
|
|
93
|
+
write(`${message}: `);
|
|
56
94
|
if (input.isTTY) {
|
|
57
95
|
input.setRawMode(true);
|
|
58
96
|
}
|
|
@@ -66,7 +104,7 @@ export async function promptPassword({ message }) {
|
|
|
66
104
|
}
|
|
67
105
|
input.pause();
|
|
68
106
|
input.removeListener('data', onData);
|
|
69
|
-
|
|
107
|
+
write('\n');
|
|
70
108
|
resolve(password);
|
|
71
109
|
return;
|
|
72
110
|
}
|
|
@@ -76,20 +114,37 @@ export async function promptPassword({ message }) {
|
|
|
76
114
|
}
|
|
77
115
|
input.pause();
|
|
78
116
|
input.removeListener('data', onData);
|
|
79
|
-
|
|
117
|
+
write('\n');
|
|
80
118
|
process.exit(1);
|
|
81
119
|
}
|
|
82
120
|
if (charCode === 127 || charCode === 8) {
|
|
83
121
|
if (password.length > 0) {
|
|
84
122
|
password = password.slice(0, -1);
|
|
85
|
-
|
|
123
|
+
write('\b \b');
|
|
86
124
|
}
|
|
87
125
|
return;
|
|
88
126
|
}
|
|
89
127
|
password += char;
|
|
90
|
-
|
|
128
|
+
write('*');
|
|
91
129
|
};
|
|
92
130
|
input.on('data', onData);
|
|
93
131
|
});
|
|
94
132
|
}
|
|
133
|
+
export function mayPrompt(promptDescription, flag) {
|
|
134
|
+
const ctx = getRuntimeContext();
|
|
135
|
+
if (ctx.yes)
|
|
136
|
+
return false;
|
|
137
|
+
if (ctx.nonInteractive) {
|
|
138
|
+
throw new NonInteractiveError(promptDescription, flag);
|
|
139
|
+
}
|
|
140
|
+
return true;
|
|
141
|
+
}
|
|
142
|
+
export function promptGate() {
|
|
143
|
+
const ctx = getRuntimeContext();
|
|
144
|
+
if (ctx.yes)
|
|
145
|
+
return { shouldPrompt: false, acceptDefault: true };
|
|
146
|
+
if (ctx.nonInteractive)
|
|
147
|
+
return { shouldPrompt: false, acceptDefault: true };
|
|
148
|
+
return { shouldPrompt: true, acceptDefault: false };
|
|
149
|
+
}
|
|
95
150
|
//# sourceMappingURL=prompt.js.map
|
package/dist/utils/prompt.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/utils/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,kBAAkB,CAAC;AACtC,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/utils/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,kBAAkB,CAAC;AACtC,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AA2BzD,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IACnC,IAAI,GAAG,qBAAqB,CAAC;IAC7B,IAAI,CAAU;IACd,MAAM,CAAS;IAExB,YAAY,MAAc,EAAE,IAAa;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,KAAK,CAAC,yDAAyD,MAAM,KAAK,MAAM,EAAE,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AAOD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAmB,EACnD,OAAO,EACP,YAAY,EACZ,OAAO,EACP,IAAI,EACJ,4BAA4B,GACL;IACvB,MAAM,YAAY,GAChB,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,MAAM,gBAAgB,GAAG,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;IAEvD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAGhC,IAAI,GAAG,CAAC,GAAG,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,aAAa,CAAC;IACvB,CAAC;IAGD,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,4BAA4B,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/D,OAAO,aAAa,CAAC;QACvB,CAAC;QACD,MAAM,IAAI,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC1C,IAAI,EAAE,KAAK;gBACX,KAAK;aACN,CAAC,CAAC;YACH,OAAO,EAAE,YAAY,IAAI,aAAa;YACtC,IAAI,EAAE,KAAK;YACX,OAAO;YACP,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;SACtC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAE1B,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,iBAAiB,CAAC;QAC3B,CAAC;IACH,CAAC;IAID,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,CAAC,IAAY,EAAQ,EAAE;QACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,SAAS,CAAC,OAAO,CAAC,CAAC;QACnB,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE;YACnC,MAAM,MAAM,GAAG,KAAK,KAAK,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,SAAS,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,KAAK,GAAG,MAAM,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,GAAa,IAAI,CAAC;QAE9B,OAAO,QAAQ,KAAK,IAAI,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,gBAAgB,GAAG,CAAC,KAAK,CAAC,CAAC;YACjF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnB,OAAO,aAAa,CAAC;YACvB,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YAE3D,IAAI,WAAW,IAAI,CAAC,IAAI,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;gBACrD,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,aAAa,CAAC;gBACxD,MAAM;YACR,CAAC;YAED,SAAS,CAAC,4CAA4C,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO,QAAQ,IAAI,aAAa,CAAC;IACnC,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAYD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACnC,OAAO,EACP,MAAM,GACgB;IACtB,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAEhC,IAAI,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAW,CAAC;IACvC,CAAC;IAED,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,IAAI,mBAAmB,CAC3B,OAAO,EACP,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,UAAU,CAAC,CAAC,CAAC,SAAS,CAC1C,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,QAAQ,GAAG,EAAE,CAAC;QAIlB,MAAM,KAAK,GAAG,CAAC,CAAS,EAAQ,EAAE;YAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC;QAEF,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;QAEtB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAChB,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QACD,KAAK,CAAC,MAAM,EAAE,CAAC;QACf,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAE1B,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;YAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAEpC,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;gBACvC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBAC1B,CAAC;gBACD,KAAK,CAAC,KAAK,EAAE,CAAC;gBACd,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACrC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACZ,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAClB,OAAO;YACT,CAAC;YAED,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;gBACnB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBAC1B,CAAC;gBACD,KAAK,CAAC,KAAK,EAAE,CAAC;gBACd,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACrC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;gBACvC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACjC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACjB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,QAAQ,IAAI,IAAI,CAAC;YACjB,KAAK,CAAC,GAAG,CAAC,CAAC;QACb,CAAC,CAAC;QAEF,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;AACL,CAAC;AAYD,MAAM,UAAU,SAAS,CAAC,iBAAyB,EAAE,IAAa;IAChE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAChC,IAAI,GAAG,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IAC1B,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,IAAI,mBAAmB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAWD,MAAM,UAAU,UAAU;IACxB,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAChC,IAAI,GAAG,CAAC,GAAG;QAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjE,IAAI,GAAG,CAAC,cAAc;QAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC5E,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AACtD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-action.d.ts","sourceRoot":"","sources":["../../src/utils/run-action.ts"],"names":[],"mappings":"AAsBA,MAAM,MAAM,eAAe,CAAC,IAAI,SAAS,OAAO,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAE9F,wBAAgB,SAAS,CAAC,IAAI,SAAS,OAAO,EAAE,EAC9C,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC,GACxB,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAclC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { NonInteractiveError } from './prompt.js';
|
|
2
|
+
import { emitError } from './output.js';
|
|
3
|
+
export function runAction(fn) {
|
|
4
|
+
return async (...args) => {
|
|
5
|
+
try {
|
|
6
|
+
await fn(...args);
|
|
7
|
+
}
|
|
8
|
+
catch (error) {
|
|
9
|
+
if (error instanceof NonInteractiveError) {
|
|
10
|
+
emitError(error);
|
|
11
|
+
process.exit(2);
|
|
12
|
+
}
|
|
13
|
+
const err = error instanceof Error ? error : new Error(String(error));
|
|
14
|
+
emitError(err);
|
|
15
|
+
process.exit(1);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=run-action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-action.js","sourceRoot":"","sources":["../../src/utils/run-action.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,MAAM,UAAU,SAAS,CACvB,EAAyB;IAEzB,OAAO,KAAK,EAAE,GAAG,IAAU,EAAiB,EAAE;QAC5C,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;gBACzC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,SAAS,CAAC,GAAG,CAAC,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export type OutputFormat = 'text' | 'json';
|
|
2
|
+
export interface RuntimeContext {
|
|
3
|
+
format: OutputFormat;
|
|
4
|
+
yes: boolean;
|
|
5
|
+
nonInteractive: boolean;
|
|
6
|
+
quiet: boolean;
|
|
7
|
+
verbose: boolean;
|
|
8
|
+
color: boolean;
|
|
9
|
+
stdoutIsTTY: boolean;
|
|
10
|
+
stdinIsTTY: boolean;
|
|
11
|
+
isCI: boolean;
|
|
12
|
+
isAgent: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface RuntimeContextOverrides {
|
|
15
|
+
json?: boolean;
|
|
16
|
+
format?: OutputFormat;
|
|
17
|
+
yes?: boolean;
|
|
18
|
+
nonInteractive?: boolean;
|
|
19
|
+
quiet?: boolean;
|
|
20
|
+
verbose?: boolean;
|
|
21
|
+
color?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export declare function buildRuntimeContext(overrides?: RuntimeContextOverrides): RuntimeContext;
|
|
24
|
+
export declare function setRuntimeContext(ctx: RuntimeContext): void;
|
|
25
|
+
export declare function getRuntimeContext(): RuntimeContext;
|
|
26
|
+
export declare function isJsonMode(): boolean;
|
|
27
|
+
//# sourceMappingURL=runtime-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-context.d.ts","sourceRoot":"","sources":["../../src/utils/runtime-context.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C,MAAM,WAAW,cAAc;IAE7B,MAAM,EAAE,YAAY,CAAC;IAErB,GAAG,EAAE,OAAO,CAAC;IAEb,cAAc,EAAE,OAAO,CAAC;IAExB,KAAK,EAAE,OAAO,CAAC;IAEf,OAAO,EAAE,OAAO,CAAC;IAEjB,KAAK,EAAE,OAAO,CAAC;IAEf,WAAW,EAAE,OAAO,CAAC;IAErB,UAAU,EAAE,OAAO,CAAC;IAEpB,IAAI,EAAE,OAAO,CAAC;IAEd,OAAO,EAAE,OAAO,CAAC;CAClB;AAgDD,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAMD,wBAAgB,mBAAmB,CAAC,SAAS,GAAE,uBAA4B,GAAG,cAAc,CA0C3F;AAKD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CAE3D;AAGD,wBAAgB,iBAAiB,IAAI,cAAc,CAElD;AAGD,wBAAgB,UAAU,IAAI,OAAO,CAEpC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
function detectCI() {
|
|
2
|
+
const env = process.env;
|
|
3
|
+
return Boolean(env['CI'] ||
|
|
4
|
+
env['CONTINUOUS_INTEGRATION'] ||
|
|
5
|
+
env['GITHUB_ACTIONS'] ||
|
|
6
|
+
env['GITLAB_CI'] ||
|
|
7
|
+
env['CIRCLECI'] ||
|
|
8
|
+
env['BUILDKITE'] ||
|
|
9
|
+
env['JENKINS_URL'] ||
|
|
10
|
+
env['TEAMCITY_VERSION']);
|
|
11
|
+
}
|
|
12
|
+
function detectAgent() {
|
|
13
|
+
const env = process.env;
|
|
14
|
+
return Boolean(env['CLAUDECODE'] ||
|
|
15
|
+
env['CLAUDE_CODE'] ||
|
|
16
|
+
env['CURSOR_AGENT'] ||
|
|
17
|
+
env['AIDER'] ||
|
|
18
|
+
env['CODEX_CLI'] ||
|
|
19
|
+
env['NEO_AGENT'] ||
|
|
20
|
+
env['AI_AGENT']);
|
|
21
|
+
}
|
|
22
|
+
function isTestEnvironment() {
|
|
23
|
+
const env = process.env;
|
|
24
|
+
return Boolean(env['VITEST'] || env['JEST_WORKER_ID'] || env['NODE_ENV'] === 'test');
|
|
25
|
+
}
|
|
26
|
+
function envBool(name) {
|
|
27
|
+
const v = process.env[name];
|
|
28
|
+
if (!v)
|
|
29
|
+
return false;
|
|
30
|
+
const lower = v.toLowerCase();
|
|
31
|
+
return lower === '1' || lower === 'true' || lower === 'yes';
|
|
32
|
+
}
|
|
33
|
+
export function buildRuntimeContext(overrides = {}) {
|
|
34
|
+
const stdoutIsTTY = Boolean(process.stdout.isTTY);
|
|
35
|
+
const stdinIsTTY = Boolean(process.stdin.isTTY);
|
|
36
|
+
const inTest = isTestEnvironment();
|
|
37
|
+
const isCI = inTest ? false : detectCI();
|
|
38
|
+
const isAgent = inTest ? false : detectAgent();
|
|
39
|
+
const jsonFromEnv = envBool('NEO_JSON');
|
|
40
|
+
const format = overrides.format ?? (overrides.json || jsonFromEnv ? 'json' : 'text');
|
|
41
|
+
const yes = overrides.yes ?? envBool('NEO_YES');
|
|
42
|
+
const nonInteractive = overrides.nonInteractive ??
|
|
43
|
+
(envBool('NEO_NON_INTERACTIVE') ||
|
|
44
|
+
isCI ||
|
|
45
|
+
isAgent ||
|
|
46
|
+
format === 'json' ||
|
|
47
|
+
(!stdinIsTTY && !inTest));
|
|
48
|
+
const quiet = overrides.quiet ?? (envBool('NEO_QUIET') || format === 'json');
|
|
49
|
+
const noColorEnv = Boolean(process.env['NO_COLOR']);
|
|
50
|
+
const color = overrides.color ?? !(noColorEnv || !stdoutIsTTY || format === 'json');
|
|
51
|
+
return {
|
|
52
|
+
format,
|
|
53
|
+
yes,
|
|
54
|
+
nonInteractive,
|
|
55
|
+
quiet,
|
|
56
|
+
verbose: overrides.verbose ?? false,
|
|
57
|
+
color,
|
|
58
|
+
stdoutIsTTY,
|
|
59
|
+
stdinIsTTY,
|
|
60
|
+
isCI,
|
|
61
|
+
isAgent,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
let current = buildRuntimeContext();
|
|
65
|
+
export function setRuntimeContext(ctx) {
|
|
66
|
+
current = ctx;
|
|
67
|
+
}
|
|
68
|
+
export function getRuntimeContext() {
|
|
69
|
+
return current;
|
|
70
|
+
}
|
|
71
|
+
export function isJsonMode() {
|
|
72
|
+
return current.format === 'json';
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=runtime-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-context.js","sourceRoot":"","sources":["../../src/utils/runtime-context.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/ui-types.d.ts
CHANGED
|
@@ -50,6 +50,8 @@ export interface UIOutput {
|
|
|
50
50
|
highlight(message: string): void;
|
|
51
51
|
link(text: string, url?: string): void;
|
|
52
52
|
log(message: string): void;
|
|
53
|
+
newline(): void;
|
|
54
|
+
plain(message: string): void;
|
|
53
55
|
}
|
|
54
56
|
export interface UIStructured {
|
|
55
57
|
section(title: string): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui-types.d.ts","sourceRoot":"","sources":["../../src/utils/ui-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAQ/B,eAAO,MAAM,MAAM;;;;;CAST,CAAC;AAKX,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,MAAM,CAAC;AAO3C,eAAO,MAAM,KAAK;;;;;;;;;;CAmBR,CAAC;AAKX,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,KAAK,CAAC;AAKzC,MAAM,WAAW,YAAY;IAE3B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC;IAE3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAKD,MAAM,WAAW,SAAS;IAExB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IAEjB,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB;AAKD,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAKxD,MAAM,WAAW,WAAW;IAE1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAKD,MAAM,WAAW,aAAc,SAAQ,GAAG;IAExC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAKD,MAAM,WAAW,QAAQ;IAYvB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAa/B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAa7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAa5B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAa5B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAa5B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAa7B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAcjC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAavC,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"ui-types.d.ts","sourceRoot":"","sources":["../../src/utils/ui-types.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/ui.d.ts
CHANGED
|
@@ -26,6 +26,8 @@ declare class UISystem implements UI {
|
|
|
26
26
|
highlight(message: string): void;
|
|
27
27
|
link(text: string, url?: string): void;
|
|
28
28
|
log(message: string): void;
|
|
29
|
+
newline(): void;
|
|
30
|
+
plain(message: string): void;
|
|
29
31
|
section(title: string): void;
|
|
30
32
|
list(items: string[]): void;
|
|
31
33
|
keyValue(pairs: KeyValuePair[]): void;
|
package/dist/utils/ui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/utils/ui.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,EAAE,EACP,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/utils/ui.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,EAAE,EACP,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AA2DvB,cAAM,QAAS,YAAW,EAAE;IAE1B,SAAgB,MAAM;;;;;MAAU;IAGhC,SAAgB,KAAK;;;;;;;;;;MAAS;IAMvB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK9B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAM5B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK3B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK5B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKhC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAStC,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAM1B,OAAO,IAAI,IAAI;IAKf,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAS5B,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM5B,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI;IAO3B,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI;IAmBrC,KAAK,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAoD5B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI;IAe/C,OAAO,IAAI,IAAI;IAaf,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CAyD5C;AAcD,eAAO,MAAM,EAAE,UAAiB,CAAC;AAKjC,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC"}
|