nestjs-serverless-workflow 0.0.7 → 0.0.8

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 (97) hide show
  1. package/README.md +55 -32
  2. package/dist/adapter/durable-lambda.adapter.d.ts +55 -0
  3. package/dist/adapter/durable-lambda.adapter.d.ts.map +1 -0
  4. package/dist/adapter/durable-lambda.adapter.js +71 -0
  5. package/dist/adapter/durable-lambda.adapter.js.map +1 -0
  6. package/dist/adapter/index.d.ts +1 -1
  7. package/dist/adapter/index.d.ts.map +1 -1
  8. package/dist/adapter/index.js +1 -1
  9. package/dist/adapter/index.js.map +1 -1
  10. package/dist/core/decorators/default.decorator.js +1 -1
  11. package/dist/core/decorators/default.decorator.js.map +1 -1
  12. package/dist/core/decorators/event.decorator.d.ts +0 -2
  13. package/dist/core/decorators/event.decorator.d.ts.map +1 -1
  14. package/dist/core/decorators/event.decorator.js +0 -9
  15. package/dist/core/decorators/event.decorator.js.map +1 -1
  16. package/dist/core/decorators/params.decorator.d.ts.map +1 -1
  17. package/dist/core/decorators/params.decorator.js.map +1 -1
  18. package/dist/core/decorators/with-retry.decorator.d.ts +1 -1
  19. package/dist/core/decorators/with-retry.decorator.d.ts.map +1 -1
  20. package/dist/core/decorators/with-retry.decorator.js +0 -1
  21. package/dist/core/decorators/with-retry.decorator.js.map +1 -1
  22. package/dist/core/decorators/workflow.decorator.d.ts +1 -1
  23. package/dist/core/decorators/workflow.decorator.d.ts.map +1 -1
  24. package/dist/core/decorators/workflow.decorator.js +1 -2
  25. package/dist/core/decorators/workflow.decorator.js.map +1 -1
  26. package/dist/core/providers/index.d.ts +1 -1
  27. package/dist/core/providers/index.d.ts.map +1 -1
  28. package/dist/core/providers/index.js +1 -1
  29. package/dist/core/providers/index.js.map +1 -1
  30. package/dist/core/providers/orchestrator.service.d.ts +21 -0
  31. package/dist/core/providers/orchestrator.service.d.ts.map +1 -0
  32. package/dist/core/providers/orchestrator.service.js +156 -0
  33. package/dist/core/providers/orchestrator.service.js.map +1 -0
  34. package/dist/core/providers/router.factory.d.ts +2 -2
  35. package/dist/core/providers/router.factory.d.ts.map +1 -1
  36. package/dist/core/providers/router.factory.js +1 -1
  37. package/dist/core/providers/router.factory.js.map +1 -1
  38. package/dist/core/providers/router.service.d.ts +8 -3
  39. package/dist/core/providers/router.service.d.ts.map +1 -1
  40. package/dist/core/providers/router.service.js +29 -23
  41. package/dist/core/providers/router.service.js.map +1 -1
  42. package/dist/core/types/index.d.ts +3 -2
  43. package/dist/core/types/index.d.ts.map +1 -1
  44. package/dist/core/types/index.js +3 -4
  45. package/dist/core/types/index.js.map +1 -1
  46. package/dist/core/types/transit-result.type.d.ts +15 -0
  47. package/dist/core/types/transit-result.type.d.ts.map +1 -0
  48. package/dist/core/types/transit-result.type.js +2 -0
  49. package/dist/core/types/transit-result.type.js.map +1 -0
  50. package/dist/core/types/workflow-definition.interface.d.ts +1 -20
  51. package/dist/core/types/workflow-definition.interface.d.ts.map +1 -1
  52. package/dist/{event-bus → core}/types/workflow-event.interface.d.ts +1 -1
  53. package/dist/core/types/workflow-event.interface.d.ts.map +1 -0
  54. package/dist/core/types/workflow-event.interface.js.map +1 -0
  55. package/dist/core/utils/retry-backoff.d.ts.map +1 -1
  56. package/dist/core/utils/retry-backoff.js +6 -6
  57. package/dist/core/utils/retry-backoff.js.map +1 -1
  58. package/dist/core/workflow.module.d.ts +0 -2
  59. package/dist/core/workflow.module.d.ts.map +1 -1
  60. package/dist/core/workflow.module.js +9 -3
  61. package/dist/core/workflow.module.js.map +1 -1
  62. package/package.json +15 -4
  63. package/dist/adapter/lambda.adapater.d.ts +0 -4
  64. package/dist/adapter/lambda.adapater.d.ts.map +0 -1
  65. package/dist/adapter/lambda.adapater.js +0 -66
  66. package/dist/adapter/lambda.adapater.js.map +0 -1
  67. package/dist/core/providers/ochestrator.service.d.ts +0 -33
  68. package/dist/core/providers/ochestrator.service.d.ts.map +0 -1
  69. package/dist/core/providers/ochestrator.service.js +0 -184
  70. package/dist/core/providers/ochestrator.service.js.map +0 -1
  71. package/dist/core/providers/saga.service.d.ts +0 -28
  72. package/dist/core/providers/saga.service.d.ts.map +0 -1
  73. package/dist/core/providers/saga.service.js +0 -156
  74. package/dist/core/providers/saga.service.js.map +0 -1
  75. package/dist/core/types/saga.interface.d.ts +0 -144
  76. package/dist/core/types/saga.interface.d.ts.map +0 -1
  77. package/dist/core/types/saga.interface.js +0 -26
  78. package/dist/core/types/saga.interface.js.map +0 -1
  79. package/dist/event-bus/index.d.ts +0 -3
  80. package/dist/event-bus/index.d.ts.map +0 -1
  81. package/dist/event-bus/index.js +0 -3
  82. package/dist/event-bus/index.js.map +0 -1
  83. package/dist/event-bus/sqs/sqs.emitter.d.ts +0 -6
  84. package/dist/event-bus/sqs/sqs.emitter.d.ts.map +0 -1
  85. package/dist/event-bus/sqs/sqs.emitter.js +0 -6
  86. package/dist/event-bus/sqs/sqs.emitter.js.map +0 -1
  87. package/dist/event-bus/types/broker-publisher.interface.d.ts +0 -5
  88. package/dist/event-bus/types/broker-publisher.interface.d.ts.map +0 -1
  89. package/dist/event-bus/types/broker-publisher.interface.js +0 -2
  90. package/dist/event-bus/types/broker-publisher.interface.js.map +0 -1
  91. package/dist/event-bus/types/index.d.ts +0 -3
  92. package/dist/event-bus/types/index.d.ts.map +0 -1
  93. package/dist/event-bus/types/index.js +0 -3
  94. package/dist/event-bus/types/index.js.map +0 -1
  95. package/dist/event-bus/types/workflow-event.interface.d.ts.map +0 -1
  96. package/dist/event-bus/types/workflow-event.interface.js.map +0 -1
  97. /package/dist/{event-bus → core}/types/workflow-event.interface.js +0 -0
@@ -1,144 +0,0 @@
1
- export interface ISagaStep<T = any, P = any> {
2
- /**
3
- * The original event that triggered this step
4
- */
5
- event: string;
6
- /**
7
- * Timestamp when step was executed
8
- */
9
- executedAt: Date;
10
- /**
11
- * The entity state before this step
12
- */
13
- beforeState: T;
14
- /**
15
- * The entity state after this step
16
- */
17
- afterState: T;
18
- /**
19
- * Payload used for this step
20
- */
21
- payload?: P;
22
- /**
23
- * Whether this step has been compensated
24
- */
25
- compensated: boolean;
26
- }
27
- export interface SagaContext<T = any> {
28
- /**
29
- * Unique identifier for the SAGA transaction
30
- */
31
- sagaId: string;
32
- /**
33
- * The entity being processed
34
- */
35
- entity: T;
36
- /**
37
- * List of executed steps in chronological order
38
- */
39
- executedSteps: ISagaStep<T>[];
40
- /**
41
- * Current SAGA status
42
- */
43
- status: SagaStatus;
44
- /**
45
- * Timestamp when SAGA started
46
- */
47
- startedAt: Date;
48
- /**
49
- * Timestamp when SAGA completed/failed
50
- */
51
- completedAt?: Date;
52
- /**
53
- * Error that caused the SAGA to fail (if any)
54
- */
55
- error?: Error;
56
- /**
57
- * Additional metadata for the SAGA
58
- */
59
- metadata?: Record<string, any>;
60
- }
61
- export declare enum SagaStatus {
62
- RUNNING = "running",
63
- COMPLETED = "completed",
64
- COMPENSATING = "compensating",
65
- COMPENSATED = "compensated",
66
- FAILED = "failed"
67
- }
68
- /**
69
- * NOTE: used in decorator
70
- */
71
- export interface ISagaRollbackRule<T = any> {
72
- /**
73
- * Condition that triggers this rollback rule
74
- */
75
- condition?: (error: Error, context: SagaContext<T>) => boolean;
76
- /**
77
- * Whether to stop on first compensation failure
78
- */
79
- failFast?: boolean;
80
- /**
81
- * Maximum time to wait for all compensations to complete
82
- */
83
- timeout?: number;
84
- }
85
- export declare enum RollbackStrategy {
86
- /**
87
- * Execute compensations in reverse order of execution
88
- */
89
- REVERSE_ORDER = "reverse_order",
90
- /**
91
- * Execute all compensations in parallel
92
- */
93
- PARALLEL = "parallel",
94
- IN_ORDER = "in_order"
95
- }
96
- /**
97
- * SAGA configuration that can be added to workflow definitions
98
- */
99
- export interface ISagaConfig {
100
- /**
101
- * Enable SAGA pattern for this workflow
102
- */
103
- enabled: boolean;
104
- /**
105
- * Selective mode, for type-safe purposes
106
- */
107
- mode: 'saga';
108
- /**
109
- * Rollback strategy if no specific rules match
110
- */
111
- rollbackStrategy: RollbackStrategy;
112
- /**
113
- * Maximum time to wait for SAGA completion
114
- * DEFAULT: 30000 ms
115
- */
116
- timeout?: number;
117
- /**
118
- *
119
- */
120
- failFast?: boolean;
121
- /**
122
- * Injection token refer to saga history service that implements ISagaHistoryStore<T>
123
- */
124
- historyService: string;
125
- /**
126
- * Custom SAGA ID generator
127
- */
128
- sagaIdGenerator?: () => string;
129
- }
130
- export interface ISagaHistoryStore<T = any> {
131
- /**
132
- * Save the current SAGA context state
133
- */
134
- saveSagaContext: (context: SagaContext<T>) => Promise<void>;
135
- /**
136
- * Retrieve a SAGA context by its ID
137
- */
138
- getSagaContext: (sagaId: string) => Promise<SagaContext<T> | null>;
139
- /**
140
- * Delete a SAGA context by its ID
141
- */
142
- deleteSagaContext: (sagaId: string) => Promise<void>;
143
- }
144
- //# sourceMappingURL=saga.interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"saga.interface.d.ts","sourceRoot":"","sources":["../../../packages/core/types/saga.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG;IACzC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,UAAU,EAAE,IAAI,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,CAAC,CAAC;IAEf;;OAEG;IACH,UAAU,EAAE,CAAC,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC;IAEZ;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC;IAEV;;OAEG;IACH,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAE9B;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;IAEnB;;OAEG;IACH,SAAS,EAAE,IAAI,CAAC;IAEhB;;OAEG;IACH,WAAW,CAAC,EAAE,IAAI,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,oBAAY,UAAU;IACpB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;IAC3B,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,GAAG,GAAG;IACxC;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;IAE/D;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,oBAAY,gBAAgB;IAC1B;;OAEG;IACH,aAAa,kBAAkB;IAE/B;;OAEG;IACH,QAAQ,aAAa;IAKrB,QAAQ,aAAa;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,gBAAgB,EAAE,gBAAgB,CAAC;IAEnC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC,GAAG,GAAG;IACxC;;OAEG;IACH,eAAe,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D;;OAEG;IACH,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAEnE;;OAEG;IACH,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtD"}
@@ -1,26 +0,0 @@
1
- export { SagaStatus };
2
- var SagaStatus;
3
- (function (SagaStatus) {
4
- SagaStatus["RUNNING"] = "running";
5
- SagaStatus["COMPLETED"] = "completed";
6
- SagaStatus["COMPENSATING"] = "compensating";
7
- SagaStatus["COMPENSATED"] = "compensated";
8
- SagaStatus["FAILED"] = "failed";
9
- })(SagaStatus || (SagaStatus = {}));
10
- export { RollbackStrategy };
11
- var RollbackStrategy;
12
- (function (RollbackStrategy) {
13
- /**
14
- * Execute compensations in reverse order of execution
15
- */
16
- RollbackStrategy["REVERSE_ORDER"] = "reverse_order";
17
- /**
18
- * Execute all compensations in parallel
19
- */
20
- RollbackStrategy["PARALLEL"] = "parallel";
21
- /* *
22
- * Exucute compensations in the order of execution
23
- */
24
- RollbackStrategy["IN_ORDER"] = "in_order";
25
- })(RollbackStrategy || (RollbackStrategy = {}));
26
- //# sourceMappingURL=saga.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"saga.interface.js","sourceRoot":"","sources":["../../../packages/core/types/saga.interface.ts"],"names":[],"mappings":"SA0EY,UAAU;AAAtB,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,qCAAuB,CAAA;IACvB,2CAA6B,CAAA;IAC7B,yCAA2B,CAAA;IAC3B,+BAAiB,CAAA;AAAC,CACpB,EANY,UAAU,KAAV,UAAU,QAMrB;SAsBW,gBAAgB;AAA5B,IAAY,gBAeX;AAfD,WAAY,gBAAgB;IAC1B;;OAEG;IACH,mDAA+B,CAAA;IAE/B;;OAEG;IACH,yCAAqB,CAAA;IAErB;;OAEG;IACH,yCAAqB,CAAA;AAAC,CACxB,EAfY,gBAAgB,KAAhB,gBAAgB,QAe3B"}
@@ -1,3 +0,0 @@
1
- export * from './sqs/sqs.emitter.js';
2
- export * from './types/index.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/event-bus/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from './sqs/sqs.emitter.js';
2
- export * from './types/index.js';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../packages/event-bus/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC"}
@@ -1,6 +0,0 @@
1
- import { type IBrokerPublisher } from '../types/broker-publisher.interface.js';
2
- import { type IWorkflowEvent } from '../types/workflow-event.interface.js';
3
- export declare class SqsEmitter implements IBrokerPublisher {
4
- emit<T>(_payload: IWorkflowEvent<T>): Promise<void>;
5
- }
6
- //# sourceMappingURL=sqs.emitter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sqs.emitter.d.ts","sourceRoot":"","sources":["../../../packages/event-bus/sqs/sqs.emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAExE,qBAAa,UAAW,YAAW,gBAAgB;IAC3C,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAG;CAC7D"}
@@ -1,6 +0,0 @@
1
- import {} from '../types/broker-publisher.interface.js';
2
- import {} from '../types/workflow-event.interface.js';
3
- export class SqsEmitter {
4
- async emit(_payload) { }
5
- }
6
- //# sourceMappingURL=sqs.emitter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sqs.emitter.js","sourceRoot":"","sources":["../../../packages/event-bus/sqs/sqs.emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAuB,MAAM,mCAAmC,CAAC;AAExE,MAAM,OAAO,UAAU;IACrB,KAAK,CAAC,IAAI,CAAI,QAA2B,EAAiB,EAAC,CAAC;CAC7D"}
@@ -1,5 +0,0 @@
1
- import { type IWorkflowEvent } from './workflow-event.interface.js';
2
- export interface IBrokerPublisher {
3
- emit(event: IWorkflowEvent): Promise<void>;
4
- }
5
- //# sourceMappingURL=broker-publisher.interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"broker-publisher.interface.d.ts","sourceRoot":"","sources":["../../../packages/event-bus/types/broker-publisher.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5C"}
@@ -1,2 +0,0 @@
1
- import {} from './workflow-event.interface.js';
2
- //# sourceMappingURL=broker-publisher.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"broker-publisher.interface.js","sourceRoot":"","sources":["../../../packages/event-bus/types/broker-publisher.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,MAAM,4BAA4B,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from './broker-publisher.interface.js';
2
- export * from './workflow-event.interface.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../packages/event-bus/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from './broker-publisher.interface.js';
2
- export * from './workflow-event.interface.js';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/event-bus/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"workflow-event.interface.d.ts","sourceRoot":"","sources":["../../../packages/event-bus/types/workflow-event.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,GAAG;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;CACjB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"workflow-event.interface.js","sourceRoot":"","sources":["../../../packages/event-bus/types/workflow-event.interface.ts"],"names":[],"mappings":""}