nestjs-temporal-core 3.0.4 → 3.0.6

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 (43) hide show
  1. package/README.md +509 -157
  2. package/dist/activity/index.d.ts +2 -0
  3. package/dist/activity/index.js +19 -0
  4. package/dist/activity/index.js.map +1 -0
  5. package/dist/activity/temporal-activity.module.d.ts +11 -0
  6. package/dist/activity/temporal-activity.module.js +52 -0
  7. package/dist/activity/temporal-activity.module.js.map +1 -0
  8. package/dist/activity/temporal-activity.service.d.ts +46 -0
  9. package/dist/activity/temporal-activity.service.js +195 -0
  10. package/dist/activity/temporal-activity.service.js.map +1 -0
  11. package/dist/client/temporal-client.module.d.ts +1 -1
  12. package/dist/client/temporal-client.module.js +22 -14
  13. package/dist/client/temporal-client.module.js.map +1 -1
  14. package/dist/client/temporal-client.service.d.ts +2 -1
  15. package/dist/client/temporal-client.service.js +12 -4
  16. package/dist/client/temporal-client.service.js.map +1 -1
  17. package/dist/constants.d.ts +3 -0
  18. package/dist/constants.js +4 -1
  19. package/dist/constants.js.map +1 -1
  20. package/dist/index.d.ts +2 -0
  21. package/dist/index.js +7 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/interfaces.d.ts +53 -6
  24. package/dist/schedules/index.d.ts +2 -0
  25. package/dist/schedules/index.js +19 -0
  26. package/dist/schedules/index.js.map +1 -0
  27. package/dist/schedules/temporal-schedules.module.d.ts +11 -0
  28. package/dist/schedules/temporal-schedules.module.js +55 -0
  29. package/dist/schedules/temporal-schedules.module.js.map +1 -0
  30. package/dist/schedules/temporal-schedules.service.d.ts +52 -0
  31. package/dist/schedules/temporal-schedules.service.js +220 -0
  32. package/dist/schedules/temporal-schedules.service.js.map +1 -0
  33. package/dist/temporal.service.js +1 -1
  34. package/dist/temporal.service.js.map +1 -1
  35. package/dist/tsconfig.tsbuildinfo +1 -1
  36. package/dist/utils/conditional-logger.d.ts +15 -0
  37. package/dist/utils/conditional-logger.js +58 -0
  38. package/dist/utils/conditional-logger.js.map +1 -0
  39. package/dist/worker/temporal-worker-manager.service.js +15 -11
  40. package/dist/worker/temporal-worker-manager.service.js.map +1 -1
  41. package/dist/worker/temporal-worker.module.js +2 -0
  42. package/dist/worker/temporal-worker.module.js.map +1 -1
  43. package/package.json +1 -4
package/dist/index.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import 'reflect-metadata';
2
2
  export { TemporalClientModule, TemporalClientService, TemporalScheduleService } from './client';
3
3
  export { TemporalWorkerModule, TemporalWorkerManagerService, TemporalMetadataAccessor, } from './worker';
4
+ export { TemporalActivityModule, TemporalActivityService } from './activity';
5
+ export { TemporalSchedulesModule, TemporalSchedulesService } from './schedules';
4
6
  export { TemporalDiscoveryService, TemporalScheduleManagerService } from './discovery';
5
7
  export * from './decorators';
6
8
  export * from './interfaces';
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ 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.ERRORS = exports.TIMEOUTS = exports.RETRY_POLICIES = exports.WORKER_PRESETS = exports.INTERVAL_EXPRESSIONS = exports.CRON_EXPRESSIONS = exports.TEMPORAL_MODULE_OPTIONS = exports.TEMPORAL_CLIENT = exports.TEMPORAL_SCHEDULED_WORKFLOW = exports.TEMPORAL_QUERY_METHOD = exports.TEMPORAL_SIGNAL_METHOD = exports.TEMPORAL_ACTIVITY_METHOD = exports.TEMPORAL_ACTIVITY = exports.DEFAULT_TASK_QUEUE = exports.DEFAULT_NAMESPACE = exports.TemporalScheduleManagerService = exports.TemporalDiscoveryService = exports.TemporalMetadataAccessor = exports.TemporalWorkerManagerService = exports.TemporalWorkerModule = exports.TemporalScheduleService = exports.TemporalClientService = exports.TemporalClientModule = void 0;
17
+ exports.ERRORS = exports.TIMEOUTS = exports.RETRY_POLICIES = exports.WORKER_PRESETS = exports.INTERVAL_EXPRESSIONS = exports.CRON_EXPRESSIONS = exports.TEMPORAL_MODULE_OPTIONS = exports.TEMPORAL_CLIENT = exports.TEMPORAL_SCHEDULED_WORKFLOW = exports.TEMPORAL_QUERY_METHOD = exports.TEMPORAL_SIGNAL_METHOD = exports.TEMPORAL_ACTIVITY_METHOD = exports.TEMPORAL_ACTIVITY = 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 = void 0;
18
18
  require("reflect-metadata");
19
19
  var client_1 = require("./client");
20
20
  Object.defineProperty(exports, "TemporalClientModule", { enumerable: true, get: function () { return client_1.TemporalClientModule; } });
@@ -24,6 +24,12 @@ var worker_1 = require("./worker");
24
24
  Object.defineProperty(exports, "TemporalWorkerModule", { enumerable: true, get: function () { return worker_1.TemporalWorkerModule; } });
25
25
  Object.defineProperty(exports, "TemporalWorkerManagerService", { enumerable: true, get: function () { return worker_1.TemporalWorkerManagerService; } });
26
26
  Object.defineProperty(exports, "TemporalMetadataAccessor", { enumerable: true, get: function () { return worker_1.TemporalMetadataAccessor; } });
27
+ var activity_1 = require("./activity");
28
+ Object.defineProperty(exports, "TemporalActivityModule", { enumerable: true, get: function () { return activity_1.TemporalActivityModule; } });
29
+ Object.defineProperty(exports, "TemporalActivityService", { enumerable: true, get: function () { return activity_1.TemporalActivityService; } });
30
+ var schedules_1 = require("./schedules");
31
+ Object.defineProperty(exports, "TemporalSchedulesModule", { enumerable: true, get: function () { return schedules_1.TemporalSchedulesModule; } });
32
+ Object.defineProperty(exports, "TemporalSchedulesService", { enumerable: true, get: function () { return schedules_1.TemporalSchedulesService; } });
27
33
  var discovery_1 = require("./discovery");
28
34
  Object.defineProperty(exports, "TemporalDiscoveryService", { enumerable: true, get: function () { return discovery_1.TemporalDiscoveryService; } });
29
35
  Object.defineProperty(exports, "TemporalScheduleManagerService", { enumerable: true, get: function () { return discovery_1.TemporalScheduleManagerService; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4BAA0B;AAc1B,mCAAgG;AAAvF,8GAAA,oBAAoB,OAAA;AAAE,+GAAA,qBAAqB,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAK7E,mCAIkB;AAHd,8GAAA,oBAAoB,OAAA;AACpB,sHAAA,4BAA4B,OAAA;AAC5B,kHAAA,wBAAwB,OAAA;AAM5B,yCAAuF;AAA9E,qHAAA,wBAAwB,OAAA;AAAE,2HAAA,8BAA8B,OAAA;AAKjE,+CAA6B;AAK7B,+CAA6B;AAK7B,yCAyBqB;AAvBjB,8GAAA,iBAAiB,OAAA;AACjB,+GAAA,kBAAkB,OAAA;AAGlB,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA;AACxB,mHAAA,sBAAsB,OAAA;AACtB,kHAAA,qBAAqB,OAAA;AACrB,wHAAA,2BAA2B,OAAA;AAG3B,4GAAA,eAAe,OAAA;AACf,oHAAA,uBAAuB,OAAA;AAGvB,6GAAA,gBAAgB,OAAA;AAChB,iHAAA,oBAAoB,OAAA;AACpB,2GAAA,cAAc,OAAA;AACd,2GAAA,cAAc,OAAA;AACd,qGAAA,QAAQ,OAAA;AAGR,mGAAA,MAAM,OAAA;AAMV,qDAAmC;AAKnC,oDAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4BAA0B;AAc1B,mCAAgG;AAAvF,8GAAA,oBAAoB,OAAA;AAAE,+GAAA,qBAAqB,OAAA;AAAE,iHAAA,uBAAuB,OAAA;AAK7E,mCAIkB;AAHd,8GAAA,oBAAoB,OAAA;AACpB,sHAAA,4BAA4B,OAAA;AAC5B,kHAAA,wBAAwB,OAAA;AAM5B,uCAA6E;AAApE,kHAAA,sBAAsB,OAAA;AAAE,mHAAA,uBAAuB,OAAA;AAKxD,yCAAgF;AAAvE,oHAAA,uBAAuB,OAAA;AAAE,qHAAA,wBAAwB,OAAA;AAK1D,yCAAuF;AAA9E,qHAAA,wBAAwB,OAAA;AAAE,2HAAA,8BAA8B,OAAA;AAKjE,+CAA6B;AAK7B,+CAA6B;AAK7B,yCAyBqB;AAvBjB,8GAAA,iBAAiB,OAAA;AACjB,+GAAA,kBAAkB,OAAA;AAGlB,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA;AACxB,mHAAA,sBAAsB,OAAA;AACtB,kHAAA,qBAAqB,OAAA;AACrB,wHAAA,2BAA2B,OAAA;AAG3B,4GAAA,eAAe,OAAA;AACf,oHAAA,uBAAuB,OAAA;AAGvB,6GAAA,gBAAgB,OAAA;AAChB,iHAAA,oBAAoB,OAAA;AACpB,2GAAA,cAAc,OAAA;AACd,2GAAA,cAAc,OAAA;AACd,qGAAA,QAAQ,OAAA;AAGR,mGAAA,MAAM,OAAA;AAMV,qDAAmC;AAKnC,oDAAkC"}
@@ -15,7 +15,7 @@ export interface ConnectionOptions {
15
15
  apiKey?: string;
16
16
  metadata?: Record<string, string>;
17
17
  }
18
- export interface TemporalOptions {
18
+ export interface TemporalOptions extends LoggerConfig {
19
19
  connection: {
20
20
  address: string;
21
21
  namespace?: string;
@@ -44,6 +44,12 @@ export interface WorkerCreateOptions {
44
44
  buildId?: string;
45
45
  [key: string]: any;
46
46
  }
47
+ export interface RetryPolicyConfig {
48
+ maximumAttempts: number;
49
+ initialInterval: string;
50
+ maximumInterval: string;
51
+ backoffCoefficient: number;
52
+ }
47
53
  export interface TemporalOptionsFactory {
48
54
  createTemporalOptions(): Promise<TemporalOptions> | TemporalOptions;
49
55
  }
@@ -67,11 +73,6 @@ export interface StartWorkflowOptions {
67
73
  name: string;
68
74
  args?: any[];
69
75
  };
70
- retry?: {
71
- maximumAttempts?: number;
72
- initialInterval?: string | number;
73
- };
74
- searchAttributes?: Record<string, unknown>;
75
76
  [key: string]: any;
76
77
  }
77
78
  export interface WorkflowExecutionContext {
@@ -191,3 +192,49 @@ export interface WorkflowParameterMetadata {
191
192
  index?: number;
192
193
  extractAll?: boolean;
193
194
  }
195
+ export type LogLevel = 'error' | 'warn' | 'info' | 'debug' | 'verbose';
196
+ export interface LoggerConfig {
197
+ enableLogger?: boolean;
198
+ logLevel?: LogLevel;
199
+ }
200
+ export interface ActivityModuleOptions extends LoggerConfig {
201
+ activityClasses?: Array<Type<any>>;
202
+ timeout?: string | number;
203
+ global?: boolean;
204
+ }
205
+ export interface ActivityInfo {
206
+ className: string;
207
+ instance: any;
208
+ targetClass: any;
209
+ methods: Array<{
210
+ name: string;
211
+ methodName: string;
212
+ options: any;
213
+ }>;
214
+ totalMethods: number;
215
+ }
216
+ export interface SchedulesModuleOptions extends LoggerConfig {
217
+ autoStart?: boolean;
218
+ defaultTimezone?: string;
219
+ global?: boolean;
220
+ }
221
+ export interface ScheduleInfo {
222
+ scheduleId: string;
223
+ workflowName: string;
224
+ cronExpression?: string;
225
+ intervalExpression?: string;
226
+ description?: string;
227
+ timezone: string;
228
+ overlapPolicy: 'ALLOW_ALL' | 'SKIP' | 'BUFFER_ONE' | 'BUFFER_ALL' | 'CANCEL_OTHER';
229
+ isActive: boolean;
230
+ autoStart: boolean;
231
+ taskQueue?: string;
232
+ handler: any;
233
+ controllerInfo: any;
234
+ createdAt: Date;
235
+ lastTriggered?: Date;
236
+ lastModified?: Date;
237
+ nextRun?: Date;
238
+ triggerCount?: number;
239
+ lastError?: string;
240
+ }
@@ -0,0 +1,2 @@
1
+ export * from './temporal-schedules.module';
2
+ export * from './temporal-schedules.service';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./temporal-schedules.module"), exports);
18
+ __exportStar(require("./temporal-schedules.service"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schedules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA4C;AAC5C,+DAA6C"}
@@ -0,0 +1,11 @@
1
+ import { DynamicModule } from '@nestjs/common';
2
+ import { SchedulesModuleOptions } from '../interfaces';
3
+ export declare class TemporalSchedulesModule {
4
+ static forRoot(options?: SchedulesModuleOptions): DynamicModule;
5
+ static forRootAsync(options: {
6
+ imports?: any[];
7
+ useFactory: (...args: any[]) => Promise<SchedulesModuleOptions> | SchedulesModuleOptions;
8
+ inject?: any[];
9
+ global?: boolean;
10
+ }): DynamicModule;
11
+ }
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var TemporalSchedulesModule_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.TemporalSchedulesModule = void 0;
11
+ const common_1 = require("@nestjs/common");
12
+ const core_1 = require("@nestjs/core");
13
+ const temporal_schedules_service_1 = require("./temporal-schedules.service");
14
+ const temporal_discovery_service_1 = require("../discovery/temporal-discovery.service");
15
+ const constants_1 = require("../constants");
16
+ let TemporalSchedulesModule = TemporalSchedulesModule_1 = class TemporalSchedulesModule {
17
+ static forRoot(options = {}) {
18
+ return {
19
+ module: TemporalSchedulesModule_1,
20
+ imports: [core_1.DiscoveryModule],
21
+ providers: [
22
+ {
23
+ provide: constants_1.SCHEDULES_MODULE_OPTIONS,
24
+ useValue: options,
25
+ },
26
+ temporal_discovery_service_1.TemporalDiscoveryService,
27
+ temporal_schedules_service_1.TemporalSchedulesService,
28
+ ],
29
+ exports: [temporal_schedules_service_1.TemporalSchedulesService],
30
+ global: options.global !== false,
31
+ };
32
+ }
33
+ static forRootAsync(options) {
34
+ return {
35
+ module: TemporalSchedulesModule_1,
36
+ imports: [core_1.DiscoveryModule, ...(options.imports || [])],
37
+ providers: [
38
+ {
39
+ provide: constants_1.SCHEDULES_MODULE_OPTIONS,
40
+ useFactory: options.useFactory,
41
+ inject: options.inject || [],
42
+ },
43
+ temporal_discovery_service_1.TemporalDiscoveryService,
44
+ temporal_schedules_service_1.TemporalSchedulesService,
45
+ ],
46
+ exports: [temporal_schedules_service_1.TemporalSchedulesService],
47
+ global: options.global !== false,
48
+ };
49
+ }
50
+ };
51
+ exports.TemporalSchedulesModule = TemporalSchedulesModule;
52
+ exports.TemporalSchedulesModule = TemporalSchedulesModule = TemporalSchedulesModule_1 = __decorate([
53
+ (0, common_1.Module)({})
54
+ ], TemporalSchedulesModule);
55
+ //# sourceMappingURL=temporal-schedules.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temporal-schedules.module.js","sourceRoot":"","sources":["../../src/schedules/temporal-schedules.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;AACvD,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,OAKnB;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;AA9CY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,uBAAuB,CA8CnC"}
@@ -0,0 +1,52 @@
1
+ import { OnModuleInit } from '@nestjs/common';
2
+ import { TemporalDiscoveryService } from '../discovery/temporal-discovery.service';
3
+ import { SchedulesModuleOptions, ScheduleInfo } from '../interfaces';
4
+ export declare class TemporalSchedulesService implements OnModuleInit {
5
+ private readonly options;
6
+ private readonly discoveryService;
7
+ private readonly logger;
8
+ private readonly managedSchedules;
9
+ constructor(options: SchedulesModuleOptions, discoveryService: TemporalDiscoveryService);
10
+ onModuleInit(): Promise<void>;
11
+ private initializeSchedules;
12
+ private createScheduleInfo;
13
+ private calculateNextRun;
14
+ private parseInterval;
15
+ getManagedSchedules(): ScheduleInfo[];
16
+ getSchedule(scheduleId: string): ScheduleInfo | undefined;
17
+ getScheduleIds(): string[];
18
+ isScheduleManaged(scheduleId: string): boolean;
19
+ getActiveSchedules(): ScheduleInfo[];
20
+ getSchedulesByWorkflow(workflowName: string): ScheduleInfo[];
21
+ getSchedulesByTaskQueue(taskQueue: string): ScheduleInfo[];
22
+ updateScheduleStatus(scheduleId: string, isActive: boolean): Promise<void>;
23
+ recordScheduleTrigger(scheduleId: string): Promise<void>;
24
+ getScheduleStats(): {
25
+ total: number;
26
+ active: number;
27
+ inactive: number;
28
+ cron: number;
29
+ interval: number;
30
+ errors: number;
31
+ };
32
+ validateSchedules(): {
33
+ isValid: boolean;
34
+ issues: string[];
35
+ warnings: string[];
36
+ };
37
+ getHealthStatus(): {
38
+ status: 'healthy' | 'degraded' | 'unhealthy';
39
+ schedules: {
40
+ total: number;
41
+ active: number;
42
+ errors: number;
43
+ };
44
+ validation: {
45
+ isValid: boolean;
46
+ issues: string[];
47
+ warnings: string[];
48
+ };
49
+ };
50
+ private isValidCronExpression;
51
+ private logScheduleSummary;
52
+ }
@@ -0,0 +1,220 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var TemporalSchedulesService_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.TemporalSchedulesService = void 0;
17
+ const common_1 = require("@nestjs/common");
18
+ const temporal_discovery_service_1 = require("../discovery/temporal-discovery.service");
19
+ const constants_1 = require("../constants");
20
+ const conditional_logger_1 = require("../utils/conditional-logger");
21
+ let TemporalSchedulesService = TemporalSchedulesService_1 = class TemporalSchedulesService {
22
+ constructor(options, discoveryService) {
23
+ this.options = options;
24
+ this.discoveryService = discoveryService;
25
+ this.managedSchedules = new Map();
26
+ this.logger = new conditional_logger_1.ConditionalLogger(TemporalSchedulesService_1.name, {
27
+ enableLogger: options.enableLogger,
28
+ logLevel: options.logLevel,
29
+ });
30
+ }
31
+ async onModuleInit() {
32
+ await this.initializeSchedules();
33
+ this.logScheduleSummary();
34
+ }
35
+ async initializeSchedules() {
36
+ const scheduledWorkflows = this.discoveryService.getScheduledWorkflows();
37
+ for (const scheduledWorkflow of scheduledWorkflows) {
38
+ try {
39
+ const scheduleInfo = this.createScheduleInfo(scheduledWorkflow);
40
+ this.managedSchedules.set(scheduledWorkflow.scheduleOptions.scheduleId, scheduleInfo);
41
+ this.logger.debug(`Registered schedule: ${scheduledWorkflow.scheduleOptions.scheduleId} -> ${scheduledWorkflow.workflowName}`);
42
+ }
43
+ catch (error) {
44
+ this.logger.error(`Failed to register schedule ${scheduledWorkflow.scheduleOptions.scheduleId}:`, error.stack);
45
+ }
46
+ }
47
+ this.logger.log(`Initialized ${this.managedSchedules.size} schedules`);
48
+ }
49
+ createScheduleInfo(scheduledWorkflow) {
50
+ const { scheduleOptions, workflowName, handler, controllerInfo } = scheduledWorkflow;
51
+ return {
52
+ scheduleId: scheduleOptions.scheduleId,
53
+ workflowName,
54
+ cronExpression: scheduleOptions.cron,
55
+ intervalExpression: scheduleOptions.interval,
56
+ description: scheduleOptions.description,
57
+ timezone: scheduleOptions.timezone || this.options.defaultTimezone || 'UTC',
58
+ overlapPolicy: scheduleOptions.overlapPolicy || 'SKIP',
59
+ isActive: !scheduleOptions.startPaused,
60
+ autoStart: scheduleOptions.autoStart !== false,
61
+ taskQueue: scheduleOptions.taskQueue,
62
+ handler,
63
+ controllerInfo,
64
+ createdAt: new Date(),
65
+ lastTriggered: undefined,
66
+ nextRun: this.calculateNextRun(scheduleOptions),
67
+ };
68
+ }
69
+ calculateNextRun(scheduleOptions) {
70
+ if (scheduleOptions.cron) {
71
+ return new Date(Date.now() + 60000);
72
+ }
73
+ if (scheduleOptions.interval) {
74
+ const intervalMs = this.parseInterval(scheduleOptions.interval);
75
+ return new Date(Date.now() + intervalMs);
76
+ }
77
+ return undefined;
78
+ }
79
+ parseInterval(interval) {
80
+ const match = interval.match(/^(\d+)([smh])$/);
81
+ if (!match)
82
+ return 60000;
83
+ const value = parseInt(match[1]);
84
+ const unit = match[2];
85
+ switch (unit) {
86
+ case 's':
87
+ return value * 1000;
88
+ case 'm':
89
+ return value * 60 * 1000;
90
+ case 'h':
91
+ return value * 60 * 60 * 1000;
92
+ default:
93
+ return 60000;
94
+ }
95
+ }
96
+ getManagedSchedules() {
97
+ return Array.from(this.managedSchedules.values());
98
+ }
99
+ getSchedule(scheduleId) {
100
+ return this.managedSchedules.get(scheduleId);
101
+ }
102
+ getScheduleIds() {
103
+ return Array.from(this.managedSchedules.keys());
104
+ }
105
+ isScheduleManaged(scheduleId) {
106
+ return this.managedSchedules.has(scheduleId);
107
+ }
108
+ getActiveSchedules() {
109
+ return this.getManagedSchedules().filter((schedule) => schedule.isActive);
110
+ }
111
+ getSchedulesByWorkflow(workflowName) {
112
+ return this.getManagedSchedules().filter((schedule) => schedule.workflowName === workflowName);
113
+ }
114
+ getSchedulesByTaskQueue(taskQueue) {
115
+ return this.getManagedSchedules().filter((schedule) => schedule.taskQueue === taskQueue);
116
+ }
117
+ async updateScheduleStatus(scheduleId, isActive) {
118
+ const schedule = this.managedSchedules.get(scheduleId);
119
+ if (!schedule) {
120
+ throw new Error(`Schedule ${scheduleId} not found`);
121
+ }
122
+ schedule.isActive = isActive;
123
+ schedule.lastModified = new Date();
124
+ this.logger.log(`Schedule ${scheduleId} ${isActive ? 'activated' : 'deactivated'}`);
125
+ }
126
+ async recordScheduleTrigger(scheduleId) {
127
+ const schedule = this.managedSchedules.get(scheduleId);
128
+ if (!schedule) {
129
+ throw new Error(`Schedule ${scheduleId} not found`);
130
+ }
131
+ schedule.lastTriggered = new Date();
132
+ schedule.triggerCount = (schedule.triggerCount || 0) + 1;
133
+ schedule.nextRun = this.calculateNextRun(schedule);
134
+ this.logger.debug(`Recorded trigger for schedule ${scheduleId}`);
135
+ }
136
+ getScheduleStats() {
137
+ const schedules = this.getManagedSchedules();
138
+ return {
139
+ total: schedules.length,
140
+ active: schedules.filter((s) => s.isActive).length,
141
+ inactive: schedules.filter((s) => !s.isActive).length,
142
+ cron: schedules.filter((s) => s.cronExpression).length,
143
+ interval: schedules.filter((s) => s.intervalExpression).length,
144
+ errors: schedules.filter((s) => s.lastError).length,
145
+ };
146
+ }
147
+ validateSchedules() {
148
+ const issues = [];
149
+ const warnings = [];
150
+ const schedules = this.getManagedSchedules();
151
+ const scheduleIds = schedules.map((s) => s.scheduleId);
152
+ const duplicates = scheduleIds.filter((id, index) => scheduleIds.indexOf(id) !== index);
153
+ if (duplicates.length > 0) {
154
+ issues.push(`Duplicate schedule IDs found: ${duplicates.join(', ')}`);
155
+ }
156
+ schedules.forEach((schedule) => {
157
+ if (schedule.cronExpression && !this.isValidCronExpression(schedule.cronExpression)) {
158
+ issues.push(`Invalid cron expression for schedule ${schedule.scheduleId}: ${schedule.cronExpression}`);
159
+ }
160
+ });
161
+ const unscheduled = schedules.filter((s) => s.isActive && !s.nextRun);
162
+ if (unscheduled.length > 0) {
163
+ warnings.push(`Some active schedules have no next run time: ${unscheduled.map((s) => s.scheduleId).join(', ')}`);
164
+ }
165
+ return {
166
+ isValid: issues.length === 0,
167
+ issues,
168
+ warnings,
169
+ };
170
+ }
171
+ getHealthStatus() {
172
+ const stats = this.getScheduleStats();
173
+ const validation = this.validateSchedules();
174
+ let status;
175
+ if (!validation.isValid) {
176
+ status = 'unhealthy';
177
+ }
178
+ else if (validation.warnings.length > 0 || stats.errors > 0) {
179
+ status = 'degraded';
180
+ }
181
+ else {
182
+ status = 'healthy';
183
+ }
184
+ return {
185
+ status,
186
+ schedules: {
187
+ total: stats.total,
188
+ active: stats.active,
189
+ errors: stats.errors,
190
+ },
191
+ validation,
192
+ };
193
+ }
194
+ isValidCronExpression(cron) {
195
+ const parts = cron.trim().split(/\s+/);
196
+ return parts.length >= 5 && parts.length <= 6;
197
+ }
198
+ logScheduleSummary() {
199
+ const stats = this.getScheduleStats();
200
+ const validation = this.validateSchedules();
201
+ this.logger.log(`Schedule discovery completed: ${stats.total} total, ${stats.active} active, ${stats.cron} cron, ${stats.interval} interval`);
202
+ if (stats.total > 0) {
203
+ const scheduleIds = this.getScheduleIds();
204
+ this.logger.debug(`Managed schedules: ${scheduleIds.join(', ')}`);
205
+ }
206
+ if (validation.warnings.length > 0) {
207
+ validation.warnings.forEach((warning) => this.logger.warn(warning));
208
+ }
209
+ if (validation.issues.length > 0) {
210
+ validation.issues.forEach((issue) => this.logger.error(issue));
211
+ }
212
+ }
213
+ };
214
+ exports.TemporalSchedulesService = TemporalSchedulesService;
215
+ exports.TemporalSchedulesService = TemporalSchedulesService = TemporalSchedulesService_1 = __decorate([
216
+ (0, common_1.Injectable)(),
217
+ __param(0, (0, common_1.Inject)(constants_1.SCHEDULES_MODULE_OPTIONS)),
218
+ __metadata("design:paramtypes", [Object, temporal_discovery_service_1.TemporalDiscoveryService])
219
+ ], TemporalSchedulesService);
220
+ //# sourceMappingURL=temporal-schedules.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temporal-schedules.service.js","sourceRoot":"","sources":["../../src/schedules/temporal-schedules.service.ts"],"names":[],"mappings":"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"}
@@ -215,7 +215,7 @@ let TemporalService = TemporalService_1 = class TemporalService {
215
215
  async logInitializationSummary() {
216
216
  const stats = this.getDiscoveryStats();
217
217
  const scheduleStats = this.getScheduleStats();
218
- this.logger.log('Streamlined Temporal service initialized');
218
+ this.logger.log('Temporal service initialized');
219
219
  this.logger.log(`Discovered: ${stats.scheduled} scheduled workflows, ${stats.signals} signals, ${stats.queries} queries`);
220
220
  this.logger.log(`Schedules: ${scheduleStats.total} total, ${scheduleStats.active} active`);
221
221
  if (this.workerManager) {
@@ -1 +1 @@
1
- {"version":3,"file":"temporal.service.js","sourceRoot":"","sources":["../src/temporal.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA4E;AAC5E,2CAAiD;AASjD,qCAA0E;AAC1E,2CAAuF;AACvF,qCAAwD;AAmCjD,IAAM,eAAe,uBAArB,MAAM,eAAe;IAGxB,YACqB,aAAoC,EACpC,eAAwC,EACxC,gBAA0C,EAC1C,eAA+C,EACpD,aAA6D;QAJxD,kBAAa,GAAb,aAAa,CAAuB;QACpC,oBAAe,GAAf,eAAe,CAAyB;QACxC,qBAAgB,GAAhB,gBAAgB,CAA0B;QAC1C,oBAAe,GAAf,eAAe,CAAgC;QACnC,kBAAa,GAAb,aAAa,CAA+B;QAP5D,WAAM,GAAG,IAAI,eAAM,CAAC,iBAAe,CAAC,IAAI,CAAC,CAAC;IAQxD,CAAC;IAEJ,KAAK,CAAC,YAAY;QACd,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAC1C,CAAC;IASD,SAAS;QACL,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAKD,kBAAkB;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAKD,kBAAkB;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAKD,mBAAmB;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAKD,gBAAgB;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IA4BD,KAAK,CAAC,aAAa,CACf,YAAoB,EACpB,IAAO,EACP,OAA6B;QAO7B,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAE7D,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,sBAAsB,YAAY,kBAAkB,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CACxF,CAAC;QAEF,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAO,YAAY,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;IACvF,CAAC;IAKD,KAAK,CAAC,cAAc,CAAC,UAAkB,EAAE,UAAkB,EAAE,OAAc,EAAE;QACzE,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,UAAU,iBAAiB,UAAU,EAAE,CAAC,CAAC;IAC/E,CAAC;IAKD,KAAK,CAAC,aAAa,CAAI,UAAkB,EAAE,SAAiB,EAAE,OAAc,EAAE;QAC1E,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAI,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACtF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,SAAS,iBAAiB,UAAU,EAAE,CAAC,CAAC;QACtE,OAAO,MAAM,CAAC;IAClB,CAAC;IAKD,KAAK,CAAC,iBAAiB,CAAC,UAAkB,EAAE,MAAe;QACvD,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC/D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvF,CAAC;IAKD,KAAK,CAAC,cAAc,CAAC,UAAkB;QACnC,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,sBAAsB,UAAU,EAAE,CAAC,CAAC;IACxD,CAAC;IASD,KAAK,CAAC,eAAe,CAAC,UAAkB;QACpC,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,UAAU,EAAE,CAAC,CAAC;IACzD,CAAC;IAKD,KAAK,CAAC,aAAa,CAAC,UAAkB,EAAE,IAAa;QACjD,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IAKD,KAAK,CAAC,cAAc,CAAC,UAAkB,EAAE,IAAa;QAClD,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClF,CAAC;IAKD,KAAK,CAAC,cAAc,CAAC,UAAkB,EAAE,KAAK,GAAG,KAAK;QAClD,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAExC,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,qBAAqB,UAAU,4DAA4D,CAC9F,CAAC;YACF,OAAO;QACX,CAAC;QAED,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC;IACvD,CAAC;IASD,mBAAmB;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,mBAAmB,EAAE,CAAC;IACtD,CAAC;IAKD,eAAe,CAAC,UAAkB;QAC9B,OAAO,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAClE,CAAC;IAKD,WAAW,CAAC,UAAkB;QAC1B,OAAO,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC9D,CAAC;IASD,SAAS;QACL,OAAO,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;IAKD,eAAe;QACX,OAAO,IAAI,CAAC,aAAa,EAAE,eAAe,EAAE,IAAI,IAAI,CAAC;IACzD,CAAC;IAKD,KAAK,CAAC,aAAa;QACf,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IACrD,CAAC;IAKD,KAAK,CAAC,eAAe;QAIjB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;QACvC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;QACtD,OAAO,MAAM,CAAC;IAClB,CAAC;IASD,iBAAiB;QACb,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAKD,gBAAgB;QACZ,OAAO,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC;IACnD,CAAC;IAKD,KAAK,CAAC,eAAe;QACjB,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAElD,OAAO;YACH,MAAM,EAAE;gBACJ,SAAS,EAAE,eAAe;gBAC1B,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE;aAC1C;YACD,MAAM,EAAE;gBACJ,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;gBAC3B,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,SAAS;gBAC3C,MAAM,EAAE,YAAY,CAAC,MAAM;aAC9B;YACD,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE;YACnC,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE;SACrC,CAAC;IACN,CAAC;IAKD,KAAK,CAAC,gBAAgB;QASlB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAClD,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,CAAC;QAChE,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;QAE9D,MAAM,UAAU,GAAG;YACf,MAAM,EAAE;gBACJ,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;gBAC7D,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,OAAO;aACvC;YACD,MAAM,EAAE;gBACJ,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,IAAI,eAAe;gBACrD,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC,SAAS;aAC3C;YACD,SAAS,EAAE;gBACP,MAAM,EAAE,eAAe,CAAC,MAAM;gBAC9B,SAAS,EAAE,eAAe,CAAC,eAAe,CAAC,SAAS;aACvD;YACD,SAAS,EAAE;gBACP,MAAM,EAAE,cAAc,CAAC,MAAM;gBAC7B,MAAM,EAAE,cAAc,CAAC,eAAe;gBACtC,MAAM,EAAE,cAAc,CAAC,UAAU;aACpC;SACJ,CAAC;QAGF,IAAI,aAAa,GAAyC,SAAS,CAAC;QAEpE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC/B,aAAa,GAAG,WAAW,CAAC;QAChC,CAAC;aAAM,IACH,cAAc,CAAC,MAAM,KAAK,WAAW;YACrC,YAAY,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,EAC5C,CAAC;YACC,aAAa,GAAG,UAAU,CAAC;QAC/B,CAAC;QAED,OAAO;YACH,MAAM,EAAE,aAAa;YACrB,UAAU;SACb,CAAC;IACN,CAAC;IASD,qBAAqB;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,mFAAmF,CACtF,CAAC;QACF,OAAO,EAAE,CAAC;IACd,CAAC;IAKD,eAAe,CAAC,YAAoB;QAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC;QAC3F,OAAO,SAAS,CAAC;IACrB,CAAC;IAKD,WAAW,CAAC,YAAoB;QAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,+EAA+E,CAClF,CAAC;QACF,OAAO,KAAK,CAAC;IACjB,CAAC;IASO,sBAAsB,CAAC,OAA6B;QAExD,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;QAE9C,MAAM,eAAe,GAAyB;YAC1C,SAAS,EAAE,SAAS,IAAI,8BAAkB;YAC1C,GAAG,WAAW;SACjB,CAAC;QAEF,OAAO,eAAe,CAAC;IAC3B,CAAC;IAKO,sBAAsB,CAAC,UAAkB;QAC7C,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACpD,CAAC;IAEL,CAAC;IAKO,sBAAsB,CAAC,UAAkB;QAC7C,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,aAAa,UAAU,kCAAkC,CAAC,CAAC;QAC/E,CAAC;IACL,CAAC;IAKO,KAAK,CAAC,wBAAwB;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvC,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAE9C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,eAAe,KAAK,CAAC,SAAS,yBAAyB,KAAK,CAAC,OAAO,aAAa,KAAK,CAAC,OAAO,UAAU,CAC3G,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,aAAa,CAAC,KAAK,WAAW,aAAa,CAAC,MAAM,SAAS,CAAC,CAAC;QAE3F,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC;YAC1D,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,WAAW,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,IAAI;gBACzE,GAAG,YAAY,CAAC,eAAe,wBAAwB,CAC9D,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QAC/D,CAAC;IACL,CAAC;CACJ,CAAA;AAvbY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;IASJ,WAAA,IAAA,iBAAQ,GAAE,CAAA;qCAJqB,8BAAqB;QACnB,gCAAuB;QACtB,oCAAwB;QACzB,0CAA8B;QACnB,qCAA4B;GARpE,eAAe,CAub3B"}
1
+ {"version":3,"file":"temporal.service.js","sourceRoot":"","sources":["../src/temporal.service.ts"],"names":[],"mappings":"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"}