@sorrell/cli-utilities 1.0.34 → 1.0.36
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/Distribution/Listr/Listr.Types.d.ts +13 -5
- package/Distribution/Listr/Listr.Types.d.ts.map +1 -1
- package/Distribution/Listr/Listr.d.ts +7 -11
- package/Distribution/Listr/Listr.d.ts.map +1 -1
- package/Distribution/Listr/Listr.js +48 -59
- package/Distribution/Listr/Listr.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ListrDefaultRenderer, ListrTask as ListrTaskOriginal, ListrTaskObject as ListrTaskObjectOriginal, ListrTaskFn as ListrTaskFnOriginal, ListrTaskResult, ListrTaskWrapper as ListrTaskWrapperOriginal, ListrBaseClassOptions } from "listr2";
|
|
2
|
+
export type ListrTaskFn<ContextType> = ListrTaskFnOriginal<ContextType, ListrDefaultRenderer, ListrDefaultRenderer>;
|
|
3
|
+
export type ListrTaskNative<ContextType> = ListrTaskOriginal<ContextType, ListrDefaultRenderer, ListrDefaultRenderer>;
|
|
4
|
+
export type ListrOptions<ContextType> = ListrBaseClassOptions<ContextType, ListrDefaultRenderer, ListrDefaultRenderer>;
|
|
5
|
+
export type ListrTask<ContextType> = ListrTaskNative<ContextType> | (ListrTaskNative<ContextType> & {
|
|
6
|
+
tensed: false;
|
|
7
|
+
}) | ListrTaskTensed<ContextType>;
|
|
2
8
|
export type ListrTaskWrapper<ContextType> = ListrTaskWrapperOriginal<ContextType, ListrDefaultRenderer, ListrDefaultRenderer>;
|
|
3
|
-
export type ListrConstructorTask<ContextType> =
|
|
9
|
+
export type ListrConstructorTask<ContextType> = ListrTaskNative<ContextType> | Array<ListrTaskNative<ContextType>>;
|
|
4
10
|
export type TensedTitle = `${string}ing ${string}.`;
|
|
5
11
|
export declare namespace ListrTaskTensedCallbackReturnType {
|
|
6
12
|
type FailureOptions = {} | {
|
|
@@ -46,13 +52,15 @@ export type ListrTaskTensedCallbacks<ContextType> = {
|
|
|
46
52
|
Succeed: ListrTaskTensedCallbackReturnType.Success<ContextType>;
|
|
47
53
|
};
|
|
48
54
|
export type ListrTaskTensedFunction<ContextType> = {
|
|
49
|
-
(Context: ContextType, Task: ListrTaskWrapper<ContextType>, Callbacks: ListrTaskTensedCallbacks<ContextType>): Promise<
|
|
55
|
+
(Context: ContextType, Task: ListrTaskWrapper<ContextType>, Callbacks: ListrTaskTensedCallbacks<ContextType>): Promise<ListrTaskTensedResult<ContextType>>;
|
|
50
56
|
};
|
|
51
|
-
export type ListrTaskTensed<ContextType> = Omit<
|
|
57
|
+
export type ListrTaskTensed<ContextType> = Omit<ListrTaskNative<ContextType>, "task" | "title"> & {
|
|
52
58
|
task: ListrTaskTensedFunction<ContextType>;
|
|
59
|
+
tensed: true;
|
|
53
60
|
title: TensedTitle;
|
|
54
61
|
};
|
|
55
|
-
export type
|
|
62
|
+
export type ListrTaskTensedArgument<ContextType> = Omit<ListrTaskTensed<ContextType>, "tensed">;
|
|
63
|
+
export type ListrTaskObject<ContextType> = ListrTaskObjectOriginal<ContextType, ListrDefaultRenderer, ListrDefaultRenderer>;
|
|
56
64
|
export type ListrTaskTensedResult<ContextType> = {
|
|
57
65
|
Result: ListrTaskResult<ContextType> | undefined;
|
|
58
66
|
Status: "Success" | "Failure" | "Exit";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Listr.Types.d.ts","sourceRoot":"","sources":["../../Source/Listr/Listr.Types.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACR,
|
|
1
|
+
{"version":3,"file":"Listr.Types.d.ts","sourceRoot":"","sources":["../../Source/Listr/Listr.Types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,8 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
import type {
|
|
3
|
-
/** A string-only {@link Error} used by {@link Listr} to show nicely-formatted errors. */
|
|
4
|
-
export declare class SimpleError extends Error {
|
|
5
|
-
constructor(Message: string);
|
|
6
|
-
TheMessage: string;
|
|
7
|
-
}
|
|
1
|
+
import { type ListrDefaultRenderer, type ListrTask as ListrTaskOriginal } from "listr2";
|
|
2
|
+
import type { ListrOptions, ListrTask, ListrTaskNative, ListrTaskObject, ListrTaskTensedArgument } from "./Listr.Types.js";
|
|
8
3
|
/**
|
|
9
4
|
* A wrapper for `new Listr` that handles errors nicely.
|
|
10
5
|
*
|
|
11
|
-
* @deprecated A new function is being written.
|
|
12
|
-
*
|
|
13
6
|
* @typeParam ContextType - The type of the `listr2` context used by the {@link Task}.
|
|
14
7
|
*
|
|
15
8
|
* @param Task - The task(s) to run.
|
|
@@ -20,12 +13,15 @@ export declare class SimpleError extends Error {
|
|
|
20
13
|
* @param ParentTask - *(Optional)* The {@link ListrTaskObject | parent task} of which the
|
|
21
14
|
* {@link Task | task(s)} are (a) descendant(s).
|
|
22
15
|
*/
|
|
23
|
-
export declare function RunListr<ContextType = unknown>(
|
|
16
|
+
export declare function RunListr<ContextType = unknown>(Tasks: Array<ListrTask<ContextType>>, Options?: ListrOptions<ContextType>, ParentTask?: ListrTaskObject<unknown>): Promise<void>;
|
|
17
|
+
export declare function NewListrTask<ContextType = unknown>(Task: ListrTask<ContextType>): ListrTaskOriginal<ContextType, ListrDefaultRenderer, ListrDefaultRenderer>;
|
|
24
18
|
/**
|
|
25
19
|
* @TODO Write this comment.
|
|
26
20
|
*
|
|
27
21
|
* @typeParam ContextType -
|
|
28
22
|
* @param Task -
|
|
23
|
+
*
|
|
24
|
+
* @returns
|
|
29
25
|
*/
|
|
30
|
-
export declare function NewListrTaskTensed<ContextType = unknown>(Task:
|
|
26
|
+
export declare function NewListrTaskTensed<ContextType = unknown>(Task: ListrTaskTensedArgument<ContextType>): ListrTaskNative<ContextType>;
|
|
31
27
|
//# sourceMappingURL=Listr.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Listr.d.ts","sourceRoot":"","sources":["../../Source/Listr/Listr.ts"],"names":[],"mappings":"AAMA,OAAO,
|
|
1
|
+
{"version":3,"file":"Listr.d.ts","sourceRoot":"","sources":["../../Source/Listr/Listr.ts"],"names":[],"mappings":"AAMA,OAAO,EAEH,KAAK,oBAAoB,EACzB,KAAK,SAAS,IAAI,iBAAiB,EAEX,MAAM,QAAQ,CAAC;AAC3C,OAAO,KAAK,EAER,YAAY,EACZ,SAAS,EACT,eAAe,EACf,eAAe,EAEf,uBAAuB,EAGL,MAAM,kBAAkB,CAAC;AA8C/C;;;;;;;;;;;;GAYG;AACH,wBAAsB,QAAQ,CAAC,WAAW,GAAG,OAAO,EAChD,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,EACpC,OAAO,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,EACnC,UAAU,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GACtC,OAAO,CAAC,IAAI,CAAC,CAAC;AAoDjB,wBAAgB,YAAY,CAAC,WAAW,GAAG,OAAO,EAC9C,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,GAC7B,iBAAiB,CAAC,WAAW,EAAE,oBAAoB,EAAE,oBAAoB,CAAC,CAAA;AAuB7E;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,GAAG,OAAO,EACpD,IAAI,EAAE,uBAAuB,CAAC,WAAW,CAAC,GAC3C,eAAe,CAAC,WAAW,CAAC,CAAC"}
|
|
@@ -3,18 +3,19 @@
|
|
|
3
3
|
* Copyright: (c) 2026 Gage Sorrell
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
6
|
-
import { Listr as
|
|
6
|
+
import { Listr as ListrOriginal } from "listr2";
|
|
7
7
|
import { Inflectors } from "en-inflectors";
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
constructor(Message) {
|
|
8
|
+
class ListrTaskError extends Error {
|
|
9
|
+
constructor({ Message, OriginalError }) {
|
|
11
10
|
super();
|
|
12
|
-
this.
|
|
11
|
+
this.OriginalError = OriginalError;
|
|
12
|
+
this.Message = Message;
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
OriginalError;
|
|
15
|
+
Message;
|
|
15
16
|
}
|
|
16
17
|
;
|
|
17
|
-
class Listr extends
|
|
18
|
+
class Listr extends ListrOriginal {
|
|
18
19
|
constructor(Task, Options, ParentTask) {
|
|
19
20
|
if (Options === undefined && ParentTask === undefined) {
|
|
20
21
|
super(Task);
|
|
@@ -28,34 +29,48 @@ class Listr extends OriginalListr {
|
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
31
|
;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
* @param GenericErrorMessage - The error message that is shown if the {@link Task | task(s)} throw(s)
|
|
40
|
-
* something other than a {@link SimpleError}.
|
|
41
|
-
* @param Options - *(Optional)* The {@link ListrBaseClassOptions} used to customize the
|
|
42
|
-
* {@link Task | task(s)}.
|
|
43
|
-
* @param ParentTask - *(Optional)* The {@link ListrTaskObject | parent task} of which the
|
|
44
|
-
* {@link Task | task(s)} are (a) descendant(s).
|
|
45
|
-
*/
|
|
46
|
-
export async function RunListr(Task, GenericErrorMessage, Options, ParentTask) {
|
|
32
|
+
export async function RunListr(Tasks, InOptions, ParentTask) {
|
|
33
|
+
const DefaultOptions = {
|
|
34
|
+
exitOnError: true
|
|
35
|
+
};
|
|
36
|
+
const Options = {
|
|
37
|
+
...DefaultOptions,
|
|
38
|
+
...(InOptions || {})
|
|
39
|
+
};
|
|
47
40
|
try {
|
|
48
|
-
|
|
41
|
+
const HandledTasks = Tasks.map(NewListrTask);
|
|
42
|
+
await new Listr(HandledTasks, Options, ParentTask).run();
|
|
49
43
|
}
|
|
50
44
|
catch (ListrError) {
|
|
51
|
-
if (
|
|
52
|
-
|
|
45
|
+
if (!Options.exitOnError) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (ListrError instanceof ListrTaskError) {
|
|
49
|
+
const Message = `\n🚨 ${ListrError.Message}` || `\n🚨 Exited due to an error.${ListrError.OriginalError !== undefined ? " The error is printed above." : ""}`;
|
|
50
|
+
if (ListrError.OriginalError !== undefined) {
|
|
51
|
+
console.dir(JSON.stringify(ListrError.OriginalError, null, 4));
|
|
52
|
+
}
|
|
53
|
+
console.error(Message);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
console.dir(JSON.stringify(ListrError, null, 4));
|
|
57
|
+
console.error(`\n🚨 Exited due to an error. The error is printed above.`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
export function NewListrTask(InTask) {
|
|
62
|
+
if ("tensed" in InTask) {
|
|
63
|
+
if (InTask.tensed === false) {
|
|
64
|
+
const { tensed, ...Task } = InTask;
|
|
65
|
+
return Task;
|
|
53
66
|
}
|
|
54
67
|
else {
|
|
55
|
-
|
|
56
|
-
console.error(`\n🚨 ${GenericErrorMessage}. The error is printed above.`);
|
|
68
|
+
return NewListrTaskTensed(InTask);
|
|
57
69
|
}
|
|
58
70
|
}
|
|
71
|
+
else {
|
|
72
|
+
return InTask;
|
|
73
|
+
}
|
|
59
74
|
}
|
|
60
75
|
export function NewListrTaskTensed(InTask) {
|
|
61
76
|
/* eslint-disable-next-line jsdoc/require-jsdoc */
|
|
@@ -94,17 +109,17 @@ export function NewListrTaskTensed(InTask) {
|
|
|
94
109
|
if ("Throws" in Options && Options.Throws) {
|
|
95
110
|
if ("Error" in Options) {
|
|
96
111
|
if ("Message" in Options) {
|
|
97
|
-
throw new
|
|
112
|
+
throw new ListrTaskError({
|
|
98
113
|
OriginalError: Options.Error,
|
|
99
114
|
Message: Options.Message
|
|
100
115
|
});
|
|
101
116
|
}
|
|
102
117
|
else {
|
|
103
|
-
throw new
|
|
118
|
+
throw new ListrTaskError({ OriginalError: Options.Error });
|
|
104
119
|
}
|
|
105
120
|
}
|
|
106
121
|
if ("Message" in Options) {
|
|
107
|
-
throw new
|
|
122
|
+
throw new ListrTaskError({ Message: Options.Message });
|
|
108
123
|
}
|
|
109
124
|
}
|
|
110
125
|
return {
|
|
@@ -154,34 +169,8 @@ export function NewListrTaskTensed(InTask) {
|
|
|
154
169
|
Status: "Exit"
|
|
155
170
|
};
|
|
156
171
|
}
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
super();
|
|
160
|
-
this.OriginalError = OriginalError;
|
|
161
|
-
this.Message = Message;
|
|
162
|
-
}
|
|
163
|
-
OriginalError;
|
|
164
|
-
Message;
|
|
165
|
-
}
|
|
166
|
-
;
|
|
167
|
-
try {
|
|
168
|
-
const { Result } = await InTask.task(Context, Task, { Exit, Fail, Succeed });
|
|
169
|
-
return Result;
|
|
170
|
-
}
|
|
171
|
-
catch (TheError) {
|
|
172
|
-
if (TheError instanceof ListrTaskTensedError) {
|
|
173
|
-
const Message = `🚨 ${TheError.Message}` || `🚨 Exited due to an error.${TheError.OriginalError !== undefined ? " The error is printed above." : ""}`;
|
|
174
|
-
if (TheError.OriginalError !== undefined) {
|
|
175
|
-
console.dir(JSON.stringify(TheError.OriginalError, null, 4));
|
|
176
|
-
}
|
|
177
|
-
console.error(Message);
|
|
178
|
-
}
|
|
179
|
-
else {
|
|
180
|
-
console.dir(JSON.stringify(TheError, null, 4));
|
|
181
|
-
console.error(`🚨 Exited due to an error. The error is printed above.`);
|
|
182
|
-
}
|
|
183
|
-
throw new Error();
|
|
184
|
-
}
|
|
172
|
+
const { Result } = await InTask.task(Context, Task, { Exit, Fail, Succeed });
|
|
173
|
+
return Result;
|
|
185
174
|
};
|
|
186
175
|
return {
|
|
187
176
|
...InTask,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Listr.js","sourceRoot":"","sources":["../../Source/Listr/Listr.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAKH,KAAK,IAAI,aAAa,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"Listr.js","sourceRoot":"","sources":["../../Source/Listr/Listr.ts"],"names":[],"mappings":"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"}
|