@decaf-ts/core 0.8.38 → 0.8.39
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/core.cjs +1 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.js +1 -1
- package/dist/core.js.map +1 -1
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/tasks/TaskErrors.d.ts +45 -0
- package/lib/esm/tasks/TaskErrors.js +11 -0
- package/lib/esm/tasks/TaskErrors.js.map +1 -1
- package/lib/esm/tasks/TaskTracker.js +5 -4
- package/lib/esm/tasks/TaskTracker.js.map +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/tasks/TaskErrors.cjs +12 -0
- package/lib/tasks/TaskErrors.d.ts +45 -0
- package/lib/tasks/TaskErrors.js.map +1 -1
- package/lib/tasks/TaskTracker.cjs +5 -4
- package/lib/tasks/TaskTracker.js.map +1 -1
- package/package.json +1 -1
package/lib/esm/index.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export * from "./persistence";
|
|
|
22
22
|
* @const VERSION
|
|
23
23
|
* @memberOf module:core
|
|
24
24
|
*/
|
|
25
|
-
export declare const VERSION = "0.8.
|
|
25
|
+
export declare const VERSION = "0.8.38";
|
|
26
26
|
/**
|
|
27
27
|
* @description Stores the current package version
|
|
28
28
|
* @summary A constant representing the version of the core package
|
package/lib/esm/index.js
CHANGED
|
@@ -32,7 +32,7 @@ export * from "./persistence/index.js";
|
|
|
32
32
|
* @const VERSION
|
|
33
33
|
* @memberOf module:core
|
|
34
34
|
*/
|
|
35
|
-
export const VERSION = "0.8.
|
|
35
|
+
export const VERSION = "0.8.38";
|
|
36
36
|
/**
|
|
37
37
|
* @description Stores the current package version
|
|
38
38
|
* @summary A constant representing the version of the core package
|
|
@@ -1,5 +1,50 @@
|
|
|
1
1
|
import { BaseError } from "@decaf-ts/db-decorators";
|
|
2
2
|
import { TaskErrorModel } from "./models/TaskErrorModel";
|
|
3
|
+
import { TaskStatus } from "./constants";
|
|
4
|
+
/**
|
|
5
|
+
* Represents the next action to take after a task error.
|
|
6
|
+
* Used to identify the appropriate response to task failures.
|
|
7
|
+
*/
|
|
8
|
+
export type TaskNextAction = TaskStatus.CANCELED | TaskStatus.WAITING_RETRY | TaskStatus.SCHEDULED | TaskStatus.FAILED;
|
|
9
|
+
/**
|
|
10
|
+
* Additional properties added to errors from TaskTracker.resolve() and TaskTracker.wait()
|
|
11
|
+
*/
|
|
12
|
+
export type TaskErrorProps = {
|
|
13
|
+
/** The next action to take in response to this error */
|
|
14
|
+
nextAction: TaskNextAction;
|
|
15
|
+
/** The task ID this error relates to (optional, present on TaskControlError) */
|
|
16
|
+
taskId?: string;
|
|
17
|
+
/** Additional error details (optional, present on TaskControlError) */
|
|
18
|
+
details?: TaskErrorModel;
|
|
19
|
+
/** Additional metadata (optional, present on TaskControlError) */
|
|
20
|
+
meta?: Record<string, any>;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Generic type that preserves the original error type while adding task-specific properties.
|
|
24
|
+
* Use this to type errors from TaskTracker.resolve() and TaskTracker.wait().
|
|
25
|
+
*
|
|
26
|
+
* The original error is preserved (e.g., ValidationError stays ValidationError),
|
|
27
|
+
* with the nextAction property added to identify the appropriate response:
|
|
28
|
+
* - `TaskStatus.CANCELED`: Task was explicitly canceled
|
|
29
|
+
* - `TaskStatus.SCHEDULED`: Task was rescheduled
|
|
30
|
+
* - `TaskStatus.WAITING_RETRY`: Task is waiting for retry
|
|
31
|
+
* - `TaskStatus.FAILED`: Task has permanently failed
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* try {
|
|
36
|
+
* await tracker.resolve();
|
|
37
|
+
* } catch (error: unknown) {
|
|
38
|
+
* if (isTaskError<ValidationError>(error, ValidationError)) {
|
|
39
|
+
* // error is typed as TaskErrorFrom<ValidationError>
|
|
40
|
+
* console.log(error.nextAction); // TaskNextAction
|
|
41
|
+
* console.log(error.code); // ValidationError's code property
|
|
42
|
+
* }
|
|
43
|
+
* }
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export type TaskErrorFrom<E extends Error> = E & TaskErrorProps;
|
|
47
|
+
export declare function isTaskError<E extends Error = Error>(error: unknown, ErrorClass?: new (...args: any[]) => E): error is TaskErrorFrom<E>;
|
|
3
48
|
export declare class TaskControlError extends BaseError {
|
|
4
49
|
readonly taskId: string;
|
|
5
50
|
readonly details?: TaskErrorModel;
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
import { BaseError } from "@decaf-ts/db-decorators";
|
|
2
|
+
export function isTaskError(error, ErrorClass) {
|
|
3
|
+
if (!(error instanceof Error))
|
|
4
|
+
return false;
|
|
5
|
+
if (!("nextAction" in error))
|
|
6
|
+
return false;
|
|
7
|
+
if (typeof error.nextAction !== "string")
|
|
8
|
+
return false;
|
|
9
|
+
if (ErrorClass && !(error instanceof ErrorClass))
|
|
10
|
+
return false;
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
2
13
|
export class TaskControlError extends BaseError {
|
|
3
14
|
constructor(name, taskId, message, details, meta, code = 500) {
|
|
4
15
|
super(name, message, code);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskErrors.js","sourceRoot":"","sources":["../../../src/tasks/TaskErrors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"TaskErrors.js","sourceRoot":"","sources":["../../../src/tasks/TaskErrors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAsDpD,MAAM,UAAU,WAAW,CACzB,KAAc,EACd,UAAsC;IAEtC,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,OAAQ,KAAa,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChE,IAAI,UAAU,IAAI,CAAC,CAAC,KAAK,YAAY,UAAU,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAK7C,YACE,IAAY,EACZ,MAAc,EACd,OAAe,EACf,OAAwB,EACxB,IAA0B,EAC1B,IAAI,GAAG,GAAG;QAEV,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,gBAAgB;IACjD,YACE,MAAc,EACd,OAAwB,EACxB,IAA0B;QAE1B,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,QAAQ,MAAM,SAAS,CAAC;QAC5D,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IACjE,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,gBAAgB;IAClD,YACE,MAAc,EACd,OAAwB,EACxB,IAA0B;QAE1B,MAAM,SAAS,GACb,IAAI,EAAE,SAAS,YAAY,IAAI;YAC7B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;YAC9B,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC;QACtB,MAAM,OAAO,GACX,OAAO,EAAE,OAAO;YAChB,QAAQ,MAAM,uBAAuB,SAAS,CAAC,CAAC,CAAC,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC7E,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAClE,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,gBAAgB;IACnD,YACE,MAAc,EACd,OAAwB,EACxB,IAA0B;QAE1B,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,QAAQ,MAAM,WAAW,CAAC;QAC9D,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IACnE,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,gBAAgB;IACvD,YACE,MAAc,EACd,OAAwB,EACxB,IAA0B;QAE1B,MAAM,WAAW,GACf,IAAI,EAAE,WAAW,YAAY,IAAI;YAC/B,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;YAChC,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC;QACxB,MAAM,OAAO,GACX,OAAO,EAAE,OAAO;YAChB,QAAQ,MAAM,eAAe,WAAW,CAAC,CAAC,CAAC,OAAO,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACzE,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IACvE,CAAC;CACF"}
|
|
@@ -31,6 +31,7 @@ export class TaskTracker {
|
|
|
31
31
|
return this.awaitStatusTerminal([
|
|
32
32
|
TaskStatus.SUCCEEDED,
|
|
33
33
|
TaskStatus.FAILED,
|
|
34
|
+
TaskStatus.CANCELED,
|
|
34
35
|
]);
|
|
35
36
|
}
|
|
36
37
|
attach(log, opts = { logProgress: true, logStatus: true, style: true }) {
|
|
@@ -235,13 +236,13 @@ export class TaskTracker {
|
|
|
235
236
|
getNextAction(status) {
|
|
236
237
|
switch (status) {
|
|
237
238
|
case TaskStatus.CANCELED:
|
|
238
|
-
return
|
|
239
|
+
return TaskStatus.CANCELED;
|
|
239
240
|
case TaskStatus.WAITING_RETRY:
|
|
240
|
-
return
|
|
241
|
+
return TaskStatus.WAITING_RETRY;
|
|
241
242
|
case TaskStatus.SCHEDULED:
|
|
242
|
-
return
|
|
243
|
+
return TaskStatus.SCHEDULED;
|
|
243
244
|
case TaskStatus.FAILED:
|
|
244
|
-
return
|
|
245
|
+
return TaskStatus.FAILED;
|
|
245
246
|
default:
|
|
246
247
|
return undefined;
|
|
247
248
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskTracker.js","sourceRoot":"","sources":["../../../src/tasks/TaskTracker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,mCAAgC;AACzD,OAAO,EAAE,KAAK,EAAoB,MAAM,gCAAgC,CAAC;AAEzE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,uBAAoB;AAOxD,OAAO,EAAE,UAAU,EAAE,qBAAkB;AAEvC,OAAO,EAAE,OAAO,EAAY,kCAA6B;AAIzD,OAAO,EACL,eAAe,EAEf,aAAa,
|
|
1
|
+
{"version":3,"file":"TaskTracker.js","sourceRoot":"","sources":["../../../src/tasks/TaskTracker.ts"],"names":[],"mappings":"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"}
|
package/lib/index.cjs
CHANGED
|
@@ -49,7 +49,7 @@ __exportStar(require("./persistence/index.cjs"), exports);
|
|
|
49
49
|
* @const VERSION
|
|
50
50
|
* @memberOf module:core
|
|
51
51
|
*/
|
|
52
|
-
exports.VERSION = "0.8.
|
|
52
|
+
exports.VERSION = "0.8.38";
|
|
53
53
|
/**
|
|
54
54
|
* @description Stores the current package version
|
|
55
55
|
* @summary A constant representing the version of the core package
|
package/lib/index.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export * from "./persistence";
|
|
|
22
22
|
* @const VERSION
|
|
23
23
|
* @memberOf module:core
|
|
24
24
|
*/
|
|
25
|
-
export declare const VERSION = "0.8.
|
|
25
|
+
export declare const VERSION = "0.8.38";
|
|
26
26
|
/**
|
|
27
27
|
* @description Stores the current package version
|
|
28
28
|
* @summary A constant representing the version of the core package
|
package/lib/tasks/TaskErrors.cjs
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TaskRescheduleError = exports.TaskCancelError = exports.TaskRetryError = exports.TaskFailError = exports.TaskControlError = void 0;
|
|
4
|
+
exports.isTaskError = isTaskError;
|
|
4
5
|
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
6
|
+
function isTaskError(error, ErrorClass) {
|
|
7
|
+
if (!(error instanceof Error))
|
|
8
|
+
return false;
|
|
9
|
+
if (!("nextAction" in error))
|
|
10
|
+
return false;
|
|
11
|
+
if (typeof error.nextAction !== "string")
|
|
12
|
+
return false;
|
|
13
|
+
if (ErrorClass && !(error instanceof ErrorClass))
|
|
14
|
+
return false;
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
5
17
|
class TaskControlError extends db_decorators_1.BaseError {
|
|
6
18
|
constructor(name, taskId, message, details, meta, code = 500) {
|
|
7
19
|
super(name, message, code);
|
|
@@ -1,5 +1,50 @@
|
|
|
1
1
|
import { BaseError } from "@decaf-ts/db-decorators";
|
|
2
2
|
import { TaskErrorModel } from "./models/TaskErrorModel";
|
|
3
|
+
import { TaskStatus } from "./constants";
|
|
4
|
+
/**
|
|
5
|
+
* Represents the next action to take after a task error.
|
|
6
|
+
* Used to identify the appropriate response to task failures.
|
|
7
|
+
*/
|
|
8
|
+
export type TaskNextAction = TaskStatus.CANCELED | TaskStatus.WAITING_RETRY | TaskStatus.SCHEDULED | TaskStatus.FAILED;
|
|
9
|
+
/**
|
|
10
|
+
* Additional properties added to errors from TaskTracker.resolve() and TaskTracker.wait()
|
|
11
|
+
*/
|
|
12
|
+
export type TaskErrorProps = {
|
|
13
|
+
/** The next action to take in response to this error */
|
|
14
|
+
nextAction: TaskNextAction;
|
|
15
|
+
/** The task ID this error relates to (optional, present on TaskControlError) */
|
|
16
|
+
taskId?: string;
|
|
17
|
+
/** Additional error details (optional, present on TaskControlError) */
|
|
18
|
+
details?: TaskErrorModel;
|
|
19
|
+
/** Additional metadata (optional, present on TaskControlError) */
|
|
20
|
+
meta?: Record<string, any>;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Generic type that preserves the original error type while adding task-specific properties.
|
|
24
|
+
* Use this to type errors from TaskTracker.resolve() and TaskTracker.wait().
|
|
25
|
+
*
|
|
26
|
+
* The original error is preserved (e.g., ValidationError stays ValidationError),
|
|
27
|
+
* with the nextAction property added to identify the appropriate response:
|
|
28
|
+
* - `TaskStatus.CANCELED`: Task was explicitly canceled
|
|
29
|
+
* - `TaskStatus.SCHEDULED`: Task was rescheduled
|
|
30
|
+
* - `TaskStatus.WAITING_RETRY`: Task is waiting for retry
|
|
31
|
+
* - `TaskStatus.FAILED`: Task has permanently failed
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* try {
|
|
36
|
+
* await tracker.resolve();
|
|
37
|
+
* } catch (error: unknown) {
|
|
38
|
+
* if (isTaskError<ValidationError>(error, ValidationError)) {
|
|
39
|
+
* // error is typed as TaskErrorFrom<ValidationError>
|
|
40
|
+
* console.log(error.nextAction); // TaskNextAction
|
|
41
|
+
* console.log(error.code); // ValidationError's code property
|
|
42
|
+
* }
|
|
43
|
+
* }
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export type TaskErrorFrom<E extends Error> = E & TaskErrorProps;
|
|
47
|
+
export declare function isTaskError<E extends Error = Error>(error: unknown, ErrorClass?: new (...args: any[]) => E): error is TaskErrorFrom<E>;
|
|
3
48
|
export declare class TaskControlError extends BaseError {
|
|
4
49
|
readonly taskId: string;
|
|
5
50
|
readonly details?: TaskErrorModel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskErrors.js","sourceRoot":"","sources":["../../src/tasks/TaskErrors.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"TaskErrors.js","sourceRoot":"","sources":["../../src/tasks/TaskErrors.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,6 +34,7 @@ class TaskTracker {
|
|
|
34
34
|
return this.awaitStatusTerminal([
|
|
35
35
|
constants_1.TaskStatus.SUCCEEDED,
|
|
36
36
|
constants_1.TaskStatus.FAILED,
|
|
37
|
+
constants_1.TaskStatus.CANCELED,
|
|
37
38
|
]);
|
|
38
39
|
}
|
|
39
40
|
attach(log, opts = { logProgress: true, logStatus: true, style: true }) {
|
|
@@ -238,13 +239,13 @@ class TaskTracker {
|
|
|
238
239
|
getNextAction(status) {
|
|
239
240
|
switch (status) {
|
|
240
241
|
case constants_1.TaskStatus.CANCELED:
|
|
241
|
-
return
|
|
242
|
+
return constants_1.TaskStatus.CANCELED;
|
|
242
243
|
case constants_1.TaskStatus.WAITING_RETRY:
|
|
243
|
-
return
|
|
244
|
+
return constants_1.TaskStatus.WAITING_RETRY;
|
|
244
245
|
case constants_1.TaskStatus.SCHEDULED:
|
|
245
|
-
return
|
|
246
|
+
return constants_1.TaskStatus.SCHEDULED;
|
|
246
247
|
case constants_1.TaskStatus.FAILED:
|
|
247
|
-
return
|
|
248
|
+
return constants_1.TaskStatus.FAILED;
|
|
248
249
|
default:
|
|
249
250
|
return undefined;
|
|
250
251
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskTracker.js","sourceRoot":"","sources":["../../src/tasks/TaskTracker.ts"],"names":[],"mappings":";;;AACA,gEAAyD;AACzD,yEAAyE;AAEzE,+CAAwD;AAOxD,2CAAuC;AAEvC,sDAAyD;AAIzD,
|
|
1
|
+
{"version":3,"file":"TaskTracker.js","sourceRoot":"","sources":["../../src/tasks/TaskTracker.ts"],"names":[],"mappings":"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"}
|