@decaf-ts/core 0.8.5 → 0.8.7

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.
Files changed (82) hide show
  1. package/README.md +1 -1
  2. package/dist/core.cjs +1 -1
  3. package/dist/core.cjs.map +1 -1
  4. package/dist/core.js +1 -1
  5. package/dist/core.js.map +1 -1
  6. package/lib/esm/index.d.ts +2 -1
  7. package/lib/esm/index.js +2 -1
  8. package/lib/esm/index.js.map +1 -1
  9. package/lib/esm/persistence/Adapter.d.ts +1 -1
  10. package/lib/esm/persistence/Adapter.js +4 -1
  11. package/lib/esm/persistence/Adapter.js.map +1 -1
  12. package/lib/esm/tasks/TaskEngine.d.ts +5 -3
  13. package/lib/esm/tasks/TaskEngine.js +82 -14
  14. package/lib/esm/tasks/TaskEngine.js.map +1 -1
  15. package/lib/esm/tasks/TaskService.d.ts +7 -7
  16. package/lib/esm/tasks/TaskService.js +10 -8
  17. package/lib/esm/tasks/TaskService.js.map +1 -1
  18. package/lib/esm/tasks/TaskTracker.d.ts +18 -6
  19. package/lib/esm/tasks/TaskTracker.js +98 -10
  20. package/lib/esm/tasks/TaskTracker.js.map +1 -1
  21. package/lib/esm/tasks/constants.js +1 -0
  22. package/lib/esm/tasks/constants.js.map +1 -1
  23. package/lib/esm/tasks/models/TaskErrorModel.d.ts +2 -3
  24. package/lib/esm/tasks/models/TaskErrorModel.js +2 -3
  25. package/lib/esm/tasks/models/TaskErrorModel.js.map +1 -1
  26. package/lib/esm/tasks/models/TaskEventModel.d.ts +2 -3
  27. package/lib/esm/tasks/models/TaskEventModel.js +3 -5
  28. package/lib/esm/tasks/models/TaskEventModel.js.map +1 -1
  29. package/lib/esm/tasks/models/TaskLogEntryModel.js +0 -1
  30. package/lib/esm/tasks/models/TaskLogEntryModel.js.map +1 -1
  31. package/lib/esm/tasks/models/TaskModel.d.ts +14 -3
  32. package/lib/esm/tasks/models/TaskModel.js +44 -8
  33. package/lib/esm/tasks/models/TaskModel.js.map +1 -1
  34. package/lib/esm/tasks/models/TaskStepResultModel.d.ts +2 -3
  35. package/lib/esm/tasks/models/TaskStepResultModel.js +2 -6
  36. package/lib/esm/tasks/models/TaskStepResultModel.js.map +1 -1
  37. package/lib/esm/tasks/models/TaskStepSpecModel.d.ts +2 -3
  38. package/lib/esm/tasks/models/TaskStepSpecModel.js +2 -6
  39. package/lib/esm/tasks/models/TaskStepSpecModel.js.map +1 -1
  40. package/lib/esm/tasks/types.d.ts +1 -0
  41. package/lib/index.cjs +2 -1
  42. package/lib/index.d.ts +2 -1
  43. package/lib/index.js.map +1 -1
  44. package/lib/persistence/Adapter.cjs +4 -1
  45. package/lib/persistence/Adapter.d.ts +1 -1
  46. package/lib/persistence/Adapter.js.map +1 -1
  47. package/lib/tasks/TaskEngine.cjs +82 -14
  48. package/lib/tasks/TaskEngine.d.ts +5 -3
  49. package/lib/tasks/TaskEngine.js.map +1 -1
  50. package/lib/tasks/TaskService.cjs +19 -17
  51. package/lib/tasks/TaskService.d.ts +7 -7
  52. package/lib/tasks/TaskService.js.map +1 -1
  53. package/lib/tasks/TaskTracker.cjs +98 -10
  54. package/lib/tasks/TaskTracker.d.ts +18 -6
  55. package/lib/tasks/TaskTracker.js.map +1 -1
  56. package/lib/tasks/constants.cjs +1 -0
  57. package/lib/tasks/constants.js.map +1 -1
  58. package/lib/tasks/models/TaskErrorModel.cjs +1 -2
  59. package/lib/tasks/models/TaskErrorModel.d.ts +2 -3
  60. package/lib/tasks/models/TaskErrorModel.js.map +1 -1
  61. package/lib/tasks/models/TaskEventModel.cjs +1 -3
  62. package/lib/tasks/models/TaskEventModel.d.ts +2 -3
  63. package/lib/tasks/models/TaskEventModel.js.map +1 -1
  64. package/lib/tasks/models/TaskLogEntryModel.cjs +0 -1
  65. package/lib/tasks/models/TaskLogEntryModel.js.map +1 -1
  66. package/lib/tasks/models/TaskModel.cjs +42 -6
  67. package/lib/tasks/models/TaskModel.d.ts +14 -3
  68. package/lib/tasks/models/TaskModel.js.map +1 -1
  69. package/lib/tasks/models/TaskStepResultModel.cjs +1 -5
  70. package/lib/tasks/models/TaskStepResultModel.d.ts +2 -3
  71. package/lib/tasks/models/TaskStepResultModel.js.map +1 -1
  72. package/lib/tasks/models/TaskStepSpecModel.cjs +1 -5
  73. package/lib/tasks/models/TaskStepSpecModel.d.ts +2 -3
  74. package/lib/tasks/models/TaskStepSpecModel.js.map +1 -1
  75. package/lib/tasks/types.d.ts +1 -0
  76. package/package.json +1 -1
  77. package/lib/esm/tasks/models/TaskBaseModel.d.ts +0 -14
  78. package/lib/esm/tasks/models/TaskBaseModel.js +0 -30
  79. package/lib/esm/tasks/models/TaskBaseModel.js.map +0 -1
  80. package/lib/tasks/models/TaskBaseModel.cjs +0 -34
  81. package/lib/tasks/models/TaskBaseModel.d.ts +0 -14
  82. package/lib/tasks/models/TaskBaseModel.js.map +0 -1
@@ -5,10 +5,12 @@ const TaskEventModel_1 = require("./models/TaskEventModel.cjs");
5
5
  const decorator_validation_1 = require("@decaf-ts/decorator-validation");
6
6
  const constants_1 = require("./constants.cjs");
7
7
  const logging_1 = require("./logging.cjs");
8
+ const index_1 = require("./../persistence/index.cjs");
8
9
  class TaskTracker {
9
10
  constructor(bus, task) {
10
11
  this.bus = bus;
11
12
  this.task = task;
13
+ this.resolved = false;
12
14
  this.unregistration = bus.observe(this, (table, operation, id,
13
15
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
14
16
  ...args) => {
@@ -19,10 +21,11 @@ class TaskTracker {
19
21
  // eslint-disable-next-line @typescript-eslint/no-this-alias
20
22
  const self = this;
21
23
  this.promise = new Promise((resolve, reject) => {
22
- self.onSuccess = resolve;
23
- self.onFail = reject;
24
+ self.resolveResult = resolve;
25
+ self.rejectResult = reject;
24
26
  });
25
27
  this.pipe(this.track.bind(this));
28
+ this.resolveTerminalState();
26
29
  }
27
30
  resolve() {
28
31
  return this.promise;
@@ -44,21 +47,106 @@ class TaskTracker {
44
47
  this.pipes[type].add(pipe);
45
48
  }
46
49
  succeed(result) {
47
- this.unregistration();
48
- this.onSuccess(result);
49
- this.pipes = undefined;
50
+ this.complete(result, true);
50
51
  }
51
52
  fail(error) {
53
+ this.complete(error, false);
54
+ }
55
+ cancel(evt) {
56
+ if (!evt.payload?.error)
57
+ return;
58
+ this.fail(evt.payload.error);
59
+ }
60
+ onSucceed(handler) {
61
+ return this.registerStatusHandler(constants_1.TaskStatus.SUCCEEDED, handler);
62
+ }
63
+ onFailure(handler) {
64
+ return this.registerStatusHandler(constants_1.TaskStatus.FAILED, handler);
65
+ }
66
+ onCancel(handler) {
67
+ return this.registerStatusHandler(constants_1.TaskStatus.CANCELED, handler);
68
+ }
69
+ complete(payload, success) {
70
+ if (this.resolved)
71
+ return;
72
+ this.resolved = true;
52
73
  this.unregistration();
53
- this.onFail(error);
54
74
  this.pipes = undefined;
75
+ if (success)
76
+ this.resolveResult(payload);
77
+ else
78
+ this.rejectResult(payload);
79
+ }
80
+ isTerminalStatus(status) {
81
+ return [
82
+ constants_1.TaskStatus.SUCCEEDED,
83
+ constants_1.TaskStatus.CANCELED,
84
+ constants_1.TaskStatus.FAILED,
85
+ ].includes(status);
55
86
  }
56
87
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
57
88
  async track(evt, ctx) {
58
- if (evt.payload.status === constants_1.TaskStatus.SUCCEEDED)
59
- this.succeed(evt.payload);
60
- if (evt.payload.status === constants_1.TaskStatus.FAILED)
61
- this.fail(evt.payload);
89
+ if (!evt.payload)
90
+ return;
91
+ this.task.status = evt.payload.status;
92
+ if (evt.payload.output !== undefined)
93
+ this.task.output = evt.payload.output;
94
+ if (evt.payload.error)
95
+ this.task.error = evt.payload.error;
96
+ if (evt.payload.status === constants_1.TaskStatus.SUCCEEDED) {
97
+ this.succeed(evt.payload.output);
98
+ }
99
+ if (evt.payload.status === constants_1.TaskStatus.FAILED) {
100
+ this.fail(evt.payload.error);
101
+ }
102
+ if (evt.payload.status === constants_1.TaskStatus.CANCELED)
103
+ this.cancel(evt);
104
+ }
105
+ registerStatusHandler(status, handler) {
106
+ const wrapped = async (evt, ctx) => {
107
+ if (evt.payload?.status !== status)
108
+ return;
109
+ await handler(evt, ctx);
110
+ };
111
+ this.pipe(wrapped, constants_1.TaskEventType.STATUS);
112
+ if (this.task.status === status) {
113
+ const terminalEvent = this.buildTerminalEvent(status);
114
+ void wrapped(terminalEvent, this.getTerminalContext());
115
+ }
116
+ return () => {
117
+ this.pipes?.[constants_1.TaskEventType.STATUS]?.delete(wrapped);
118
+ };
119
+ }
120
+ getTerminalContext() {
121
+ if (!this.terminalContext)
122
+ this.terminalContext = new index_1.Context();
123
+ return this.terminalContext;
124
+ }
125
+ buildTerminalEvent(status) {
126
+ const payload = { status };
127
+ if (status === constants_1.TaskStatus.SUCCEEDED) {
128
+ payload.output = this.task.output;
129
+ }
130
+ if ((status === constants_1.TaskStatus.FAILED || status === constants_1.TaskStatus.CANCELED) &&
131
+ this.task.error) {
132
+ payload.error = this.task.error;
133
+ }
134
+ return new TaskEventModel_1.TaskEventModel({
135
+ classification: constants_1.TaskEventType.STATUS,
136
+ taskId: this.task.id,
137
+ payload,
138
+ });
139
+ }
140
+ resolveTerminalState() {
141
+ if (!this.isTerminalStatus(this.task.status))
142
+ return;
143
+ if (this.task.status === constants_1.TaskStatus.SUCCEEDED) {
144
+ this.succeed(this.task.output);
145
+ return;
146
+ }
147
+ if (this.task.error) {
148
+ this.fail(this.task.error);
149
+ }
62
150
  }
63
151
  async refresh(evt, ctx) {
64
152
  if (!this.pipes)
@@ -1,27 +1,39 @@
1
1
  import { Observer } from "../interfaces/Observer";
2
2
  import { TaskEventModel } from "./models/TaskEventModel";
3
3
  import { Logger } from "@decaf-ts/logging";
4
- import { TaskEventType } from "./constants";
4
+ import { TaskEventType, TaskStatus } from "./constants";
5
5
  import { EventPipe, LogPipe, LogPipeOptions } from "./types";
6
6
  import { TaskModel } from "./models/TaskModel";
7
7
  import { Context } from "../persistence/index";
8
8
  import { TaskErrorModel } from "./models/TaskErrorModel";
9
9
  import { TaskEventBus } from "./TaskEventBus";
10
- export declare class TaskTracker<R = any> implements Observer<[TaskEventModel, Context]> {
10
+ export declare class TaskTracker<O = any> implements Observer<[TaskEventModel, Context]> {
11
11
  protected bus: TaskEventBus;
12
12
  private readonly task;
13
13
  protected unregistration: () => void;
14
- private onSuccess;
15
- private onFail;
14
+ private resolveResult;
15
+ private rejectResult;
16
16
  protected pipes?: Record<TaskEventType, Set<EventPipe>>;
17
+ private resolved;
17
18
  private readonly promise;
19
+ private terminalContext?;
18
20
  constructor(bus: TaskEventBus, task: TaskModel);
19
- resolve(): Promise<R>;
21
+ resolve(): Promise<O>;
20
22
  attach(log: Logger, opts?: LogPipeOptions): void;
21
23
  logs(pipe: LogPipe): void;
22
24
  protected pipe(pipe: EventPipe, type?: TaskEventType): void;
23
- protected succeed(result: any): void;
25
+ protected succeed(result: O): void;
24
26
  protected fail(error: TaskErrorModel): void;
27
+ protected cancel(evt: TaskEventModel): void;
28
+ onSucceed(handler: EventPipe): () => void;
29
+ onFailure(handler: EventPipe): () => void;
30
+ onCancel(handler: EventPipe): () => void;
31
+ private complete;
32
+ protected isTerminalStatus(status: TaskStatus): boolean;
25
33
  protected track(evt: TaskEventModel, ctx: Context): Promise<void>;
34
+ private registerStatusHandler;
35
+ private getTerminalContext;
36
+ private buildTerminalEvent;
37
+ private resolveTerminalState;
26
38
  refresh(evt: TaskEventModel, ctx: Context): Promise<void>;
27
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TaskTracker.js","sourceRoot":"","sources":["../../src/tasks/TaskTracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskTracker.js","sourceRoot":"","sources":["../../src/tasks/TaskTracker.ts"],"names":[],"mappings":"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"}
@@ -43,5 +43,6 @@ exports.DefaultTaskEngineConfig = {
43
43
  streamBufferSize: 5,
44
44
  maxLoggingBuffer: 300,
45
45
  loggingBufferTruncation: 20,
46
+ gracefulShutdownMsTimeout: 60 * 2 * 1000,
46
47
  };
47
48
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/tasks/constants.ts"],"names":[],"mappings":";;;AAEA,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,+BAAiB,CAAA;IACjB,qCAAuB,CAAA;IACvB,mCAAqB,CAAA;IACrB,6CAA+B,CAAA;AACjC,CAAC,EAPW,UAAU,0BAAV,UAAU,QAOrB;AAED,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,8CAA2B,CAAA;IAC3B,kCAAe,CAAA;AACjB,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,4BAAW,CAAA;IACX,sCAAqB,CAAA;IACrB,4BAAW,CAAA;AACb,CAAC,EALW,aAAa,6BAAb,aAAa,QAKxB;AAED,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,6BAAiB,CAAA;IACjB,mCAAuB,CAAA;AACzB,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB;AAEY,QAAA,QAAQ,GAAG,OAAO,CAAC;AAEnB,QAAA,uBAAuB,GAA0B;IAC5D,QAAQ,EAAE,gBAAgB;IAC1B,WAAW,EAAE,EAAE;IACf,OAAO,EAAE,KAAK;IACd,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,GAAG;IACf,UAAU,EAAE,GAAG;IACf,gBAAgB,EAAE,CAAC;IACnB,gBAAgB,EAAE,GAAG;IACrB,uBAAuB,EAAE,EAAE;CACH,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/tasks/constants.ts"],"names":[],"mappings":";;;AAEA,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,+BAAiB,CAAA;IACjB,qCAAuB,CAAA;IACvB,mCAAqB,CAAA;IACrB,6CAA+B,CAAA;AACjC,CAAC,EAPW,UAAU,0BAAV,UAAU,QAOrB;AAED,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,8CAA2B,CAAA;IAC3B,kCAAe,CAAA;AACjB,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,4BAAW,CAAA;IACX,sCAAqB,CAAA;IACrB,4BAAW,CAAA;AACb,CAAC,EALW,aAAa,6BAAb,aAAa,QAKxB;AAED,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,6BAAiB,CAAA;IACjB,mCAAuB,CAAA;AACzB,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB;AAEY,QAAA,QAAQ,GAAG,OAAO,CAAC;AAEnB,QAAA,uBAAuB,GAA0B;IAC5D,QAAQ,EAAE,gBAAgB;IAC1B,WAAW,EAAE,EAAE;IACf,OAAO,EAAE,KAAK;IACd,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,GAAG;IACf,UAAU,EAAE,GAAG;IACf,gBAAgB,EAAE,CAAC;IACnB,gBAAgB,EAAE,GAAG;IACrB,uBAAuB,EAAE,EAAE;IAC3B,yBAAyB,EAAE,EAAE,GAAG,CAAC,GAAG,IAAI;CAChB,CAAC"}
@@ -10,10 +10,9 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.TaskErrorModel = void 0;
13
- const TaskBaseModel_1 = require("./TaskBaseModel.cjs");
14
13
  const decorator_validation_1 = require("@decaf-ts/decorator-validation");
15
14
  const decoration_1 = require("@decaf-ts/decoration");
16
- let TaskErrorModel = class TaskErrorModel extends TaskBaseModel_1.TaskBaseModel {
15
+ let TaskErrorModel = class TaskErrorModel extends decorator_validation_1.Model {
17
16
  constructor(arg) {
18
17
  super(arg);
19
18
  }
@@ -1,6 +1,5 @@
1
- import { TaskBaseModel } from "./TaskBaseModel";
2
- import { type ModelArg } from "@decaf-ts/decorator-validation";
3
- export declare class TaskErrorModel extends TaskBaseModel {
1
+ import { Model, type ModelArg } from "@decaf-ts/decorator-validation";
2
+ export declare class TaskErrorModel extends Model {
4
3
  message: string;
5
4
  stack?: string;
6
5
  code?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TaskErrorModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskErrorModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAgD;AAChD,yEAAgF;AAChF,qDAAyD;AAGlD,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,6BAAa;IAc/C,YAAY,GAA8B;QACxC,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;CACF,CAAA;AAjBY,wCAAc;AAGzB;IAFC,IAAA,+BAAQ,GAAE;IACV,IAAA,wBAAW,EAAC,mBAAmB,CAAC;;+CAChB;AAGjB;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,iBAAiB,CAAC;;6CAChB;AAGf;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,gBAAgB,CAAC;;4CAChB;AAGd;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,mBAAmB,CAAC;;+CACnB;yBAZH,cAAc;IAD1B,IAAA,4BAAK,GAAE;;GACK,cAAc,CAiB1B"}
1
+ {"version":3,"file":"TaskErrorModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskErrorModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yEAKwC;AACxC,qDAAyD;AAGlD,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,4BAAK;IAcvC,YAAY,GAA8B;QACxC,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;CACF,CAAA;AAjBY,wCAAc;AAGzB;IAFC,IAAA,+BAAQ,GAAE;IACV,IAAA,wBAAW,EAAC,mBAAmB,CAAC;;+CAChB;AAGjB;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,iBAAiB,CAAC;;6CAChB;AAGf;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,gBAAgB,CAAC;;4CAChB;AAGd;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,mBAAmB,CAAC;;+CACnB;yBAZH,cAAc;IAD1B,IAAA,4BAAK,GAAE;;GACK,cAAc,CAiB1B"}
@@ -17,8 +17,7 @@ const decoration_1 = require("@decaf-ts/decoration");
17
17
  const db_decorators_1 = require("@decaf-ts/db-decorators");
18
18
  const constants_1 = require("./../constants.cjs");
19
19
  const decorators_3 = require("./../../persistence/decorators.cjs");
20
- const BaseModel_1 = require("./../../model/BaseModel.cjs");
21
- let TaskEventModel = class TaskEventModel extends BaseModel_1.BaseModel {
20
+ let TaskEventModel = class TaskEventModel extends decorator_validation_1.Model {
22
21
  constructor(arg) {
23
22
  super(arg);
24
23
  this.ts = new Date();
@@ -56,7 +55,6 @@ __decorate([
56
55
  __decorate([
57
56
  (0, decoration_1.prop)(),
58
57
  (0, db_decorators_1.readonly)(),
59
- (0, db_decorators_1.serialize)(),
60
58
  __metadata("design:type", Object)
61
59
  ], TaskEventModel.prototype, "payload", void 0);
62
60
  exports.TaskEventModel = TaskEventModel = __decorate([
@@ -1,7 +1,6 @@
1
- import { type ModelArg } from "@decaf-ts/decorator-validation";
1
+ import { Model, type ModelArg } from "@decaf-ts/decorator-validation";
2
2
  import { TaskEventType } from "../constants";
3
- import { BaseModel } from "../../model/BaseModel";
4
- export declare class TaskEventModel extends BaseModel {
3
+ export declare class TaskEventModel extends Model {
5
4
  id: string;
6
5
  uuid: string;
7
6
  taskId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TaskEventModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskEventModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gEAA+C;AAC/C,yEAMwC;AACxC,6DAA+C;AAC/C,qDAA4C;AAC5C,2DAKiC;AACjC,kDAA6C;AAC7C,mEAAoD;AACpD,2DAAkD;AAI3C,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,qBAAS;IA6B3C,YAAY,GAA8B;QACxC,KAAK,CAAC,GAAG,CAAC,CAAC;QAbb,OAAE,GAAS,IAAI,IAAI,EAAE,CAAC;IActB,CAAC;CACF,CAAA;AAhCY,wCAAc;AAGzB;IAFC,IAAA,wBAAQ,EAAC,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC;IACnD,IAAA,eAAE,GAAE;;0CACO;AAMZ;IAJC,IAAA,wBAAQ,GAAE;IACV,IAAA,+BAAQ,GAAE;IACV,IAAA,yBAAS,GAAE;IACX,IAAA,iBAAI,EAAC,KAAK,CAAC;;4CACE;AAId;IAFC,IAAA,wBAAQ,GAAE;IACV,IAAA,+BAAQ,GAAE;;8CACK;AAIhB;IAFC,IAAA,2BAAI,GAAE;IACN,IAAA,+BAAQ,GAAE;8BACP,IAAI;0CAAc;AAKtB;IAHC,IAAA,wBAAQ,GAAE;IACV,IAAA,+BAAQ,GAAE;IACV,IAAA,6BAAM,EAAC,yBAAa,CAAC;;sDACS;AAK/B;IAHC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAQ,GAAE;IACV,IAAA,yBAAS,GAAE;;+CACE;yBA3BH,cAAc;IAF1B,IAAA,kBAAK,EAAC,YAAY,CAAC;IACnB,IAAA,4BAAK,GAAE;;GACK,cAAc,CAgC1B"}
1
+ {"version":3,"file":"TaskEventModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskEventModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gEAA+C;AAC/C,yEAOwC;AACxC,6DAA+C;AAC/C,qDAA4C;AAC5C,2DAAwE;AACxE,kDAA6C;AAC7C,mEAAoD;AAI7C,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,4BAAK;IA4BvC,YAAY,GAA8B;QACxC,KAAK,CAAC,GAAG,CAAC,CAAC;QAZb,OAAE,GAAS,IAAI,IAAI,EAAE,CAAC;IAatB,CAAC;CACF,CAAA;AA/BY,wCAAc;AAGzB;IAFC,IAAA,wBAAQ,EAAC,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC;IACnD,IAAA,eAAE,GAAE;;0CACO;AAMZ;IAJC,IAAA,wBAAQ,GAAE;IACV,IAAA,+BAAQ,GAAE;IACV,IAAA,yBAAS,GAAE;IACX,IAAA,iBAAI,EAAC,KAAK,CAAC;;4CACE;AAId;IAFC,IAAA,wBAAQ,GAAE;IACV,IAAA,+BAAQ,GAAE;;8CACK;AAIhB;IAFC,IAAA,2BAAI,GAAE;IACN,IAAA,+BAAQ,GAAE;8BACP,IAAI;0CAAc;AAKtB;IAHC,IAAA,wBAAQ,GAAE;IACV,IAAA,+BAAQ,GAAE;IACV,IAAA,6BAAM,EAAC,yBAAa,CAAC;;sDACS;AAI/B;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAQ,GAAE;;+CACG;yBA1BH,cAAc;IAF1B,IAAA,kBAAK,EAAC,YAAY,CAAC;IACnB,IAAA,4BAAK,GAAE;;GACK,cAAc,CA+B1B"}
@@ -27,7 +27,6 @@ __decorate([
27
27
  ], TaskLogEntryModel.prototype, "ts", void 0);
28
28
  __decorate([
29
29
  (0, decorator_validation_1.required)(),
30
- (0, decoration_1.prop)(),
31
30
  (0, decorator_validation_1.option)(logging_1.LogLevel),
32
31
  __metadata("design:type", String)
33
32
  ], TaskLogEntryModel.prototype, "level", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"TaskLogEntryModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskLogEntryModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA6C;AAC7C,yEAOwC;AACxC,qDAA4C;AAGrC,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,4BAAK;IAiB1C,YAAY,GAAiC;QAC3C,KAAK,CAAC,GAAG,CAAC,CAAC;QAfb,OAAE,GAAS,IAAI,IAAI,EAAE,CAAC;IAgBtB,CAAC;CACF,CAAA;AApBY,8CAAiB;AAG5B;IAFC,IAAA,2BAAI,GAAE;IACN,IAAA,+BAAQ,GAAE;8BACP,IAAI;6CAAc;AAKtB;IAHC,IAAA,+BAAQ,GAAE;IACV,IAAA,iBAAI,GAAE;IACN,IAAA,6BAAM,EAAC,kBAAQ,CAAC;;gDACA;AAIjB;IAFC,IAAA,+BAAQ,GAAE;IACV,IAAA,iBAAI,GAAE;;8CACM;AAGb;IADC,IAAA,iBAAI,GAAE;;+CACI;4BAfA,iBAAiB;IAD7B,IAAA,4BAAK,GAAE;;GACK,iBAAiB,CAoB7B"}
1
+ {"version":3,"file":"TaskLogEntryModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskLogEntryModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA6C;AAC7C,yEAOwC;AACxC,qDAA4C;AAGrC,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,4BAAK;IAgB1C,YAAY,GAAiC;QAC3C,KAAK,CAAC,GAAG,CAAC,CAAC;QAdb,OAAE,GAAS,IAAI,IAAI,EAAE,CAAC;IAetB,CAAC;CACF,CAAA;AAnBY,8CAAiB;AAG5B;IAFC,IAAA,2BAAI,GAAE;IACN,IAAA,+BAAQ,GAAE;8BACP,IAAI;6CAAc;AAItB;IAFC,IAAA,+BAAQ,GAAE;IACV,IAAA,6BAAM,EAAC,kBAAQ,CAAC;;gDACA;AAIjB;IAFC,IAAA,+BAAQ,GAAE;IACV,IAAA,iBAAI,GAAE;;8CACM;AAGb;IADC,IAAA,iBAAI,GAAE;;+CACI;4BAdA,iBAAiB;IAD7B,IAAA,4BAAK,GAAE;;GACK,iBAAiB,CAmB7B"}
@@ -10,7 +10,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.TaskModel = void 0;
13
- const TaskBaseModel_1 = require("./TaskBaseModel.cjs");
14
13
  const decorator_validation_1 = require("@decaf-ts/decorator-validation");
15
14
  const decorators_1 = require("./../../identity/decorators.cjs");
16
15
  const constants_1 = require("./../constants.cjs");
@@ -19,61 +18,69 @@ const TaskBackoffModel_1 = require("./TaskBackoffModel.cjs");
19
18
  const decoration_1 = require("@decaf-ts/decoration");
20
19
  const db_decorators_1 = require("@decaf-ts/db-decorators");
21
20
  const decorators_2 = require("./../../model/decorators.cjs");
22
- let TaskModel = class TaskModel extends TaskBaseModel_1.TaskBaseModel {
21
+ let TaskModel = class TaskModel extends decorator_validation_1.Model {
23
22
  constructor(arg) {
24
23
  super(arg);
25
24
  // required routing / identity
26
25
  this.atomicity = constants_1.TaskType.ATOMIC; // atomic handler type OR "composite"
27
26
  // execution
28
27
  this.status = constants_1.TaskStatus.PENDING;
29
- // logging
30
28
  this.logTail = [];
31
29
  }
32
30
  };
33
31
  exports.TaskModel = TaskModel;
34
32
  __decorate([
35
33
  (0, decorators_1.pk)({ type: "uuid" }),
34
+ (0, decoration_1.description)("the task id"),
36
35
  __metadata("design:type", String)
37
36
  ], TaskModel.prototype, "id", void 0);
38
37
  __decorate([
39
38
  (0, decorator_validation_1.required)(),
40
39
  (0, decorator_validation_1.type)(String),
41
40
  (0, decorator_validation_1.option)(constants_1.TaskType),
41
+ (0, decoration_1.description)("defines a single or composite task"),
42
42
  __metadata("design:type", String)
43
43
  ], TaskModel.prototype, "atomicity", void 0);
44
44
  __decorate([
45
45
  (0, decorator_validation_1.required)(),
46
+ (0, decoration_1.description)("Holds task classification - must match @task()"),
46
47
  __metadata("design:type", String)
47
48
  ], TaskModel.prototype, "classification", void 0);
48
49
  __decorate([
49
50
  (0, decorator_validation_1.required)(),
50
51
  (0, decorator_validation_1.type)(String),
51
52
  (0, decorator_validation_1.option)(constants_1.TaskStatus),
53
+ (0, decoration_1.description)("Holds the task current status"),
52
54
  __metadata("design:type", String)
53
55
  ], TaskModel.prototype, "status", void 0);
54
56
  __decorate([
55
57
  (0, decoration_1.prop)(),
56
58
  (0, db_decorators_1.serialize)(),
59
+ (0, decoration_1.description)("Holds task input"),
57
60
  __metadata("design:type", Object)
58
61
  ], TaskModel.prototype, "input", void 0);
59
62
  __decorate([
60
63
  (0, decoration_1.prop)(),
61
64
  (0, db_decorators_1.serialize)(),
65
+ (0, decoration_1.description)("Holds the task output when successfully completed"),
62
66
  __metadata("design:type", Object)
63
67
  ], TaskModel.prototype, "output", void 0);
64
68
  __decorate([
65
69
  (0, decoration_1.prop)(),
66
70
  (0, db_decorators_1.serialize)(),
71
+ (0, decoration_1.description)("Holds the error for failed tasks"),
67
72
  __metadata("design:type", TaskErrorModel_1.TaskErrorModel)
68
73
  ], TaskModel.prototype, "error", void 0);
69
74
  __decorate([
70
- (0, decorator_validation_1.min)(0),
71
75
  (0, decorator_validation_1.required)(),
76
+ (0, decorator_validation_1.min)(0),
77
+ (0, decoration_1.description)("Holds the current attempt"),
72
78
  __metadata("design:type", Number)
73
79
  ], TaskModel.prototype, "attempt", void 0);
74
80
  __decorate([
75
81
  (0, decorator_validation_1.min)(1),
76
82
  (0, decorator_validation_1.required)(),
83
+ (0, decoration_1.description)("max attempts for the task"),
77
84
  __metadata("design:type", Number)
78
85
  ], TaskModel.prototype, "maxAttempts", void 0);
79
86
  __decorate([
@@ -100,24 +107,53 @@ __decorate([
100
107
  __decorate([
101
108
  (0, decoration_1.prop)(),
102
109
  (0, db_decorators_1.serialize)(),
110
+ (0, decoration_1.description)("Holds the various steps definition and inputs - only for type === 'composite'"),
103
111
  __metadata("design:type", Array)
104
112
  ], TaskModel.prototype, "steps", void 0);
105
113
  __decorate([
106
114
  (0, decorator_validation_1.min)(0),
107
115
  (0, decoration_1.prop)(),
116
+ (0, decoration_1.description)("Holds the current step - only for type === 'composite'"),
108
117
  __metadata("design:type", Number)
109
118
  ], TaskModel.prototype, "currentStep", void 0);
110
119
  __decorate([
111
- (0, db_decorators_1.serialize)(),
112
120
  (0, decoration_1.prop)(),
121
+ (0, db_decorators_1.serialize)(),
122
+ (0, decoration_1.description)("Holds the step results - only for type === 'composite'"),
113
123
  __metadata("design:type", Array)
114
124
  ], TaskModel.prototype, "stepResults", void 0);
115
125
  __decorate([
116
- (0, db_decorators_1.serialize)(),
117
126
  (0, decoration_1.prop)(),
127
+ (0, db_decorators_1.serialize)(),
128
+ (0, decoration_1.description)("Holds the task log entries"),
118
129
  __metadata("design:type", Array)
119
130
  ], TaskModel.prototype, "logTail", void 0);
131
+ __decorate([
132
+ (0, decorators_2.column)(),
133
+ (0, decorators_2.createdAt)(),
134
+ (0, decoration_1.description)("timestamp of creation"),
135
+ __metadata("design:type", Date)
136
+ ], TaskModel.prototype, "createdAt", void 0);
137
+ __decorate([
138
+ (0, decorators_2.column)(),
139
+ (0, decorators_2.updatedAt)(),
140
+ (0, decoration_1.description)("timestamp of last update"),
141
+ __metadata("design:type", Date)
142
+ ], TaskModel.prototype, "updatedAt", void 0);
143
+ __decorate([
144
+ (0, decorators_2.column)(),
145
+ (0, decorators_2.createdBy)(),
146
+ (0, decoration_1.description)("Holds the creator of the task"),
147
+ __metadata("design:type", String)
148
+ ], TaskModel.prototype, "createdBy", void 0);
149
+ __decorate([
150
+ (0, decorators_2.column)(),
151
+ (0, decorators_2.updatedBy)(),
152
+ (0, decoration_1.description)("Holds the creator of the task"),
153
+ __metadata("design:type", String)
154
+ ], TaskModel.prototype, "updatedBy", void 0);
120
155
  exports.TaskModel = TaskModel = __decorate([
156
+ (0, decoration_1.description)("Holds the current step when applicable"),
121
157
  (0, decorators_2.table)("tasks"),
122
158
  (0, decorator_validation_1.model)(),
123
159
  __metadata("design:paramtypes", [Object])
@@ -1,12 +1,11 @@
1
- import { TaskBaseModel } from "./TaskBaseModel";
2
- import { type ModelArg } from "@decaf-ts/decorator-validation";
1
+ import { Model, type ModelArg } from "@decaf-ts/decorator-validation";
3
2
  import { TaskStatus, TaskType } from "../constants";
4
3
  import { TaskErrorModel } from "./TaskErrorModel";
5
4
  import { TaskBackoffModel } from "./TaskBackoffModel";
6
5
  import { TaskStepSpecModel } from "./TaskStepSpecModel";
7
6
  import { TaskStepResultModel } from "./TaskStepResultModel";
8
7
  import { TaskLogEntryModel } from "./TaskLogEntryModel";
9
- export declare class TaskModel<INPUT = any, OUTPUT = any> extends TaskBaseModel {
8
+ export declare class TaskModel<INPUT = any, OUTPUT = any> extends Model {
10
9
  id: string;
11
10
  atomicity: TaskType;
12
11
  classification: string;
@@ -24,5 +23,17 @@ export declare class TaskModel<INPUT = any, OUTPUT = any> extends TaskBaseModel
24
23
  currentStep?: number;
25
24
  stepResults?: TaskStepResultModel[];
26
25
  logTail?: TaskLogEntryModel[];
26
+ /**
27
+ * @description Creation timestamp for the model
28
+ * @summary Automatically set to the current date and time when the model is created
29
+ */
30
+ createdAt: Date;
31
+ /**
32
+ * @description Last update timestamp for the model
33
+ * @summary Automatically updated to the current date and time whenever the model is modified
34
+ */
35
+ updatedAt: Date;
36
+ createdBy: string;
37
+ updatedBy: string;
27
38
  constructor(arg?: ModelArg<TaskModel>);
28
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TaskModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAgD;AAChD,yEAQwC;AACxC,gEAA+C;AAC/C,kDAAoD;AACpD,yDAAkD;AAClD,6DAAsD;AAGtD,qDAAyD;AACzD,2DAAoD;AACpD,6DAA+C;AAKxC,IAAM,SAAS,GAAf,MAAM,SAAqC,SAAQ,6BAAa;IA6ErE,YAAY,GAAyB;QACnC,KAAK,CAAC,GAAG,CAAC,CAAC;QA1Eb,8BAA8B;QAI9B,cAAS,GAAa,oBAAQ,CAAC,MAAM,CAAC,CAAC,qCAAqC;QAK5E,YAAY;QAIZ,WAAM,GAAe,sBAAU,CAAC,OAAO,CAAC;QAsDxC,UAAU;QAIV,YAAO,GAAyB,EAAE,CAAC;IAInC,CAAC;CACF,CAAA;AAhFY,8BAAS;AAEpB;IADC,IAAA,eAAE,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qCACT;AAMZ;IAHC,IAAA,+BAAQ,GAAE;IACV,IAAA,2BAAI,EAAC,MAAM,CAAC;IACZ,IAAA,6BAAM,EAAC,oBAAQ,CAAC;;4CACqB;AAGtC;IADC,IAAA,+BAAQ,GAAE;;iDACa;AAMxB;IAHC,IAAA,+BAAQ,GAAE;IACV,IAAA,2BAAI,EAAC,MAAM,CAAC;IACZ,IAAA,6BAAM,EAAC,sBAAU,CAAC;;yCACqB;AAIxC;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,yBAAS,GAAE;;wCACE;AAId;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,yBAAS,GAAE;;yCACI;AAIhB;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,yBAAS,GAAE;8BACJ,+BAAc;wCAAC;AAKvB;IAFC,IAAA,0BAAG,EAAC,CAAC,CAAC;IACN,IAAA,+BAAQ,GAAE;;0CACM;AAIjB;IAFC,IAAA,0BAAG,EAAC,CAAC,CAAC;IACN,IAAA,+BAAQ,GAAE;;8CACU;AAKrB;IAHC,IAAA,+BAAQ,GAAE;IACV,IAAA,yBAAS,GAAE;IACX,IAAA,wBAAW,EAAC,uBAAuB,CAAC;8BAC3B,mCAAgB;0CAAC;AAI3B;IAFC,IAAA,2BAAI,GAAE;IACN,IAAA,wBAAW,EAAC,0BAA0B,CAAC;8BAC5B,IAAI;4CAAC;AAKjB;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,6BAA6B,CAAC;;6CACvB;AAIpB;IAFC,IAAA,2BAAI,GAAE;IACN,IAAA,wBAAW,EAAC,iCAAiC,CAAC;8BACjC,IAAI;8CAAC;AAKnB;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,yBAAS,GAAE;;wCACgB;AAI5B;IAFC,IAAA,0BAAG,EAAC,CAAC,CAAC;IACN,IAAA,iBAAI,GAAE;;8CACc;AAIrB;IAFC,IAAA,yBAAS,GAAE;IACX,IAAA,iBAAI,GAAE;;8CAC6B;AAMpC;IAFC,IAAA,yBAAS,GAAE;IACX,IAAA,iBAAI,GAAE;;0CAC4B;oBA3ExB,SAAS;IAFrB,IAAA,kBAAK,EAAC,OAAO,CAAC;IACd,IAAA,4BAAK,GAAE;;GACK,SAAS,CAgFrB"}
1
+ {"version":3,"file":"TaskModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskModel.ts"],"names":[],"mappings":"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"}
@@ -13,10 +13,8 @@ exports.TaskStepResultModel = void 0;
13
13
  const decorator_validation_1 = require("@decaf-ts/decorator-validation");
14
14
  const constants_1 = require("./../constants.cjs");
15
15
  const TaskErrorModel_1 = require("./TaskErrorModel.cjs");
16
- const TaskBaseModel_1 = require("./TaskBaseModel.cjs");
17
- const db_decorators_1 = require("@decaf-ts/db-decorators");
18
16
  const decoration_1 = require("@decaf-ts/decoration");
19
- let TaskStepResultModel = class TaskStepResultModel extends TaskBaseModel_1.TaskBaseModel {
17
+ let TaskStepResultModel = class TaskStepResultModel extends decorator_validation_1.Model {
20
18
  constructor(arg) {
21
19
  super(arg);
22
20
  }
@@ -24,9 +22,7 @@ let TaskStepResultModel = class TaskStepResultModel extends TaskBaseModel_1.Task
24
22
  exports.TaskStepResultModel = TaskStepResultModel;
25
23
  __decorate([
26
24
  (0, decorator_validation_1.required)(),
27
- (0, decoration_1.prop)(),
28
25
  (0, decoration_1.description)("The status of a step"),
29
- (0, db_decorators_1.serialize)(),
30
26
  __metadata("design:type", String)
31
27
  ], TaskStepResultModel.prototype, "status", void 0);
32
28
  __decorate([
@@ -1,8 +1,7 @@
1
- import { type ModelArg } from "@decaf-ts/decorator-validation";
1
+ import { Model, type ModelArg } from "@decaf-ts/decorator-validation";
2
2
  import { TaskStatus } from "../constants";
3
3
  import { TaskErrorModel } from "./TaskErrorModel";
4
- import { TaskBaseModel } from "./TaskBaseModel";
5
- export declare class TaskStepResultModel extends TaskBaseModel {
4
+ export declare class TaskStepResultModel extends Model {
6
5
  status: TaskStatus;
7
6
  output?: any;
8
7
  error?: TaskErrorModel;
@@ -1 +1 @@
1
- {"version":3,"file":"TaskStepResultModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskStepResultModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yEAAgF;AAChF,kDAA0C;AAC1C,yDAAkD;AAClD,uDAAgD;AAChD,2DAAoD;AACpD,qDAAyD;AAGlD,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,6BAAa;IAepD,YAAY,GAAmC;QAC7C,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;CACF,CAAA;AAlBY,kDAAmB;AAK9B;IAJC,IAAA,+BAAQ,GAAE;IACV,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,sBAAsB,CAAC;IACnC,IAAA,yBAAS,GAAE;;mDACQ;AAIpB;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,iCAAiC,CAAC;;mDAClC;AAIb;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,4BAA4B,CAAC;8BAClC,+BAAc;kDAAC;8BAbZ,mBAAmB;IAD/B,IAAA,4BAAK,GAAE;;GACK,mBAAmB,CAkB/B"}
1
+ {"version":3,"file":"TaskStepResultModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskStepResultModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yEAKwC;AACxC,kDAA0C;AAC1C,yDAAkD;AAClD,qDAAyD;AAGlD,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,4BAAK;IAa5C,YAAY,GAAmC;QAC7C,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;CACF,CAAA;AAhBY,kDAAmB;AAG9B;IAFC,IAAA,+BAAQ,GAAE;IACV,IAAA,wBAAW,EAAC,sBAAsB,CAAC;;mDAChB;AAIpB;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,iCAAiC,CAAC;;mDAClC;AAIb;IAFC,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,4BAA4B,CAAC;8BAClC,+BAAc;kDAAC;8BAXZ,mBAAmB;IAD/B,IAAA,4BAAK,GAAE;;GACK,mBAAmB,CAgB/B"}
@@ -11,10 +11,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.TaskStepSpecModel = void 0;
13
13
  const decorator_validation_1 = require("@decaf-ts/decorator-validation");
14
- const TaskBaseModel_1 = require("./TaskBaseModel.cjs");
15
14
  const decoration_1 = require("@decaf-ts/decoration");
16
- const db_decorators_1 = require("@decaf-ts/db-decorators");
17
- let TaskStepSpecModel = class TaskStepSpecModel extends TaskBaseModel_1.TaskBaseModel {
15
+ let TaskStepSpecModel = class TaskStepSpecModel extends decorator_validation_1.Model {
18
16
  constructor(arg) {
19
17
  super(arg);
20
18
  }
@@ -24,13 +22,11 @@ __decorate([
24
22
  (0, decorator_validation_1.required)(),
25
23
  (0, decoration_1.prop)(),
26
24
  (0, decoration_1.description)("task handler type"),
27
- (0, db_decorators_1.serialize)(),
28
25
  __metadata("design:type", String)
29
26
  ], TaskStepSpecModel.prototype, "classification", void 0);
30
27
  __decorate([
31
28
  (0, decoration_1.description)("optional task step input"),
32
29
  (0, decoration_1.prop)(),
33
- (0, db_decorators_1.serialize)(),
34
30
  __metadata("design:type", Object)
35
31
  ], TaskStepSpecModel.prototype, "input", void 0);
36
32
  exports.TaskStepSpecModel = TaskStepSpecModel = __decorate([
@@ -1,6 +1,5 @@
1
- import { type ModelArg } from "@decaf-ts/decorator-validation";
2
- import { TaskBaseModel } from "./TaskBaseModel";
3
- export declare class TaskStepSpecModel extends TaskBaseModel {
1
+ import { Model, type ModelArg } from "@decaf-ts/decorator-validation";
2
+ export declare class TaskStepSpecModel extends Model {
4
3
  classification: string;
5
4
  input?: any;
6
5
  constructor(arg?: ModelArg<TaskStepSpecModel>);
@@ -1 +1 @@
1
- {"version":3,"file":"TaskStepSpecModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskStepSpecModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yEAAgF;AAChF,uDAAgD;AAChD,qDAAyD;AACzD,2DAAoD;AAG7C,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,6BAAa;IAYlD,YAAY,GAAiC;QAC3C,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;CACF,CAAA;AAfY,8CAAiB;AAK5B;IAJC,IAAA,+BAAQ,GAAE;IACV,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,mBAAmB,CAAC;IAChC,IAAA,yBAAS,GAAE;;yDACY;AAKxB;IAHC,IAAA,wBAAW,EAAC,0BAA0B,CAAC;IACvC,IAAA,iBAAI,GAAE;IACN,IAAA,yBAAS,GAAE;;gDACA;4BAVD,iBAAiB;IAD7B,IAAA,4BAAK,GAAE;;GACK,iBAAiB,CAe7B"}
1
+ {"version":3,"file":"TaskStepSpecModel.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskStepSpecModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yEAKwC;AACxC,qDAAyD;AAGlD,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,4BAAK;IAU1C,YAAY,GAAiC;QAC3C,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;CACF,CAAA;AAbY,8CAAiB;AAI5B;IAHC,IAAA,+BAAQ,GAAE;IACV,IAAA,iBAAI,GAAE;IACN,IAAA,wBAAW,EAAC,mBAAmB,CAAC;;yDACT;AAIxB;IAFC,IAAA,wBAAW,EAAC,0BAA0B,CAAC;IACvC,IAAA,iBAAI,GAAE;;gDACK;4BARD,iBAAiB;IAD7B,IAAA,4BAAK,GAAE;;GACK,iBAAiB,CAa7B"}
@@ -40,6 +40,7 @@ export type TaskEngineConfig<A extends Adapter<any, any, any, any>> = {
40
40
  streamBufferSize: number;
41
41
  maxLoggingBuffer: number;
42
42
  loggingBufferTruncation: number;
43
+ gracefulShutdownMsTimeout: number;
43
44
  };
44
45
  export type TaskProgressPayload = {
45
46
  status: TaskStatus;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decaf-ts/core",
3
- "version": "0.8.5",
3
+ "version": "0.8.7",
4
4
  "description": "Core persistence module for the decaf framework",
5
5
  "type": "module",
6
6
  "exports": {
@@ -1,14 +0,0 @@
1
- import { Model, type ModelArg } from "@decaf-ts/decorator-validation";
2
- export declare abstract class TaskBaseModel extends Model {
3
- /**
4
- * @description Creation timestamp for the model
5
- * @summary Automatically set to the current date and time when the model is created
6
- */
7
- createdAt: Date;
8
- /**
9
- * @description Last update timestamp for the model
10
- * @summary Automatically updated to the current date and time whenever the model is modified
11
- */
12
- updatedAt: Date;
13
- protected constructor(arg?: ModelArg<TaskBaseModel>);
14
- }