nestjs-temporal-core 3.0.1 → 3.0.4

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 (101) hide show
  1. package/README.md +274 -139
  2. package/dist/client/temporal-client.module.d.ts +9 -3
  3. package/dist/client/temporal-client.module.js +43 -13
  4. package/dist/client/temporal-client.module.js.map +1 -1
  5. package/dist/client/temporal-client.service.d.ts +10 -3
  6. package/dist/client/temporal-client.service.js +15 -6
  7. package/dist/client/temporal-client.service.js.map +1 -1
  8. package/dist/client/temporal-schedule.service.d.ts +21 -5
  9. package/dist/client/temporal-schedule.service.js +42 -10
  10. package/dist/client/temporal-schedule.service.js.map +1 -1
  11. package/dist/constants.d.ts +47 -70
  12. package/dist/constants.js +51 -74
  13. package/dist/constants.js.map +1 -1
  14. package/dist/decorators/activity.decorator.d.ts +3 -0
  15. package/dist/decorators/activity.decorator.js +39 -0
  16. package/dist/decorators/activity.decorator.js.map +1 -0
  17. package/dist/decorators/index.d.ts +4 -5
  18. package/dist/decorators/index.js +17 -19
  19. package/dist/decorators/index.js.map +1 -1
  20. package/dist/decorators/parameter.decorator.d.ts +7 -0
  21. package/dist/decorators/parameter.decorator.js +69 -0
  22. package/dist/decorators/parameter.decorator.js.map +1 -0
  23. package/dist/decorators/{scheduling.decorators.d.ts → scheduling.decorator.d.ts} +1 -1
  24. package/dist/decorators/{scheduling.decorators.js → scheduling.decorator.js} +24 -1
  25. package/dist/decorators/scheduling.decorator.js.map +1 -0
  26. package/dist/decorators/workflow.decorator.d.ts +3 -0
  27. package/dist/decorators/workflow.decorator.js +58 -0
  28. package/dist/decorators/workflow.decorator.js.map +1 -0
  29. package/dist/discovery/index.d.ts +2 -2
  30. package/dist/discovery/index.js +2 -2
  31. package/dist/discovery/index.js.map +1 -1
  32. package/dist/discovery/{workflow-discovery.service.d.ts → temporal-discovery.service.d.ts} +21 -18
  33. package/dist/discovery/temporal-discovery.service.js +190 -0
  34. package/dist/discovery/temporal-discovery.service.js.map +1 -0
  35. package/dist/discovery/{schedule-manager.service.d.ts → temporal-schedule-manager.service.d.ts} +20 -15
  36. package/dist/discovery/{schedule-manager.service.js → temporal-schedule-manager.service.js} +96 -76
  37. package/dist/discovery/temporal-schedule-manager.service.js.map +1 -0
  38. package/dist/index.d.ts +6 -11
  39. package/dist/index.js +16 -16
  40. package/dist/index.js.map +1 -1
  41. package/dist/interfaces.d.ts +193 -0
  42. package/dist/interfaces.js +9 -0
  43. package/dist/interfaces.js.map +1 -0
  44. package/dist/temporal.module.d.ts +2 -1
  45. package/dist/temporal.module.js +84 -49
  46. package/dist/temporal.module.js.map +1 -1
  47. package/dist/temporal.service.d.ts +34 -26
  48. package/dist/temporal.service.js +76 -47
  49. package/dist/temporal.service.js.map +1 -1
  50. package/dist/tsconfig.tsbuildinfo +1 -1
  51. package/dist/worker/index.d.ts +1 -1
  52. package/dist/worker/index.js +1 -1
  53. package/dist/worker/index.js.map +1 -1
  54. package/dist/worker/temporal-metadata.accessor.d.ts +13 -5
  55. package/dist/worker/temporal-metadata.accessor.js +38 -26
  56. package/dist/worker/temporal-metadata.accessor.js.map +1 -1
  57. package/dist/worker/{worker-manager.service.d.ts → temporal-worker-manager.service.d.ts} +13 -4
  58. package/dist/worker/{worker-manager.service.js → temporal-worker-manager.service.js} +58 -22
  59. package/dist/worker/temporal-worker-manager.service.js.map +1 -0
  60. package/dist/worker/temporal-worker.module.d.ts +14 -4
  61. package/dist/worker/temporal-worker.module.js +81 -15
  62. package/dist/worker/temporal-worker.module.js.map +1 -1
  63. package/package.json +12 -6
  64. package/dist/decorators/communication.decorators.d.ts +0 -5
  65. package/dist/decorators/communication.decorators.js +0 -66
  66. package/dist/decorators/communication.decorators.js.map +0 -1
  67. package/dist/decorators/core.decorators.d.ts +0 -6
  68. package/dist/decorators/core.decorators.js +0 -87
  69. package/dist/decorators/core.decorators.js.map +0 -1
  70. package/dist/decorators/parameter.decorators.d.ts +0 -2
  71. package/dist/decorators/parameter.decorators.js +0 -29
  72. package/dist/decorators/parameter.decorators.js.map +0 -1
  73. package/dist/decorators/scheduling.decorators.js.map +0 -1
  74. package/dist/decorators/workflow-starter.decorator.d.ts +0 -2
  75. package/dist/decorators/workflow-starter.decorator.js +0 -14
  76. package/dist/decorators/workflow-starter.decorator.js.map +0 -1
  77. package/dist/discovery/schedule-manager.service.js.map +0 -1
  78. package/dist/discovery/workflow-discovery.service.js +0 -216
  79. package/dist/discovery/workflow-discovery.service.js.map +0 -1
  80. package/dist/interfaces/activity.interface.d.ts +0 -8
  81. package/dist/interfaces/activity.interface.js +0 -3
  82. package/dist/interfaces/activity.interface.js.map +0 -1
  83. package/dist/interfaces/core.interface.d.ts +0 -112
  84. package/dist/interfaces/core.interface.js +0 -3
  85. package/dist/interfaces/core.interface.js.map +0 -1
  86. package/dist/interfaces/discovery.interface.d.ts +0 -61
  87. package/dist/interfaces/discovery.interface.js +0 -3
  88. package/dist/interfaces/discovery.interface.js.map +0 -1
  89. package/dist/interfaces/index.d.ts +0 -9
  90. package/dist/interfaces/index.js +0 -29
  91. package/dist/interfaces/index.js.map +0 -1
  92. package/dist/interfaces/scheduling.interface.d.ts +0 -17
  93. package/dist/interfaces/scheduling.interface.js +0 -3
  94. package/dist/interfaces/scheduling.interface.js.map +0 -1
  95. package/dist/interfaces/worker.interface.d.ts +0 -23
  96. package/dist/interfaces/worker.interface.js +0 -3
  97. package/dist/interfaces/worker.interface.js.map +0 -1
  98. package/dist/interfaces/workflow.interface.d.ts +0 -55
  99. package/dist/interfaces/workflow.interface.js +0 -3
  100. package/dist/interfaces/workflow.interface.js.map +0 -1
  101. package/dist/worker/worker-manager.service.js.map +0 -1
@@ -1,112 +0,0 @@
1
- import { ModuleMetadata, Type } from '@nestjs/common';
2
- export interface ConnectionOptions {
3
- address: string;
4
- tls?: boolean | {
5
- serverName?: string;
6
- clientCertPair?: {
7
- crt: Buffer;
8
- key: Buffer;
9
- ca?: Buffer;
10
- };
11
- };
12
- apiKey?: string;
13
- metadata?: Record<string, string>;
14
- }
15
- export interface TemporalClientOptions {
16
- connection: ConnectionOptions;
17
- namespace?: string;
18
- allowConnectionFailure?: boolean;
19
- }
20
- export interface TemporalClientOptionsFactory {
21
- createClientOptions(): Promise<TemporalClientOptions> | TemporalClientOptions;
22
- }
23
- export interface TemporalClientAsyncOptions extends Pick<ModuleMetadata, 'imports'> {
24
- useExisting?: Type<TemporalClientOptionsFactory>;
25
- useClass?: Type<TemporalClientOptionsFactory>;
26
- useFactory?: (...args: any[]) => Promise<TemporalClientOptions> | TemporalClientOptions;
27
- inject?: any[];
28
- }
29
- export interface WorkerCreateOptions {
30
- maxConcurrentActivityTaskExecutions?: number;
31
- maxConcurrentWorkflowTaskExecutions?: number;
32
- maxConcurrentLocalActivityExecutions?: number;
33
- stickyQueueScheduleToStartTimeout?: string | number;
34
- maxHeartbeatThrottleInterval?: string | number;
35
- defaultHeartbeatThrottleInterval?: string | number;
36
- maxActivitiesPerSecond?: number;
37
- maxTaskQueueActivitiesPerSecond?: number;
38
- reuseV8Context?: boolean;
39
- interceptors?: any[];
40
- identity?: string;
41
- buildId?: string;
42
- useVersioning?: boolean;
43
- [key: string]: any;
44
- }
45
- export interface TemporalWorkerOptions {
46
- connection?: ConnectionOptions;
47
- namespace?: string;
48
- taskQueue: string;
49
- workflowsPath?: string;
50
- workflowBundle?: any;
51
- activityClasses?: Array<Type<any>>;
52
- autoStart?: boolean;
53
- allowWorkerFailure?: boolean;
54
- workerOptions?: WorkerCreateOptions;
55
- }
56
- export interface TemporalWorkerOptionsFactory {
57
- createWorkerOptions(): Promise<TemporalWorkerOptions> | TemporalWorkerOptions;
58
- }
59
- export interface TemporalWorkerAsyncOptions extends Pick<ModuleMetadata, 'imports'> {
60
- useExisting?: Type<TemporalWorkerOptionsFactory>;
61
- useClass?: Type<TemporalWorkerOptionsFactory>;
62
- useFactory?: (...args: any[]) => Promise<TemporalWorkerOptions> | TemporalWorkerOptions;
63
- inject?: any[];
64
- }
65
- export interface TemporalOptions {
66
- connection: {
67
- address: string;
68
- namespace?: string;
69
- tls?: boolean | {
70
- serverName?: string;
71
- clientCertPair?: {
72
- crt: Buffer;
73
- key: Buffer;
74
- ca?: Buffer;
75
- };
76
- };
77
- apiKey?: string;
78
- };
79
- taskQueue?: string;
80
- worker?: {
81
- workflowsPath?: string;
82
- workflowBundle?: any;
83
- activityClasses?: Array<Type<any>>;
84
- autoStart?: boolean;
85
- workerOptions?: WorkerCreateOptions;
86
- };
87
- isGlobal?: boolean;
88
- }
89
- export interface TemporalOptionsFactory {
90
- createTemporalOptions(): Promise<TemporalOptions> | TemporalOptions;
91
- }
92
- export interface TemporalAsyncOptions extends Pick<ModuleMetadata, 'imports'> {
93
- useExisting?: Type<TemporalOptionsFactory>;
94
- useClass?: Type<TemporalOptionsFactory>;
95
- useFactory?: (...args: any[]) => Promise<TemporalOptions> | TemporalOptions;
96
- inject?: any[];
97
- isGlobal?: boolean;
98
- }
99
- export interface StartWorkflowOptions {
100
- taskQueue: string;
101
- workflowId?: string;
102
- signal?: {
103
- name: string;
104
- args?: any[];
105
- };
106
- retry?: {
107
- maximumAttempts?: number;
108
- initialInterval?: string | number;
109
- };
110
- searchAttributes?: Record<string, unknown>;
111
- [key: string]: any;
112
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=core.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"core.interface.js","sourceRoot":"","sources":["../../src/interfaces/core.interface.ts"],"names":[],"mappings":""}
@@ -1,61 +0,0 @@
1
- export type WorkflowMethodHandler = (...args: any[]) => any;
2
- export type SignalMethodHandler = (...args: any[]) => void | Promise<void>;
3
- export type QueryMethodHandler = (...args: any[]) => any;
4
- export type ActivityMethodHandler = (...args: any[]) => any | Promise<any>;
5
- export interface WorkflowControllerInfo {
6
- instance: any;
7
- metatype: any;
8
- taskQueue?: string;
9
- methods: WorkflowMethodInfo[];
10
- signals: SignalMethodInfo[];
11
- queries: QueryMethodInfo[];
12
- scheduledMethods: ScheduledMethodInfo[];
13
- }
14
- export interface WorkflowMethodInfo {
15
- methodName: string;
16
- workflowName: string;
17
- options: any;
18
- handler: WorkflowMethodHandler;
19
- }
20
- export interface SignalMethodInfo {
21
- methodName: string;
22
- signalName: string;
23
- options: any;
24
- handler: SignalMethodHandler;
25
- }
26
- export interface QueryMethodInfo {
27
- methodName: string;
28
- queryName: string;
29
- options: any;
30
- handler: QueryMethodHandler;
31
- }
32
- export interface ScheduledMethodInfo {
33
- methodName: string;
34
- workflowName: string;
35
- scheduleOptions: any;
36
- workflowOptions: any;
37
- handler: WorkflowMethodHandler;
38
- controllerInfo: WorkflowControllerInfo;
39
- }
40
- export interface DiscoveryStats {
41
- controllers: number;
42
- methods: number;
43
- scheduled: number;
44
- signals: number;
45
- queries: number;
46
- }
47
- export interface ScheduleStatus {
48
- scheduleId: string;
49
- workflowName: string;
50
- isManaged: boolean;
51
- isActive: boolean;
52
- lastError?: string;
53
- createdAt: Date;
54
- lastUpdatedAt: Date;
55
- }
56
- export interface ScheduleStats {
57
- total: number;
58
- active: number;
59
- inactive: number;
60
- errors: number;
61
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=discovery.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discovery.interface.js","sourceRoot":"","sources":["../../src/interfaces/discovery.interface.ts"],"names":[],"mappings":""}
@@ -1,9 +0,0 @@
1
- export * from './core.interface';
2
- export * from './workflow.interface';
3
- export * from './activity.interface';
4
- export * from './scheduling.interface';
5
- export * from './discovery.interface';
6
- export * from './worker.interface';
7
- export { RetryPolicy, Duration, SearchAttributes } from '@temporalio/common';
8
- export { ScheduleOverlapPolicy, WorkflowHandle, Client } from '@temporalio/client';
9
- export { Worker } from '@temporalio/worker';
@@ -1,29 +0,0 @@
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
- exports.Worker = exports.Client = exports.ScheduleOverlapPolicy = void 0;
18
- __exportStar(require("./core.interface"), exports);
19
- __exportStar(require("./workflow.interface"), exports);
20
- __exportStar(require("./activity.interface"), exports);
21
- __exportStar(require("./scheduling.interface"), exports);
22
- __exportStar(require("./discovery.interface"), exports);
23
- __exportStar(require("./worker.interface"), exports);
24
- var client_1 = require("@temporalio/client");
25
- Object.defineProperty(exports, "ScheduleOverlapPolicy", { enumerable: true, get: function () { return client_1.ScheduleOverlapPolicy; } });
26
- Object.defineProperty(exports, "Client", { enumerable: true, get: function () { return client_1.Client; } });
27
- var worker_1 = require("@temporalio/worker");
28
- Object.defineProperty(exports, "Worker", { enumerable: true, get: function () { return worker_1.Worker; } });
29
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAKA,mDAAiC;AAGjC,uDAAqC;AAGrC,uDAAqC;AAGrC,yDAAuC;AAGvC,wDAAsC;AAGtC,qDAAmC;AAInC,6CAAmF;AAA1E,+GAAA,qBAAqB,OAAA;AAAkB,gGAAA,MAAM,OAAA;AACtD,6CAA4C;AAAnC,gGAAA,MAAM,OAAA"}
@@ -1,17 +0,0 @@
1
- export interface ScheduledOptions {
2
- scheduleId: string;
3
- cron?: string;
4
- interval?: string;
5
- description?: string;
6
- taskQueue?: string;
7
- timezone?: string;
8
- overlapPolicy?: 'ALLOW_ALL' | 'SKIP' | 'BUFFER_ONE' | 'BUFFER_ALL' | 'CANCEL_OTHER';
9
- startPaused?: boolean;
10
- autoStart?: boolean;
11
- }
12
- export interface CronOptions extends Omit<ScheduledOptions, 'cron' | 'interval'> {
13
- scheduleId: string;
14
- }
15
- export interface IntervalOptions extends Omit<ScheduledOptions, 'cron' | 'interval'> {
16
- scheduleId: string;
17
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=scheduling.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scheduling.interface.js","sourceRoot":"","sources":["../../src/interfaces/scheduling.interface.ts"],"names":[],"mappings":""}
@@ -1,23 +0,0 @@
1
- import { ActivityMethodHandler } from './discovery.interface';
2
- export interface ActivityMetadata {
3
- name?: string;
4
- options?: Record<string, any>;
5
- }
6
- export interface ActivityMethodMetadata {
7
- name: string;
8
- originalName: string;
9
- options?: Record<string, any>;
10
- handler: ActivityMethodHandler;
11
- }
12
- export interface WorkerStatus {
13
- isInitialized: boolean;
14
- isRunning: boolean;
15
- isHealthy: boolean;
16
- taskQueue: string;
17
- namespace: string;
18
- workflowSource: 'bundle' | 'filesystem' | 'none';
19
- activitiesCount: number;
20
- lastError?: string;
21
- startedAt?: Date;
22
- uptime?: number;
23
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=worker.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker.interface.js","sourceRoot":"","sources":["../../src/interfaces/worker.interface.ts"],"names":[],"mappings":""}
@@ -1,55 +0,0 @@
1
- import { WorkflowIdReusePolicy, WorkflowIdConflictPolicy } from '../constants';
2
- export interface WorkflowOptions {
3
- name?: string;
4
- taskQueue: string;
5
- timeout?: string | number;
6
- retry?: {
7
- maximumAttempts?: number;
8
- initialInterval?: string | number;
9
- };
10
- workflowIdReusePolicy?: WorkflowIdReusePolicy;
11
- workflowIdConflictPolicy?: WorkflowIdConflictPolicy;
12
- }
13
- export interface WorkflowMethodOptions {
14
- name?: string;
15
- }
16
- export interface WorkflowControllerOptions {
17
- taskQueue?: string;
18
- }
19
- export interface EnhancedWorkflowMethodOptions {
20
- name?: string;
21
- workflowId?: string | ((args: any[]) => string);
22
- timeout?: string | number;
23
- retry?: {
24
- maximumAttempts?: number;
25
- initialInterval?: string | number;
26
- };
27
- searchAttributes?: Record<string, unknown>;
28
- workflowIdReusePolicy?: 'ALLOW_DUPLICATE' | 'ALLOW_DUPLICATE_FAILED_ONLY' | 'REJECT_DUPLICATE';
29
- }
30
- export interface SignalOptions {
31
- name?: string;
32
- }
33
- export interface QueryOptions {
34
- name?: string;
35
- }
36
- export interface WorkflowExecutionContext {
37
- workflowId: string;
38
- runId: string;
39
- workflowType: string;
40
- taskQueue: string;
41
- namespace: string;
42
- }
43
- export interface WorkflowStarterOptions {
44
- workflowType: string;
45
- taskQueue: string;
46
- workflowId?: string | ((args: any[]) => string);
47
- defaultOptions?: {
48
- timeout?: string | number;
49
- retry?: {
50
- maximumAttempts?: number;
51
- initialInterval?: string | number;
52
- };
53
- searchAttributes?: Record<string, unknown>;
54
- };
55
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=workflow.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workflow.interface.js","sourceRoot":"","sources":["../../src/interfaces/workflow.interface.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-manager.service.js","sourceRoot":"","sources":["../../src/worker/worker-manager.service.ts"],"names":[],"mappings":"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"}