nestjs-temporal-core 3.0.6 → 3.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.
- package/README.md +233 -26
- package/dist/activity/temporal-activity.module.d.ts +4 -4
- package/dist/activity/temporal-activity.module.js.map +1 -1
- package/dist/activity/temporal-activity.service.js +3 -6
- package/dist/activity/temporal-activity.service.js.map +1 -1
- package/dist/client/temporal-client.module.js +51 -42
- package/dist/client/temporal-client.module.js.map +1 -1
- package/dist/client/temporal-client.service.d.ts +4 -4
- package/dist/client/temporal-client.service.js +2 -5
- package/dist/client/temporal-client.service.js.map +1 -1
- package/dist/client/temporal-schedule.service.d.ts +9 -7
- package/dist/client/temporal-schedule.service.js +6 -3
- package/dist/client/temporal-schedule.service.js.map +1 -1
- package/dist/constants.js.map +1 -1
- package/dist/decorators/activity.decorator.d.ts +1 -1
- package/dist/decorators/activity.decorator.js +28 -17
- package/dist/decorators/activity.decorator.js.map +1 -1
- package/dist/decorators/parameter.decorator.d.ts +0 -2
- package/dist/decorators/parameter.decorator.js +2 -14
- package/dist/decorators/parameter.decorator.js.map +1 -1
- package/dist/decorators/scheduling.decorator.js +3 -19
- package/dist/decorators/scheduling.decorator.js.map +1 -1
- package/dist/discovery/temporal-discovery.service.d.ts +3 -3
- package/dist/discovery/temporal-discovery.service.js +17 -16
- package/dist/discovery/temporal-discovery.service.js.map +1 -1
- package/dist/discovery/temporal-schedule-manager.service.js +5 -2
- package/dist/discovery/temporal-schedule-manager.service.js.map +1 -1
- package/dist/index.d.ts +16 -6
- package/dist/index.js +34 -21
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +65 -24
- package/dist/interfaces.js.map +1 -1
- package/dist/schedules/temporal-schedules.module.d.ts +4 -4
- package/dist/schedules/temporal-schedules.module.js.map +1 -1
- package/dist/schedules/temporal-schedules.service.js +7 -6
- package/dist/schedules/temporal-schedules.service.js.map +1 -1
- package/dist/temporal.module.d.ts +2 -10
- package/dist/temporal.module.js +88 -111
- package/dist/temporal.module.js.map +1 -1
- package/dist/temporal.service.d.ts +10 -9
- package/dist/temporal.service.js +9 -7
- package/dist/temporal.service.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.js +20 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.d.ts +38 -0
- package/dist/utils/logger.js +208 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/metadata.d.ts +7 -0
- package/dist/utils/metadata.js +38 -0
- package/dist/utils/metadata.js.map +1 -0
- package/dist/utils/validation.d.ts +2 -0
- package/dist/utils/validation.js +22 -0
- package/dist/utils/validation.js.map +1 -0
- package/dist/worker/temporal-metadata.accessor.d.ts +11 -10
- package/dist/worker/temporal-metadata.accessor.js +2 -1
- package/dist/worker/temporal-metadata.accessor.js.map +1 -1
- package/dist/worker/temporal-worker-manager.service.d.ts +6 -9
- package/dist/worker/temporal-worker-manager.service.js +131 -104
- package/dist/worker/temporal-worker-manager.service.js.map +1 -1
- package/dist/worker/temporal-worker.module.d.ts +2 -2
- package/dist/worker/temporal-worker.module.js +42 -47
- package/dist/worker/temporal-worker.module.js.map +1 -1
- package/package.json +25 -27
- package/dist/utils/conditional-logger.d.ts +0 -15
- package/dist/utils/conditional-logger.js +0 -58
- package/dist/utils/conditional-logger.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -14,43 +14,56 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
17
|
+
exports.RETRY_POLICIES = exports.TIMEOUTS = exports.INTERVAL_EXPRESSIONS = exports.CRON_EXPRESSIONS = exports.TEMPORAL_CONNECTION = exports.TEMPORAL_MODULE_OPTIONS = exports.TEMPORAL_CLIENT = exports.WORKFLOW_PARAMS_METADATA = exports.TEMPORAL_SCHEDULED_WORKFLOW = exports.TEMPORAL_QUERY_METHOD = exports.TEMPORAL_SIGNAL_METHOD = exports.TEMPORAL_ACTIVITY_METHOD = exports.TEMPORAL_ACTIVITY = exports.DEFAULT_CONNECTION_TIMEOUT_MS = exports.DEFAULT_TASK_QUEUE = exports.DEFAULT_NAMESPACE = exports.TemporalScheduleManagerService = exports.TemporalDiscoveryService = exports.TemporalSchedulesService = exports.TemporalSchedulesModule = exports.TemporalActivityService = exports.TemporalActivityModule = exports.TemporalMetadataAccessor = exports.TemporalWorkerManagerService = exports.TemporalWorkerModule = exports.TemporalScheduleService = exports.TemporalClientService = exports.TemporalClientModule = exports.TemporalService = exports.TemporalModule = void 0;
|
|
18
18
|
require("reflect-metadata");
|
|
19
|
-
var
|
|
20
|
-
Object.defineProperty(exports, "
|
|
21
|
-
|
|
22
|
-
Object.defineProperty(exports, "
|
|
23
|
-
var
|
|
24
|
-
Object.defineProperty(exports, "
|
|
25
|
-
|
|
26
|
-
Object.defineProperty(exports, "
|
|
27
|
-
var
|
|
28
|
-
Object.defineProperty(exports, "
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
Object.defineProperty(exports, "
|
|
33
|
-
var
|
|
34
|
-
Object.defineProperty(exports, "
|
|
35
|
-
|
|
19
|
+
var temporal_module_1 = require("./temporal.module");
|
|
20
|
+
Object.defineProperty(exports, "TemporalModule", { enumerable: true, get: function () { return temporal_module_1.TemporalModule; } });
|
|
21
|
+
var temporal_service_1 = require("./temporal.service");
|
|
22
|
+
Object.defineProperty(exports, "TemporalService", { enumerable: true, get: function () { return temporal_service_1.TemporalService; } });
|
|
23
|
+
var temporal_client_module_1 = require("./client/temporal-client.module");
|
|
24
|
+
Object.defineProperty(exports, "TemporalClientModule", { enumerable: true, get: function () { return temporal_client_module_1.TemporalClientModule; } });
|
|
25
|
+
var temporal_client_service_1 = require("./client/temporal-client.service");
|
|
26
|
+
Object.defineProperty(exports, "TemporalClientService", { enumerable: true, get: function () { return temporal_client_service_1.TemporalClientService; } });
|
|
27
|
+
var temporal_schedule_service_1 = require("./client/temporal-schedule.service");
|
|
28
|
+
Object.defineProperty(exports, "TemporalScheduleService", { enumerable: true, get: function () { return temporal_schedule_service_1.TemporalScheduleService; } });
|
|
29
|
+
var temporal_worker_module_1 = require("./worker/temporal-worker.module");
|
|
30
|
+
Object.defineProperty(exports, "TemporalWorkerModule", { enumerable: true, get: function () { return temporal_worker_module_1.TemporalWorkerModule; } });
|
|
31
|
+
var temporal_worker_manager_service_1 = require("./worker/temporal-worker-manager.service");
|
|
32
|
+
Object.defineProperty(exports, "TemporalWorkerManagerService", { enumerable: true, get: function () { return temporal_worker_manager_service_1.TemporalWorkerManagerService; } });
|
|
33
|
+
var temporal_metadata_accessor_1 = require("./worker/temporal-metadata.accessor");
|
|
34
|
+
Object.defineProperty(exports, "TemporalMetadataAccessor", { enumerable: true, get: function () { return temporal_metadata_accessor_1.TemporalMetadataAccessor; } });
|
|
35
|
+
var temporal_activity_module_1 = require("./activity/temporal-activity.module");
|
|
36
|
+
Object.defineProperty(exports, "TemporalActivityModule", { enumerable: true, get: function () { return temporal_activity_module_1.TemporalActivityModule; } });
|
|
37
|
+
var temporal_activity_service_1 = require("./activity/temporal-activity.service");
|
|
38
|
+
Object.defineProperty(exports, "TemporalActivityService", { enumerable: true, get: function () { return temporal_activity_service_1.TemporalActivityService; } });
|
|
39
|
+
var temporal_schedules_module_1 = require("./schedules/temporal-schedules.module");
|
|
40
|
+
Object.defineProperty(exports, "TemporalSchedulesModule", { enumerable: true, get: function () { return temporal_schedules_module_1.TemporalSchedulesModule; } });
|
|
41
|
+
var temporal_schedules_service_1 = require("./schedules/temporal-schedules.service");
|
|
42
|
+
Object.defineProperty(exports, "TemporalSchedulesService", { enumerable: true, get: function () { return temporal_schedules_service_1.TemporalSchedulesService; } });
|
|
43
|
+
var temporal_discovery_service_1 = require("./discovery/temporal-discovery.service");
|
|
44
|
+
Object.defineProperty(exports, "TemporalDiscoveryService", { enumerable: true, get: function () { return temporal_discovery_service_1.TemporalDiscoveryService; } });
|
|
45
|
+
var temporal_schedule_manager_service_1 = require("./discovery/temporal-schedule-manager.service");
|
|
46
|
+
Object.defineProperty(exports, "TemporalScheduleManagerService", { enumerable: true, get: function () { return temporal_schedule_manager_service_1.TemporalScheduleManagerService; } });
|
|
47
|
+
__exportStar(require("./utils"), exports);
|
|
36
48
|
__exportStar(require("./decorators"), exports);
|
|
37
49
|
__exportStar(require("./interfaces"), exports);
|
|
38
50
|
var constants_1 = require("./constants");
|
|
39
51
|
Object.defineProperty(exports, "DEFAULT_NAMESPACE", { enumerable: true, get: function () { return constants_1.DEFAULT_NAMESPACE; } });
|
|
40
52
|
Object.defineProperty(exports, "DEFAULT_TASK_QUEUE", { enumerable: true, get: function () { return constants_1.DEFAULT_TASK_QUEUE; } });
|
|
53
|
+
Object.defineProperty(exports, "DEFAULT_CONNECTION_TIMEOUT_MS", { enumerable: true, get: function () { return constants_1.DEFAULT_CONNECTION_TIMEOUT_MS; } });
|
|
41
54
|
Object.defineProperty(exports, "TEMPORAL_ACTIVITY", { enumerable: true, get: function () { return constants_1.TEMPORAL_ACTIVITY; } });
|
|
42
55
|
Object.defineProperty(exports, "TEMPORAL_ACTIVITY_METHOD", { enumerable: true, get: function () { return constants_1.TEMPORAL_ACTIVITY_METHOD; } });
|
|
43
56
|
Object.defineProperty(exports, "TEMPORAL_SIGNAL_METHOD", { enumerable: true, get: function () { return constants_1.TEMPORAL_SIGNAL_METHOD; } });
|
|
44
57
|
Object.defineProperty(exports, "TEMPORAL_QUERY_METHOD", { enumerable: true, get: function () { return constants_1.TEMPORAL_QUERY_METHOD; } });
|
|
45
58
|
Object.defineProperty(exports, "TEMPORAL_SCHEDULED_WORKFLOW", { enumerable: true, get: function () { return constants_1.TEMPORAL_SCHEDULED_WORKFLOW; } });
|
|
59
|
+
Object.defineProperty(exports, "WORKFLOW_PARAMS_METADATA", { enumerable: true, get: function () { return constants_1.WORKFLOW_PARAMS_METADATA; } });
|
|
46
60
|
Object.defineProperty(exports, "TEMPORAL_CLIENT", { enumerable: true, get: function () { return constants_1.TEMPORAL_CLIENT; } });
|
|
47
61
|
Object.defineProperty(exports, "TEMPORAL_MODULE_OPTIONS", { enumerable: true, get: function () { return constants_1.TEMPORAL_MODULE_OPTIONS; } });
|
|
62
|
+
Object.defineProperty(exports, "TEMPORAL_CONNECTION", { enumerable: true, get: function () { return constants_1.TEMPORAL_CONNECTION; } });
|
|
48
63
|
Object.defineProperty(exports, "CRON_EXPRESSIONS", { enumerable: true, get: function () { return constants_1.CRON_EXPRESSIONS; } });
|
|
49
64
|
Object.defineProperty(exports, "INTERVAL_EXPRESSIONS", { enumerable: true, get: function () { return constants_1.INTERVAL_EXPRESSIONS; } });
|
|
50
|
-
Object.defineProperty(exports, "WORKER_PRESETS", { enumerable: true, get: function () { return constants_1.WORKER_PRESETS; } });
|
|
51
|
-
Object.defineProperty(exports, "RETRY_POLICIES", { enumerable: true, get: function () { return constants_1.RETRY_POLICIES; } });
|
|
52
65
|
Object.defineProperty(exports, "TIMEOUTS", { enumerable: true, get: function () { return constants_1.TIMEOUTS; } });
|
|
53
|
-
Object.defineProperty(exports, "
|
|
66
|
+
Object.defineProperty(exports, "RETRY_POLICIES", { enumerable: true, get: function () { return constants_1.RETRY_POLICIES; } });
|
|
54
67
|
__exportStar(require("./temporal.service"), exports);
|
|
55
68
|
__exportStar(require("./temporal.module"), exports);
|
|
56
69
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4BAA0B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4BAA0B;AA0B1B,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AAGvB,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AAOxB,0EAAuE;AAA9D,8HAAA,oBAAoB,OAAA;AAG7B,4EAAyE;AAAhE,gIAAA,qBAAqB,OAAA;AAG9B,gFAA6E;AAApE,oIAAA,uBAAuB,OAAA;AAOhC,0EAAuE;AAA9D,8HAAA,oBAAoB,OAAA;AAG7B,4FAAwF;AAA/E,+IAAA,4BAA4B,OAAA;AAGrC,kFAA+E;AAAtE,sIAAA,wBAAwB,OAAA;AAOjC,gFAA6E;AAApE,kIAAA,sBAAsB,OAAA;AAG/B,kFAA+E;AAAtE,oIAAA,uBAAuB,OAAA;AAOhC,mFAAgF;AAAvE,oIAAA,uBAAuB,OAAA;AAGhC,qFAAkF;AAAzE,sIAAA,wBAAwB,OAAA;AAOjC,qFAAkF;AAAzE,sIAAA,wBAAwB,OAAA;AAGjC,mGAA+F;AAAtF,mJAAA,8BAA8B,OAAA;AAOvC,0CAAwB;AAOxB,+CAA6B;AAO7B,+CAA6B;AAO7B,yCAwBqB;AAtBjB,8GAAA,iBAAiB,OAAA;AACjB,+GAAA,kBAAkB,OAAA;AAClB,0HAAA,6BAA6B,OAAA;AAG7B,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA;AACxB,mHAAA,sBAAsB,OAAA;AACtB,kHAAA,qBAAqB,OAAA;AACrB,wHAAA,2BAA2B,OAAA;AAC3B,qHAAA,wBAAwB,OAAA;AAGxB,4GAAA,eAAe,OAAA;AACf,oHAAA,uBAAuB,OAAA;AACvB,gHAAA,mBAAmB,OAAA;AAGnB,6GAAA,gBAAgB,OAAA;AAChB,iHAAA,oBAAoB,OAAA;AACpB,qGAAA,QAAQ,OAAA;AACR,2GAAA,cAAc,OAAA;AAMlB,qDAAmC;AAKnC,oDAAkC"}
|
package/dist/interfaces.d.ts
CHANGED
|
@@ -26,8 +26,8 @@ export interface TemporalOptions extends LoggerConfig {
|
|
|
26
26
|
taskQueue?: string;
|
|
27
27
|
worker?: {
|
|
28
28
|
workflowsPath?: string;
|
|
29
|
-
workflowBundle?:
|
|
30
|
-
activityClasses?: Array<Type<
|
|
29
|
+
workflowBundle?: unknown;
|
|
30
|
+
activityClasses?: Array<Type<unknown>>;
|
|
31
31
|
autoStart?: boolean;
|
|
32
32
|
workerOptions?: WorkerCreateOptions;
|
|
33
33
|
};
|
|
@@ -42,7 +42,10 @@ export interface WorkerCreateOptions {
|
|
|
42
42
|
reuseV8Context?: boolean;
|
|
43
43
|
identity?: string;
|
|
44
44
|
buildId?: string;
|
|
45
|
-
|
|
45
|
+
maxCachedWorkflows?: number;
|
|
46
|
+
maxConcurrentWorkflowTaskPolls?: number;
|
|
47
|
+
maxConcurrentActivityTaskPolls?: number;
|
|
48
|
+
enableLoggingInReplay?: boolean;
|
|
46
49
|
}
|
|
47
50
|
export interface RetryPolicyConfig {
|
|
48
51
|
maximumAttempts: number;
|
|
@@ -56,10 +59,42 @@ export interface TemporalOptionsFactory {
|
|
|
56
59
|
export interface TemporalAsyncOptions extends Pick<ModuleMetadata, 'imports'> {
|
|
57
60
|
useExisting?: Type<TemporalOptionsFactory>;
|
|
58
61
|
useClass?: Type<TemporalOptionsFactory>;
|
|
59
|
-
useFactory?: (...args:
|
|
60
|
-
inject?:
|
|
62
|
+
useFactory?: (...args: unknown[]) => Promise<TemporalOptions> | TemporalOptions;
|
|
63
|
+
inject?: (string | symbol | Type<unknown>)[];
|
|
61
64
|
isGlobal?: boolean;
|
|
62
65
|
}
|
|
66
|
+
export interface ClientConnectionOptions {
|
|
67
|
+
address: string;
|
|
68
|
+
tls?: unknown;
|
|
69
|
+
metadata?: Record<string, string>;
|
|
70
|
+
apiKey?: string;
|
|
71
|
+
namespace?: string;
|
|
72
|
+
}
|
|
73
|
+
export interface WorkerModuleOptions {
|
|
74
|
+
connection?: {
|
|
75
|
+
address?: string;
|
|
76
|
+
namespace?: string;
|
|
77
|
+
tls?: boolean | object;
|
|
78
|
+
apiKey?: string;
|
|
79
|
+
metadata?: Record<string, string>;
|
|
80
|
+
};
|
|
81
|
+
taskQueue?: string;
|
|
82
|
+
workflowsPath?: string;
|
|
83
|
+
workflowBundle?: unknown;
|
|
84
|
+
activityClasses?: Array<unknown>;
|
|
85
|
+
autoStart?: boolean;
|
|
86
|
+
autoRestart?: boolean;
|
|
87
|
+
allowWorkerFailure?: boolean;
|
|
88
|
+
workerOptions?: WorkerCreateOptions;
|
|
89
|
+
enableLogger?: boolean;
|
|
90
|
+
logLevel?: LogLevel;
|
|
91
|
+
}
|
|
92
|
+
export interface GlobalLoggerConfig extends LoggerConfig {
|
|
93
|
+
appName?: string;
|
|
94
|
+
formatter?: (level: string, message: string, context: string, timestamp: string) => string;
|
|
95
|
+
logToFile?: boolean;
|
|
96
|
+
logFilePath?: string;
|
|
97
|
+
}
|
|
63
98
|
export interface SignalOptions {
|
|
64
99
|
name?: string;
|
|
65
100
|
}
|
|
@@ -71,9 +106,9 @@ export interface StartWorkflowOptions {
|
|
|
71
106
|
workflowId?: string;
|
|
72
107
|
signal?: {
|
|
73
108
|
name: string;
|
|
74
|
-
args?:
|
|
109
|
+
args?: unknown[];
|
|
75
110
|
};
|
|
76
|
-
[key: string]:
|
|
111
|
+
[key: string]: unknown;
|
|
77
112
|
}
|
|
78
113
|
export interface WorkflowExecutionContext {
|
|
79
114
|
workflowId: string;
|
|
@@ -92,7 +127,7 @@ export interface ActivityMethodOptions {
|
|
|
92
127
|
}
|
|
93
128
|
export interface ActivityMetadata {
|
|
94
129
|
name?: string;
|
|
95
|
-
options?: Record<string,
|
|
130
|
+
options?: Record<string, unknown>;
|
|
96
131
|
}
|
|
97
132
|
export interface ScheduledOptions {
|
|
98
133
|
scheduleId: string;
|
|
@@ -111,33 +146,36 @@ export interface CronOptions extends Omit<ScheduledOptions, 'cron' | 'interval'>
|
|
|
111
146
|
export interface IntervalOptions extends Omit<ScheduledOptions, 'cron' | 'interval'> {
|
|
112
147
|
scheduleId: string;
|
|
113
148
|
}
|
|
114
|
-
export type SignalMethodHandler = (...args:
|
|
115
|
-
export type QueryMethodHandler = (...args:
|
|
116
|
-
export type ActivityMethodHandler = (...args:
|
|
149
|
+
export type SignalMethodHandler = (...args: unknown[]) => void | Promise<void>;
|
|
150
|
+
export type QueryMethodHandler = (...args: unknown[]) => unknown;
|
|
151
|
+
export type ActivityMethodHandler = (...args: unknown[]) => unknown | Promise<unknown>;
|
|
117
152
|
export interface SignalMethodInfo {
|
|
118
153
|
methodName: string;
|
|
119
154
|
signalName: string;
|
|
120
|
-
options:
|
|
155
|
+
options: SignalOptions;
|
|
121
156
|
handler: SignalMethodHandler;
|
|
122
157
|
}
|
|
123
158
|
export interface QueryMethodInfo {
|
|
124
159
|
methodName: string;
|
|
125
160
|
queryName: string;
|
|
126
|
-
options:
|
|
161
|
+
options: QueryOptions;
|
|
127
162
|
handler: QueryMethodHandler;
|
|
128
163
|
}
|
|
129
164
|
export interface ScheduledMethodInfo {
|
|
130
165
|
methodName: string;
|
|
131
166
|
workflowName: string;
|
|
132
|
-
scheduleOptions:
|
|
133
|
-
workflowOptions:
|
|
134
|
-
handler:
|
|
135
|
-
controllerInfo:
|
|
167
|
+
scheduleOptions: ScheduledOptions;
|
|
168
|
+
workflowOptions: StartWorkflowOptions;
|
|
169
|
+
handler: (...args: unknown[]) => unknown | Promise<unknown>;
|
|
170
|
+
controllerInfo: {
|
|
171
|
+
name: string;
|
|
172
|
+
instance: object;
|
|
173
|
+
};
|
|
136
174
|
}
|
|
137
175
|
export interface ActivityMethodMetadata {
|
|
138
176
|
name: string;
|
|
139
177
|
originalName: string;
|
|
140
|
-
options?: Record<string,
|
|
178
|
+
options?: Record<string, unknown>;
|
|
141
179
|
handler: ActivityMethodHandler;
|
|
142
180
|
}
|
|
143
181
|
export interface DiscoveryStats {
|
|
@@ -198,18 +236,18 @@ export interface LoggerConfig {
|
|
|
198
236
|
logLevel?: LogLevel;
|
|
199
237
|
}
|
|
200
238
|
export interface ActivityModuleOptions extends LoggerConfig {
|
|
201
|
-
activityClasses?: Array<Type<
|
|
239
|
+
activityClasses?: Array<Type<unknown>>;
|
|
202
240
|
timeout?: string | number;
|
|
203
241
|
global?: boolean;
|
|
204
242
|
}
|
|
205
243
|
export interface ActivityInfo {
|
|
206
244
|
className: string;
|
|
207
|
-
instance:
|
|
208
|
-
targetClass:
|
|
245
|
+
instance: object;
|
|
246
|
+
targetClass: Type<unknown>;
|
|
209
247
|
methods: Array<{
|
|
210
248
|
name: string;
|
|
211
249
|
methodName: string;
|
|
212
|
-
options:
|
|
250
|
+
options: ActivityMethodOptions;
|
|
213
251
|
}>;
|
|
214
252
|
totalMethods: number;
|
|
215
253
|
}
|
|
@@ -229,8 +267,11 @@ export interface ScheduleInfo {
|
|
|
229
267
|
isActive: boolean;
|
|
230
268
|
autoStart: boolean;
|
|
231
269
|
taskQueue?: string;
|
|
232
|
-
handler:
|
|
233
|
-
controllerInfo:
|
|
270
|
+
handler: (...args: unknown[]) => unknown | Promise<unknown>;
|
|
271
|
+
controllerInfo: {
|
|
272
|
+
name: string;
|
|
273
|
+
instance: object;
|
|
274
|
+
};
|
|
234
275
|
createdAt: Date;
|
|
235
276
|
lastTriggered?: Date;
|
|
236
277
|
lastModified?: Date;
|
package/dist/interfaces.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;AAqBA,6CAAmF;AAA1E,+GAAA,qBAAqB,OAAA;AAAkB,gGAAA,MAAM,OAAA;AAGtD,6CAA4C;AAAnC,gGAAA,MAAM,OAAA"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { DynamicModule } from '@nestjs/common';
|
|
1
|
+
import { DynamicModule, Type } from '@nestjs/common';
|
|
2
2
|
import { SchedulesModuleOptions } from '../interfaces';
|
|
3
3
|
export declare class TemporalSchedulesModule {
|
|
4
4
|
static forRoot(options?: SchedulesModuleOptions): DynamicModule;
|
|
5
5
|
static forRootAsync(options: {
|
|
6
|
-
imports?:
|
|
7
|
-
useFactory: (...args:
|
|
8
|
-
inject?:
|
|
6
|
+
imports?: (Type<unknown> | DynamicModule)[];
|
|
7
|
+
useFactory: (...args: unknown[]) => Promise<SchedulesModuleOptions> | SchedulesModuleOptions;
|
|
8
|
+
inject?: string[];
|
|
9
9
|
global?: boolean;
|
|
10
10
|
}): DynamicModule;
|
|
11
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temporal-schedules.module.js","sourceRoot":"","sources":["../../src/schedules/temporal-schedules.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"temporal-schedules.module.js","sourceRoot":"","sources":["../../src/schedules/temporal-schedules.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAA6D;AAC7D,uCAA+C;AAC/C,6EAAwE;AACxE,wFAAmF;AAEnF,4CAAwD;AAoCjD,IAAM,uBAAuB,+BAA7B,MAAM,uBAAuB;IAIhC,MAAM,CAAC,OAAO,CAAC,UAAkC,EAAE;QAC/C,OAAO;YACH,MAAM,EAAE,yBAAuB;YAC/B,OAAO,EAAE,CAAC,sBAAe,CAAC;YAC1B,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,oCAAwB;oBACjC,QAAQ,EAAE,OAAO;iBACpB;gBACD,qDAAwB;gBACxB,qDAAwB;aAC3B;YACD,OAAO,EAAE,CAAC,qDAAwB,CAAC;YACnC,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,KAAK;SACnC,CAAC;IACN,CAAC;IAKD,MAAM,CAAC,YAAY,CAAC,OAOnB;QACG,OAAO;YACH,MAAM,EAAE,yBAAuB;YAC/B,OAAO,EAAE,CAAC,sBAAe,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,oCAAwB;oBACjC,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;iBAC/B;gBACD,qDAAwB;gBACxB,qDAAwB;aAC3B;YACD,OAAO,EAAE,CAAC,qDAAwB,CAAC;YACnC,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,KAAK;SACnC,CAAC;IACN,CAAC;CACJ,CAAA;AAhDY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,uBAAuB,CAgDnC"}
|
|
@@ -17,16 +17,13 @@ exports.TemporalSchedulesService = void 0;
|
|
|
17
17
|
const common_1 = require("@nestjs/common");
|
|
18
18
|
const temporal_discovery_service_1 = require("../discovery/temporal-discovery.service");
|
|
19
19
|
const constants_1 = require("../constants");
|
|
20
|
-
const
|
|
20
|
+
const logger_1 = require("../utils/logger");
|
|
21
21
|
let TemporalSchedulesService = TemporalSchedulesService_1 = class TemporalSchedulesService {
|
|
22
22
|
constructor(options, discoveryService) {
|
|
23
23
|
this.options = options;
|
|
24
24
|
this.discoveryService = discoveryService;
|
|
25
25
|
this.managedSchedules = new Map();
|
|
26
|
-
this.logger =
|
|
27
|
-
enableLogger: options.enableLogger,
|
|
28
|
-
logLevel: options.logLevel,
|
|
29
|
-
});
|
|
26
|
+
this.logger = (0, logger_1.createLogger)(TemporalSchedulesService_1.name);
|
|
30
27
|
}
|
|
31
28
|
async onModuleInit() {
|
|
32
29
|
await this.initializeSchedules();
|
|
@@ -77,18 +74,22 @@ let TemporalSchedulesService = TemporalSchedulesService_1 = class TemporalSchedu
|
|
|
77
74
|
return undefined;
|
|
78
75
|
}
|
|
79
76
|
parseInterval(interval) {
|
|
80
|
-
const match = interval.match(/^(\d+)([
|
|
77
|
+
const match = interval.match(/^(\d+)(ms|[smhd])$/);
|
|
81
78
|
if (!match)
|
|
82
79
|
return 60000;
|
|
83
80
|
const value = parseInt(match[1]);
|
|
84
81
|
const unit = match[2];
|
|
85
82
|
switch (unit) {
|
|
83
|
+
case 'ms':
|
|
84
|
+
return value;
|
|
86
85
|
case 's':
|
|
87
86
|
return value * 1000;
|
|
88
87
|
case 'm':
|
|
89
88
|
return value * 60 * 1000;
|
|
90
89
|
case 'h':
|
|
91
90
|
return value * 60 * 60 * 1000;
|
|
91
|
+
case 'd':
|
|
92
|
+
return value * 24 * 60 * 60 * 1000;
|
|
92
93
|
default:
|
|
93
94
|
return 60000;
|
|
94
95
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temporal-schedules.service.js","sourceRoot":"","sources":["../../src/schedules/temporal-schedules.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAkE;AAClE,wFAAmF;AAOnF,4CAAwD;AACxD,
|
|
1
|
+
{"version":3,"file":"temporal-schedules.service.js","sourceRoot":"","sources":["../../src/schedules/temporal-schedules.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,18 +5,10 @@ export declare class TemporalModule {
|
|
|
5
5
|
static registerAsync(options: TemporalAsyncOptions): DynamicModule;
|
|
6
6
|
static forClient(options: {
|
|
7
7
|
connection: TemporalOptions['connection'];
|
|
8
|
+
enableLogger?: boolean;
|
|
9
|
+
logLevel?: 'error' | 'warn' | 'info' | 'debug' | 'verbose';
|
|
8
10
|
isGlobal?: boolean;
|
|
9
11
|
}): DynamicModule;
|
|
10
|
-
static forWorker(options: {
|
|
11
|
-
connection: TemporalOptions['connection'];
|
|
12
|
-
taskQueue: string;
|
|
13
|
-
workflowsPath?: string;
|
|
14
|
-
workflowBundle?: any;
|
|
15
|
-
activityClasses?: any[];
|
|
16
|
-
isGlobal?: boolean;
|
|
17
|
-
}): DynamicModule;
|
|
18
|
-
static withFullFeatures(options: TemporalOptions): DynamicModule;
|
|
19
|
-
private static processOptions;
|
|
20
12
|
private static validateOptions;
|
|
21
13
|
private static validateAsyncOptions;
|
|
22
14
|
private static createOptionsFromFactory;
|
package/dist/temporal.module.js
CHANGED
|
@@ -15,144 +15,124 @@ const constants_1 = require("./constants");
|
|
|
15
15
|
const client_1 = require("./client");
|
|
16
16
|
const worker_1 = require("./worker");
|
|
17
17
|
const discovery_1 = require("./discovery");
|
|
18
|
+
const logger_1 = require("./utils/logger");
|
|
18
19
|
let TemporalModule = TemporalModule_1 = class TemporalModule {
|
|
19
20
|
static register(options) {
|
|
20
|
-
|
|
21
|
-
const imports = [
|
|
22
|
-
|
|
21
|
+
this.validateOptions(options);
|
|
22
|
+
const imports = [];
|
|
23
|
+
const providers = [];
|
|
24
|
+
imports.push(client_1.TemporalClientModule.register(options));
|
|
25
|
+
if (options.worker && (options.worker.workflowsPath || options.worker.workflowBundle)) {
|
|
23
26
|
imports.push(worker_1.TemporalWorkerModule.register(options));
|
|
24
27
|
}
|
|
28
|
+
providers.push({
|
|
29
|
+
provide: constants_1.TEMPORAL_MODULE_OPTIONS,
|
|
30
|
+
useValue: options,
|
|
31
|
+
}, {
|
|
32
|
+
provide: logger_1.TemporalLoggerManager,
|
|
33
|
+
useFactory: () => {
|
|
34
|
+
const manager = logger_1.TemporalLoggerManager.getInstance();
|
|
35
|
+
manager.configure({
|
|
36
|
+
enableLogger: options.enableLogger,
|
|
37
|
+
logLevel: options.logLevel,
|
|
38
|
+
appName: 'NestJS-Temporal-Core',
|
|
39
|
+
});
|
|
40
|
+
return manager;
|
|
41
|
+
},
|
|
42
|
+
}, discovery_1.TemporalDiscoveryService, discovery_1.TemporalScheduleManagerService, temporal_service_1.TemporalService);
|
|
25
43
|
return {
|
|
26
44
|
module: TemporalModule_1,
|
|
27
|
-
imports,
|
|
28
|
-
providers
|
|
29
|
-
|
|
30
|
-
core_1.MetadataScanner,
|
|
31
|
-
discovery_1.TemporalDiscoveryService,
|
|
32
|
-
discovery_1.TemporalScheduleManagerService,
|
|
33
|
-
temporal_service_1.TemporalService,
|
|
34
|
-
],
|
|
35
|
-
exports: [temporal_service_1.TemporalService],
|
|
45
|
+
imports: [core_1.DiscoveryModule, ...imports],
|
|
46
|
+
providers,
|
|
47
|
+
exports: [temporal_service_1.TemporalService, logger_1.TemporalLoggerManager, constants_1.TEMPORAL_MODULE_OPTIONS],
|
|
36
48
|
global: options.isGlobal,
|
|
37
49
|
};
|
|
38
50
|
}
|
|
39
51
|
static registerAsync(options) {
|
|
40
52
|
this.validateAsyncOptions(options);
|
|
41
|
-
const imports = [
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
+
const imports = [core_1.DiscoveryModule];
|
|
54
|
+
const providers = [];
|
|
55
|
+
if (options.useFactory) {
|
|
56
|
+
providers.push({
|
|
57
|
+
provide: constants_1.TEMPORAL_MODULE_OPTIONS,
|
|
58
|
+
useFactory: options.useFactory,
|
|
59
|
+
inject: options.inject || [],
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
else if (options.useClass) {
|
|
63
|
+
providers.push({
|
|
64
|
+
provide: options.useClass,
|
|
65
|
+
useClass: options.useClass,
|
|
66
|
+
}, {
|
|
67
|
+
provide: constants_1.TEMPORAL_MODULE_OPTIONS,
|
|
68
|
+
useFactory: async (optionsFactory) => optionsFactory.createTemporalOptions(),
|
|
69
|
+
inject: [options.useClass],
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
else if (options.useExisting) {
|
|
73
|
+
providers.push({
|
|
74
|
+
provide: constants_1.TEMPORAL_MODULE_OPTIONS,
|
|
75
|
+
useFactory: async (optionsFactory) => optionsFactory.createTemporalOptions(),
|
|
76
|
+
inject: [options.useExisting],
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
imports.push(client_1.TemporalClientModule.registerAsync({
|
|
80
|
+
imports: options.imports,
|
|
81
|
+
useFactory: async (...args) => {
|
|
82
|
+
const temporalOptions = await this.createOptionsFromFactory(options, args);
|
|
83
|
+
return temporalOptions;
|
|
84
|
+
},
|
|
85
|
+
inject: options.inject,
|
|
86
|
+
}));
|
|
53
87
|
imports.push(worker_1.TemporalWorkerModule.registerAsync({
|
|
54
88
|
imports: options.imports,
|
|
55
89
|
useFactory: async (...args) => {
|
|
56
90
|
const temporalOptions = await this.createOptionsFromFactory(options, args);
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
worker: { activityClasses: [] },
|
|
63
|
-
};
|
|
91
|
+
if (!temporalOptions.worker ||
|
|
92
|
+
(!temporalOptions.worker.workflowsPath &&
|
|
93
|
+
!temporalOptions.worker.workflowBundle)) {
|
|
94
|
+
const { worker: _worker, ...optionsWithoutWorker } = temporalOptions;
|
|
95
|
+
return optionsWithoutWorker;
|
|
64
96
|
}
|
|
65
97
|
return temporalOptions;
|
|
66
98
|
},
|
|
67
99
|
inject: options.inject,
|
|
68
100
|
}));
|
|
101
|
+
providers.push({
|
|
102
|
+
provide: logger_1.TemporalLoggerManager,
|
|
103
|
+
useFactory: async (...args) => {
|
|
104
|
+
const temporalOptions = await this.createOptionsFromFactory(options, args);
|
|
105
|
+
const manager = logger_1.TemporalLoggerManager.getInstance();
|
|
106
|
+
manager.configure({
|
|
107
|
+
enableLogger: temporalOptions.enableLogger,
|
|
108
|
+
logLevel: temporalOptions.logLevel,
|
|
109
|
+
appName: 'NestJS-Temporal-Core',
|
|
110
|
+
});
|
|
111
|
+
return manager;
|
|
112
|
+
},
|
|
113
|
+
inject: options.inject,
|
|
114
|
+
}, discovery_1.TemporalDiscoveryService, discovery_1.TemporalScheduleManagerService, temporal_service_1.TemporalService);
|
|
69
115
|
return {
|
|
70
116
|
module: TemporalModule_1,
|
|
71
|
-
imports,
|
|
72
|
-
providers
|
|
73
|
-
|
|
74
|
-
core_1.MetadataScanner,
|
|
75
|
-
discovery_1.TemporalDiscoveryService,
|
|
76
|
-
discovery_1.TemporalScheduleManagerService,
|
|
77
|
-
temporal_service_1.TemporalService,
|
|
78
|
-
],
|
|
79
|
-
exports: [temporal_service_1.TemporalService],
|
|
117
|
+
imports: [...(options.imports || []), ...imports],
|
|
118
|
+
providers,
|
|
119
|
+
exports: [temporal_service_1.TemporalService, logger_1.TemporalLoggerManager, constants_1.TEMPORAL_MODULE_OPTIONS],
|
|
80
120
|
global: options.isGlobal,
|
|
81
121
|
};
|
|
82
122
|
}
|
|
83
123
|
static forClient(options) {
|
|
84
|
-
return {
|
|
85
|
-
module: TemporalModule_1,
|
|
86
|
-
imports: [
|
|
87
|
-
client_1.TemporalClientModule.register({
|
|
88
|
-
connection: options.connection,
|
|
89
|
-
isGlobal: options.isGlobal,
|
|
90
|
-
}),
|
|
91
|
-
],
|
|
92
|
-
providers: [
|
|
93
|
-
core_1.DiscoveryService,
|
|
94
|
-
core_1.MetadataScanner,
|
|
95
|
-
discovery_1.TemporalDiscoveryService,
|
|
96
|
-
discovery_1.TemporalScheduleManagerService,
|
|
97
|
-
temporal_service_1.TemporalService,
|
|
98
|
-
],
|
|
99
|
-
exports: [temporal_service_1.TemporalService],
|
|
100
|
-
global: options.isGlobal,
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
static forWorker(options) {
|
|
104
|
-
const temporalOptions = {
|
|
124
|
+
return this.register({
|
|
105
125
|
connection: options.connection,
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
workflowsPath: options.workflowsPath,
|
|
109
|
-
workflowBundle: options.workflowBundle,
|
|
110
|
-
activityClasses: options.activityClasses,
|
|
111
|
-
},
|
|
126
|
+
enableLogger: options.enableLogger,
|
|
127
|
+
logLevel: options.logLevel,
|
|
112
128
|
isGlobal: options.isGlobal,
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
module: TemporalModule_1,
|
|
116
|
-
imports: [
|
|
117
|
-
client_1.TemporalClientModule.register(temporalOptions),
|
|
118
|
-
worker_1.TemporalWorkerModule.register(temporalOptions),
|
|
119
|
-
],
|
|
120
|
-
providers: [
|
|
121
|
-
core_1.DiscoveryService,
|
|
122
|
-
core_1.MetadataScanner,
|
|
123
|
-
discovery_1.TemporalDiscoveryService,
|
|
124
|
-
discovery_1.TemporalScheduleManagerService,
|
|
125
|
-
temporal_service_1.TemporalService,
|
|
126
|
-
],
|
|
127
|
-
exports: [temporal_service_1.TemporalService],
|
|
128
|
-
global: options.isGlobal,
|
|
129
|
-
};
|
|
130
|
-
}
|
|
131
|
-
static withFullFeatures(options) {
|
|
132
|
-
return this.register(options);
|
|
133
|
-
}
|
|
134
|
-
static processOptions(options) {
|
|
135
|
-
this.validateOptions(options);
|
|
136
|
-
const clientOptions = {
|
|
137
|
-
connection: options.connection,
|
|
138
|
-
allowConnectionFailure: options.allowConnectionFailure !== false,
|
|
139
|
-
};
|
|
140
|
-
let workerOptions = null;
|
|
141
|
-
if (options.worker) {
|
|
142
|
-
workerOptions = {
|
|
143
|
-
connection: options.connection,
|
|
144
|
-
taskQueue: options.taskQueue || constants_1.DEFAULT_TASK_QUEUE,
|
|
145
|
-
workflowsPath: options.worker.workflowsPath,
|
|
146
|
-
workflowBundle: options.worker.workflowBundle,
|
|
147
|
-
activityClasses: options.worker.activityClasses,
|
|
148
|
-
autoStart: options.worker.autoStart !== false,
|
|
149
|
-
allowWorkerFailure: options.allowConnectionFailure !== false,
|
|
150
|
-
workerOptions: options.worker.workerOptions,
|
|
151
|
-
};
|
|
152
|
-
}
|
|
153
|
-
return { clientOptions, workerOptions };
|
|
129
|
+
allowConnectionFailure: true,
|
|
130
|
+
});
|
|
154
131
|
}
|
|
155
132
|
static validateOptions(options) {
|
|
133
|
+
if (!options) {
|
|
134
|
+
throw new Error('Temporal options are required');
|
|
135
|
+
}
|
|
156
136
|
if (!options.connection) {
|
|
157
137
|
throw new Error('Connection configuration is required');
|
|
158
138
|
}
|
|
@@ -162,9 +142,6 @@ let TemporalModule = TemporalModule_1 = class TemporalModule {
|
|
|
162
142
|
if (options.worker) {
|
|
163
143
|
const hasWorkflowsPath = Boolean(options.worker.workflowsPath);
|
|
164
144
|
const hasWorkflowBundle = Boolean(options.worker.workflowBundle);
|
|
165
|
-
if (!hasWorkflowsPath && !hasWorkflowBundle) {
|
|
166
|
-
throw new Error('Worker requires either workflowsPath or workflowBundle');
|
|
167
|
-
}
|
|
168
145
|
if (hasWorkflowsPath && hasWorkflowBundle) {
|
|
169
146
|
throw new Error('Worker cannot have both workflowsPath and workflowBundle');
|
|
170
147
|
}
|