nestjs-temporal-core 2.0.4 → 2.0.5
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 +112 -10
- package/dist/client/temporal-client.module.js +7 -0
- package/dist/client/temporal-client.module.js.map +1 -1
- package/dist/client/temporal-client.service.d.ts +4 -0
- package/dist/client/temporal-client.service.js +56 -3
- package/dist/client/temporal-client.service.js.map +1 -1
- package/dist/constants.d.ts +55 -0
- package/dist/constants.js +49 -1
- package/dist/constants.js.map +1 -1
- package/dist/decorators/activity-method.decorator.js.map +1 -1
- package/dist/decorators/activity.decorator.js.map +1 -1
- package/dist/decorators/index.d.ts +1 -0
- package/dist/decorators/index.js +1 -0
- package/dist/decorators/index.js.map +1 -1
- package/dist/decorators/query.decorator.js.map +1 -1
- package/dist/decorators/scheduled-workflow.decorator.js +3 -0
- package/dist/decorators/scheduled-workflow.decorator.js.map +1 -1
- package/dist/decorators/signal.decorator.js.map +1 -1
- package/dist/decorators/update.decorator.d.ts +2 -0
- package/dist/decorators/update.decorator.js +34 -0
- package/dist/decorators/update.decorator.js.map +1 -0
- package/dist/index.d.ts +10 -5
- package/dist/index.js +43 -5
- package/dist/index.js.map +1 -1
- package/dist/interfaces/activity.interface.d.ts +1 -0
- package/dist/interfaces/base.interface.d.ts +10 -1
- package/dist/interfaces/client.interface.d.ts +19 -3
- package/dist/interfaces/client.interface.js +11 -0
- package/dist/interfaces/client.interface.js.map +1 -1
- package/dist/interfaces/index.d.ts +5 -0
- package/dist/interfaces/index.js +14 -0
- package/dist/interfaces/index.js.map +1 -1
- package/dist/interfaces/schedule.interface.d.ts +23 -0
- package/dist/interfaces/worker.interface.d.ts +19 -3
- package/dist/interfaces/workflow.interface.d.ts +7 -0
- package/dist/schedule/temporal-schedule.service.d.ts +2 -4
- package/dist/schedule/temporal-schedule.service.js +13 -33
- package/dist/schedule/temporal-schedule.service.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/worker/temporal-metadata.accessor.d.ts +2 -0
- package/dist/worker/temporal-metadata.accessor.js +12 -0
- package/dist/worker/temporal-metadata.accessor.js.map +1 -1
- package/dist/worker/worker-manager.service.d.ts +3 -2
- package/dist/worker/worker-manager.service.js +50 -12
- package/dist/worker/worker-manager.service.js.map +1 -1
- package/package.json +4 -2
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Update = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
const constants_1 = require("../constants");
|
|
6
|
+
const Update = (options) => {
|
|
7
|
+
return (_target, propertyKey, descriptor) => {
|
|
8
|
+
let updateName;
|
|
9
|
+
let validator;
|
|
10
|
+
if (typeof options === 'string') {
|
|
11
|
+
updateName = options;
|
|
12
|
+
}
|
|
13
|
+
else if (options && typeof options === 'object') {
|
|
14
|
+
updateName = options.name || propertyKey.toString();
|
|
15
|
+
validator = options.validator;
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
updateName = propertyKey.toString();
|
|
19
|
+
}
|
|
20
|
+
Reflect.defineMetadata(constants_1.TEMPORAL_UPDATE_METHOD, true, descriptor.value);
|
|
21
|
+
Reflect.defineMetadata(constants_1.TEMPORAL_UPDATE_NAME, updateName, descriptor.value);
|
|
22
|
+
if (validator) {
|
|
23
|
+
Reflect.defineMetadata(constants_1.TEMPORAL_UPDATE_VALIDATOR, validator, descriptor.value);
|
|
24
|
+
}
|
|
25
|
+
(0, common_1.SetMetadata)(constants_1.TEMPORAL_UPDATE_METHOD, true)(descriptor.value);
|
|
26
|
+
(0, common_1.SetMetadata)(constants_1.TEMPORAL_UPDATE_NAME, updateName)(descriptor.value);
|
|
27
|
+
if (validator) {
|
|
28
|
+
(0, common_1.SetMetadata)(constants_1.TEMPORAL_UPDATE_VALIDATOR, validator)(descriptor.value);
|
|
29
|
+
}
|
|
30
|
+
return descriptor;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
exports.Update = Update;
|
|
34
|
+
//# sourceMappingURL=update.decorator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.decorator.js","sourceRoot":"","sources":["../../src/decorators/update.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAA6C;AAC7C,4CAIsB;AA4Cf,MAAM,MAAM,GAAG,CAAC,OAAsC,EAAmB,EAAE;IAC9E,OAAO,CAAC,OAAgB,EAAE,WAA4B,EAAE,UAA8B,EAAE,EAAE;QAEtF,IAAI,UAAkB,CAAC;QACvB,IAAI,SAAiD,CAAC;QAEtD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,UAAU,GAAG,OAAO,CAAC;QACzB,CAAC;aAAM,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChD,UAAU,GAAG,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;YACpD,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QAClC,CAAC;aAAM,CAAC;YACJ,UAAU,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QACxC,CAAC;QAGD,OAAO,CAAC,cAAc,CAAC,kCAAsB,EAAE,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,cAAc,CAAC,gCAAoB,EAAE,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAE3E,IAAI,SAAS,EAAE,CAAC;YACZ,OAAO,CAAC,cAAc,CAAC,qCAAyB,EAAE,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QACnF,CAAC;QAGD,IAAA,oBAAW,EAAC,kCAAsB,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAA,oBAAW,EAAC,gCAAoB,EAAE,UAAU,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAEhE,IAAI,SAAS,EAAE,CAAC;YACZ,IAAA,oBAAW,EAAC,qCAAyB,EAAE,SAAS,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC,CAAC;AACN,CAAC,CAAC;AAjCW,QAAA,MAAM,UAiCjB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
export * from './client';
|
|
2
|
-
export * from './
|
|
3
|
-
export * from './
|
|
1
|
+
export * from './client/temporal-client.module';
|
|
2
|
+
export * from './client/temporal-client.service';
|
|
3
|
+
export * from './worker/temporal-worker.module';
|
|
4
|
+
export * from './worker/worker-manager.service';
|
|
5
|
+
export * from './worker/temporal-metadata.accessor';
|
|
6
|
+
export * from './schedule/temporal-schedule.module';
|
|
7
|
+
export * from './schedule/temporal-schedule.service';
|
|
4
8
|
export * from './decorators';
|
|
5
|
-
export
|
|
6
|
-
export
|
|
9
|
+
export { ConnectionOptions, ClientCertPair, TlsOptions, TemporalClientOptions, TemporalClientAsyncOptions, TemporalClientOptionsFactory, StartWorkflowOptions, TemporalWorkerOptions, TemporalWorkerAsyncOptions, TemporalWorkerOptionsFactory, TemporalScheduleOptions, TemporalScheduleAsyncOptions, TemporalScheduleOptionsFactory, ListSchedulesOptions, ScheduleSpec, ScheduleAction, BackfillOptions, ActivityOptions, ActivityMethodOptions, WorkflowOptions, WorkflowMethodOptions, QueryMethodOptions, SignalMethodOptions, UpdateMethodOptions, } from './interfaces';
|
|
10
|
+
export { TEMPORAL_MODULE_OPTIONS, TEMPORAL_CLIENT_MODULE_OPTIONS, TEMPORAL_WORKER_MODULE_OPTIONS, TEMPORAL_SCHEDULE_MODULE_OPTIONS, TEMPORAL_CLIENT, TEMPORAL_CONNECTION, TEMPORAL_SCHEDULE_CLIENT, TEMPORAL_ACTIVITY, TEMPORAL_ACTIVITY_METHOD, TEMPORAL_ACTIVITY_METHOD_NAME, TEMPORAL_ACTIVITY_METHOD_OPTIONS, TEMPORAL_WORKFLOW, TEMPORAL_WORKFLOW_METHOD, TEMPORAL_WORKFLOW_METHOD_NAME, TEMPORAL_WORKFLOW_OPTIONS, TEMPORAL_SIGNAL_METHOD, TEMPORAL_SIGNAL_NAME, TEMPORAL_QUERY_METHOD, TEMPORAL_QUERY_NAME, TEMPORAL_UPDATE_METHOD, TEMPORAL_UPDATE_NAME, TEMPORAL_UPDATE_VALIDATOR, DEFAULT_NAMESPACE, DEFAULT_TASK_QUEUE, DEFAULT_CONNECTION_TIMEOUT_MS, ERRORS, } from './constants';
|
|
11
|
+
export { ActivityCancellationType, WorkflowIdReusePolicy, WorkflowIdConflictPolicy, ChildWorkflowCancellationType, ParentClosePolicy, ScheduleOverlapPolicy, VersioningIntent, } from './constants';
|
package/dist/index.js
CHANGED
|
@@ -14,10 +14,48 @@ 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
|
-
|
|
18
|
-
__exportStar(require("./
|
|
19
|
-
__exportStar(require("./
|
|
17
|
+
exports.VersioningIntent = exports.ScheduleOverlapPolicy = exports.ParentClosePolicy = exports.ChildWorkflowCancellationType = exports.WorkflowIdConflictPolicy = exports.WorkflowIdReusePolicy = exports.ActivityCancellationType = exports.ERRORS = exports.DEFAULT_CONNECTION_TIMEOUT_MS = exports.DEFAULT_TASK_QUEUE = exports.DEFAULT_NAMESPACE = exports.TEMPORAL_UPDATE_VALIDATOR = exports.TEMPORAL_UPDATE_NAME = exports.TEMPORAL_UPDATE_METHOD = exports.TEMPORAL_QUERY_NAME = exports.TEMPORAL_QUERY_METHOD = exports.TEMPORAL_SIGNAL_NAME = exports.TEMPORAL_SIGNAL_METHOD = exports.TEMPORAL_WORKFLOW_OPTIONS = exports.TEMPORAL_WORKFLOW_METHOD_NAME = exports.TEMPORAL_WORKFLOW_METHOD = exports.TEMPORAL_WORKFLOW = exports.TEMPORAL_ACTIVITY_METHOD_OPTIONS = exports.TEMPORAL_ACTIVITY_METHOD_NAME = exports.TEMPORAL_ACTIVITY_METHOD = exports.TEMPORAL_ACTIVITY = exports.TEMPORAL_SCHEDULE_CLIENT = exports.TEMPORAL_CONNECTION = exports.TEMPORAL_CLIENT = exports.TEMPORAL_SCHEDULE_MODULE_OPTIONS = exports.TEMPORAL_WORKER_MODULE_OPTIONS = exports.TEMPORAL_CLIENT_MODULE_OPTIONS = exports.TEMPORAL_MODULE_OPTIONS = void 0;
|
|
18
|
+
__exportStar(require("./client/temporal-client.module"), exports);
|
|
19
|
+
__exportStar(require("./client/temporal-client.service"), exports);
|
|
20
|
+
__exportStar(require("./worker/temporal-worker.module"), exports);
|
|
21
|
+
__exportStar(require("./worker/worker-manager.service"), exports);
|
|
22
|
+
__exportStar(require("./worker/temporal-metadata.accessor"), exports);
|
|
23
|
+
__exportStar(require("./schedule/temporal-schedule.module"), exports);
|
|
24
|
+
__exportStar(require("./schedule/temporal-schedule.service"), exports);
|
|
20
25
|
__exportStar(require("./decorators"), exports);
|
|
21
|
-
|
|
22
|
-
|
|
26
|
+
var constants_1 = require("./constants");
|
|
27
|
+
Object.defineProperty(exports, "TEMPORAL_MODULE_OPTIONS", { enumerable: true, get: function () { return constants_1.TEMPORAL_MODULE_OPTIONS; } });
|
|
28
|
+
Object.defineProperty(exports, "TEMPORAL_CLIENT_MODULE_OPTIONS", { enumerable: true, get: function () { return constants_1.TEMPORAL_CLIENT_MODULE_OPTIONS; } });
|
|
29
|
+
Object.defineProperty(exports, "TEMPORAL_WORKER_MODULE_OPTIONS", { enumerable: true, get: function () { return constants_1.TEMPORAL_WORKER_MODULE_OPTIONS; } });
|
|
30
|
+
Object.defineProperty(exports, "TEMPORAL_SCHEDULE_MODULE_OPTIONS", { enumerable: true, get: function () { return constants_1.TEMPORAL_SCHEDULE_MODULE_OPTIONS; } });
|
|
31
|
+
Object.defineProperty(exports, "TEMPORAL_CLIENT", { enumerable: true, get: function () { return constants_1.TEMPORAL_CLIENT; } });
|
|
32
|
+
Object.defineProperty(exports, "TEMPORAL_CONNECTION", { enumerable: true, get: function () { return constants_1.TEMPORAL_CONNECTION; } });
|
|
33
|
+
Object.defineProperty(exports, "TEMPORAL_SCHEDULE_CLIENT", { enumerable: true, get: function () { return constants_1.TEMPORAL_SCHEDULE_CLIENT; } });
|
|
34
|
+
Object.defineProperty(exports, "TEMPORAL_ACTIVITY", { enumerable: true, get: function () { return constants_1.TEMPORAL_ACTIVITY; } });
|
|
35
|
+
Object.defineProperty(exports, "TEMPORAL_ACTIVITY_METHOD", { enumerable: true, get: function () { return constants_1.TEMPORAL_ACTIVITY_METHOD; } });
|
|
36
|
+
Object.defineProperty(exports, "TEMPORAL_ACTIVITY_METHOD_NAME", { enumerable: true, get: function () { return constants_1.TEMPORAL_ACTIVITY_METHOD_NAME; } });
|
|
37
|
+
Object.defineProperty(exports, "TEMPORAL_ACTIVITY_METHOD_OPTIONS", { enumerable: true, get: function () { return constants_1.TEMPORAL_ACTIVITY_METHOD_OPTIONS; } });
|
|
38
|
+
Object.defineProperty(exports, "TEMPORAL_WORKFLOW", { enumerable: true, get: function () { return constants_1.TEMPORAL_WORKFLOW; } });
|
|
39
|
+
Object.defineProperty(exports, "TEMPORAL_WORKFLOW_METHOD", { enumerable: true, get: function () { return constants_1.TEMPORAL_WORKFLOW_METHOD; } });
|
|
40
|
+
Object.defineProperty(exports, "TEMPORAL_WORKFLOW_METHOD_NAME", { enumerable: true, get: function () { return constants_1.TEMPORAL_WORKFLOW_METHOD_NAME; } });
|
|
41
|
+
Object.defineProperty(exports, "TEMPORAL_WORKFLOW_OPTIONS", { enumerable: true, get: function () { return constants_1.TEMPORAL_WORKFLOW_OPTIONS; } });
|
|
42
|
+
Object.defineProperty(exports, "TEMPORAL_SIGNAL_METHOD", { enumerable: true, get: function () { return constants_1.TEMPORAL_SIGNAL_METHOD; } });
|
|
43
|
+
Object.defineProperty(exports, "TEMPORAL_SIGNAL_NAME", { enumerable: true, get: function () { return constants_1.TEMPORAL_SIGNAL_NAME; } });
|
|
44
|
+
Object.defineProperty(exports, "TEMPORAL_QUERY_METHOD", { enumerable: true, get: function () { return constants_1.TEMPORAL_QUERY_METHOD; } });
|
|
45
|
+
Object.defineProperty(exports, "TEMPORAL_QUERY_NAME", { enumerable: true, get: function () { return constants_1.TEMPORAL_QUERY_NAME; } });
|
|
46
|
+
Object.defineProperty(exports, "TEMPORAL_UPDATE_METHOD", { enumerable: true, get: function () { return constants_1.TEMPORAL_UPDATE_METHOD; } });
|
|
47
|
+
Object.defineProperty(exports, "TEMPORAL_UPDATE_NAME", { enumerable: true, get: function () { return constants_1.TEMPORAL_UPDATE_NAME; } });
|
|
48
|
+
Object.defineProperty(exports, "TEMPORAL_UPDATE_VALIDATOR", { enumerable: true, get: function () { return constants_1.TEMPORAL_UPDATE_VALIDATOR; } });
|
|
49
|
+
Object.defineProperty(exports, "DEFAULT_NAMESPACE", { enumerable: true, get: function () { return constants_1.DEFAULT_NAMESPACE; } });
|
|
50
|
+
Object.defineProperty(exports, "DEFAULT_TASK_QUEUE", { enumerable: true, get: function () { return constants_1.DEFAULT_TASK_QUEUE; } });
|
|
51
|
+
Object.defineProperty(exports, "DEFAULT_CONNECTION_TIMEOUT_MS", { enumerable: true, get: function () { return constants_1.DEFAULT_CONNECTION_TIMEOUT_MS; } });
|
|
52
|
+
Object.defineProperty(exports, "ERRORS", { enumerable: true, get: function () { return constants_1.ERRORS; } });
|
|
53
|
+
var constants_2 = require("./constants");
|
|
54
|
+
Object.defineProperty(exports, "ActivityCancellationType", { enumerable: true, get: function () { return constants_2.ActivityCancellationType; } });
|
|
55
|
+
Object.defineProperty(exports, "WorkflowIdReusePolicy", { enumerable: true, get: function () { return constants_2.WorkflowIdReusePolicy; } });
|
|
56
|
+
Object.defineProperty(exports, "WorkflowIdConflictPolicy", { enumerable: true, get: function () { return constants_2.WorkflowIdConflictPolicy; } });
|
|
57
|
+
Object.defineProperty(exports, "ChildWorkflowCancellationType", { enumerable: true, get: function () { return constants_2.ChildWorkflowCancellationType; } });
|
|
58
|
+
Object.defineProperty(exports, "ParentClosePolicy", { enumerable: true, get: function () { return constants_2.ParentClosePolicy; } });
|
|
59
|
+
Object.defineProperty(exports, "ScheduleOverlapPolicy", { enumerable: true, get: function () { return constants_2.ScheduleOverlapPolicy; } });
|
|
60
|
+
Object.defineProperty(exports, "VersioningIntent", { enumerable: true, get: function () { return constants_2.VersioningIntent; } });
|
|
23
61
|
//# 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":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAMA,kEAAgD;AAChD,mEAAiD;AACjD,kEAAgD;AAChD,kEAAgD;AAChD,sEAAoD;AACpD,sEAAoD;AACpD,uEAAqD;AAGrD,+CAA6B;AAuC7B,yCAmCqB;AAjCjB,oHAAA,uBAAuB,OAAA;AACvB,2HAAA,8BAA8B,OAAA;AAC9B,2HAAA,8BAA8B,OAAA;AAC9B,6HAAA,gCAAgC,OAAA;AAChC,4GAAA,eAAe,OAAA;AACf,gHAAA,mBAAmB,OAAA;AACnB,qHAAA,wBAAwB,OAAA;AAExB,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA;AACxB,0HAAA,6BAA6B,OAAA;AAC7B,6HAAA,gCAAgC,OAAA;AAEhC,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA;AACxB,0HAAA,6BAA6B,OAAA;AAC7B,sHAAA,yBAAyB,OAAA;AAEzB,mHAAA,sBAAsB,OAAA;AACtB,iHAAA,oBAAoB,OAAA;AAEpB,kHAAA,qBAAqB,OAAA;AACrB,gHAAA,mBAAmB,OAAA;AAEnB,mHAAA,sBAAsB,OAAA;AACtB,iHAAA,oBAAoB,OAAA;AACpB,sHAAA,yBAAyB,OAAA;AAEzB,8GAAA,iBAAiB,OAAA;AACjB,+GAAA,kBAAkB,OAAA;AAClB,0HAAA,6BAA6B,OAAA;AAE7B,mGAAA,MAAM,OAAA;AAKV,yCAQqB;AAPjB,qHAAA,wBAAwB,OAAA;AACxB,kHAAA,qBAAqB,OAAA;AACrB,qHAAA,wBAAwB,OAAA;AACxB,0HAAA,6BAA6B,OAAA;AAC7B,8GAAA,iBAAiB,OAAA;AACjB,kHAAA,qBAAqB,OAAA;AACrB,6GAAA,gBAAgB,OAAA"}
|
|
@@ -10,6 +10,15 @@ export interface TlsOptions {
|
|
|
10
10
|
}
|
|
11
11
|
export interface ConnectionOptions {
|
|
12
12
|
address: string;
|
|
13
|
-
tls?: TlsOptions;
|
|
13
|
+
tls?: TlsOptions | boolean;
|
|
14
14
|
connectionTimeout?: number;
|
|
15
|
+
apiKey?: string;
|
|
16
|
+
metadata?: Record<string, string>;
|
|
17
|
+
proxy?: {
|
|
18
|
+
targetHost: string;
|
|
19
|
+
basicAuth?: {
|
|
20
|
+
username: string;
|
|
21
|
+
password: string;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
15
24
|
}
|
|
@@ -1,7 +1,19 @@
|
|
|
1
1
|
import { ModuleMetadata, Type } from '@nestjs/common';
|
|
2
|
-
import { RetryPolicy,
|
|
3
|
-
import { Duration
|
|
2
|
+
import { RetryPolicy, SearchAttributes } from '@temporalio/common';
|
|
3
|
+
import { Duration } from '@temporalio/common';
|
|
4
4
|
import { ConnectionOptions } from './base.interface';
|
|
5
|
+
export declare const WorkflowIdConflictPolicy: {
|
|
6
|
+
FAIL: string;
|
|
7
|
+
USE_EXISTING: string;
|
|
8
|
+
TERMINATE_EXISTING: string;
|
|
9
|
+
};
|
|
10
|
+
export type WorkflowIdConflictPolicy = (typeof WorkflowIdConflictPolicy)[keyof typeof WorkflowIdConflictPolicy];
|
|
11
|
+
export declare const WorkflowIdReusePolicy: {
|
|
12
|
+
ALLOW_DUPLICATE: string;
|
|
13
|
+
ALLOW_DUPLICATE_FAILED_ONLY: string;
|
|
14
|
+
REJECT_DUPLICATE: string;
|
|
15
|
+
};
|
|
16
|
+
export type WorkflowIdReusePolicy = (typeof WorkflowIdReusePolicy)[keyof typeof WorkflowIdReusePolicy];
|
|
5
17
|
export interface TemporalClientOptions {
|
|
6
18
|
connection: ConnectionOptions;
|
|
7
19
|
namespace?: string;
|
|
@@ -26,7 +38,10 @@ export interface TemporalClientAsyncOptions extends Pick<ModuleMetadata, 'import
|
|
|
26
38
|
export interface StartWorkflowOptions {
|
|
27
39
|
taskQueue: string;
|
|
28
40
|
workflowId?: string;
|
|
29
|
-
signal?:
|
|
41
|
+
signal?: {
|
|
42
|
+
name: string;
|
|
43
|
+
args?: any[];
|
|
44
|
+
};
|
|
30
45
|
cronSchedule?: string;
|
|
31
46
|
retry?: RetryPolicy;
|
|
32
47
|
startDelay?: Duration;
|
|
@@ -36,6 +51,7 @@ export interface StartWorkflowOptions {
|
|
|
36
51
|
workflowIdReusePolicy?: WorkflowIdReusePolicy;
|
|
37
52
|
workflowIdConflictPolicy?: WorkflowIdConflictPolicy;
|
|
38
53
|
searchAttributes?: SearchAttributes;
|
|
54
|
+
typedSearchAttributes?: Record<string, unknown>;
|
|
39
55
|
followRuns?: boolean;
|
|
40
56
|
memo?: Record<string, unknown>;
|
|
41
57
|
}
|
|
@@ -1,3 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowIdReusePolicy = exports.WorkflowIdConflictPolicy = void 0;
|
|
4
|
+
exports.WorkflowIdConflictPolicy = {
|
|
5
|
+
FAIL: 'FAIL',
|
|
6
|
+
USE_EXISTING: 'USE_EXISTING',
|
|
7
|
+
TERMINATE_EXISTING: 'TERMINATE_EXISTING',
|
|
8
|
+
};
|
|
9
|
+
exports.WorkflowIdReusePolicy = {
|
|
10
|
+
ALLOW_DUPLICATE: 'ALLOW_DUPLICATE',
|
|
11
|
+
ALLOW_DUPLICATE_FAILED_ONLY: 'ALLOW_DUPLICATE_FAILED_ONLY',
|
|
12
|
+
REJECT_DUPLICATE: 'REJECT_DUPLICATE',
|
|
13
|
+
};
|
|
3
14
|
//# sourceMappingURL=client.interface.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.interface.js","sourceRoot":"","sources":["../../src/interfaces/client.interface.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"client.interface.js","sourceRoot":"","sources":["../../src/interfaces/client.interface.ts"],"names":[],"mappings":";;;AAWa,QAAA,wBAAwB,GAAG;IAIpC,IAAI,EAAE,MAAM;IAKZ,YAAY,EAAE,cAAc;IAK5B,kBAAkB,EAAE,oBAAoB;CAC3C,CAAC;AAQW,QAAA,qBAAqB,GAAG;IAKjC,eAAe,EAAE,iBAAiB;IAKlC,2BAA2B,EAAE,6BAA6B;IAK1D,gBAAgB,EAAE,kBAAkB;CACvC,CAAC"}
|
|
@@ -4,3 +4,8 @@ export * from './worker.interface';
|
|
|
4
4
|
export * from './workflow.interface';
|
|
5
5
|
export * from './activity.interface';
|
|
6
6
|
export * from './schedule.interface';
|
|
7
|
+
export { RetryPolicy, Duration, SearchAttributes, VersioningIntent, LogLevel, } from '@temporalio/common';
|
|
8
|
+
export { ScheduleOverlapPolicy, WorkflowExecution, WorkflowHandle, Client, Connection, WorkflowClient, } from '@temporalio/client';
|
|
9
|
+
export { Worker, NativeConnection, Runtime, RuntimeOptions, WorkerOptions as TemporalWorkerSDKOptions, } from '@temporalio/worker';
|
|
10
|
+
export { Workflow, WorkflowInfo, ContinueAsNewOptions, ParentClosePolicy, ChildWorkflowOptions, } from '@temporalio/workflow';
|
|
11
|
+
export { ActivityInterface, Context as ActivityContext, Info as ActivityInfo, } from '@temporalio/activity';
|
package/dist/interfaces/index.js
CHANGED
|
@@ -14,10 +14,24 @@ 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.ActivityContext = exports.ParentClosePolicy = exports.Runtime = exports.NativeConnection = exports.Worker = exports.WorkflowClient = exports.Connection = exports.Client = exports.ScheduleOverlapPolicy = void 0;
|
|
17
18
|
__exportStar(require("./base.interface"), exports);
|
|
18
19
|
__exportStar(require("./client.interface"), exports);
|
|
19
20
|
__exportStar(require("./worker.interface"), exports);
|
|
20
21
|
__exportStar(require("./workflow.interface"), exports);
|
|
21
22
|
__exportStar(require("./activity.interface"), exports);
|
|
22
23
|
__exportStar(require("./schedule.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
|
+
Object.defineProperty(exports, "Connection", { enumerable: true, get: function () { return client_1.Connection; } });
|
|
28
|
+
Object.defineProperty(exports, "WorkflowClient", { enumerable: true, get: function () { return client_1.WorkflowClient; } });
|
|
29
|
+
var worker_1 = require("@temporalio/worker");
|
|
30
|
+
Object.defineProperty(exports, "Worker", { enumerable: true, get: function () { return worker_1.Worker; } });
|
|
31
|
+
Object.defineProperty(exports, "NativeConnection", { enumerable: true, get: function () { return worker_1.NativeConnection; } });
|
|
32
|
+
Object.defineProperty(exports, "Runtime", { enumerable: true, get: function () { return worker_1.Runtime; } });
|
|
33
|
+
var workflow_1 = require("@temporalio/workflow");
|
|
34
|
+
Object.defineProperty(exports, "ParentClosePolicy", { enumerable: true, get: function () { return workflow_1.ParentClosePolicy; } });
|
|
35
|
+
var activity_1 = require("@temporalio/activity");
|
|
36
|
+
Object.defineProperty(exports, "ActivityContext", { enumerable: true, get: function () { return activity_1.Context; } });
|
|
23
37
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAQA,mDAAiC;AAGjC,qDAAmC;AAGnC,qDAAmC;AAGnC,uDAAqC;AAGrC,uDAAqC;AAGrC,uDAAqC;AAWrC,6CAO4B;AANxB,+GAAA,qBAAqB,OAAA;AAGrB,gGAAA,MAAM,OAAA;AACN,oGAAA,UAAU,OAAA;AACV,wGAAA,cAAc,OAAA;AAGlB,6CAM4B;AALxB,gGAAA,MAAM,OAAA;AACN,0GAAA,gBAAgB,OAAA;AAChB,iGAAA,OAAO,OAAA;AAKX,iDAM8B;AAF1B,6GAAA,iBAAiB,OAAA;AAIrB,iDAI8B;AAF1B,2GAAA,OAAO,OAAmB"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ModuleMetadata, Type } from '@nestjs/common';
|
|
2
|
+
import { ScheduleOverlapPolicy } from '@temporalio/client';
|
|
2
3
|
export interface TemporalScheduleOptions {
|
|
3
4
|
namespace?: string;
|
|
4
5
|
}
|
|
@@ -15,3 +16,25 @@ export interface ListSchedulesOptions {
|
|
|
15
16
|
pageSize?: number;
|
|
16
17
|
query?: string;
|
|
17
18
|
}
|
|
19
|
+
export interface ScheduleSpec {
|
|
20
|
+
cronExpressions?: string[];
|
|
21
|
+
intervals?: {
|
|
22
|
+
every: {
|
|
23
|
+
seconds?: number;
|
|
24
|
+
minutes?: number;
|
|
25
|
+
hours?: number;
|
|
26
|
+
days?: number;
|
|
27
|
+
};
|
|
28
|
+
}[];
|
|
29
|
+
}
|
|
30
|
+
export interface ScheduleAction {
|
|
31
|
+
workflowType: string;
|
|
32
|
+
taskQueue: string;
|
|
33
|
+
args?: any[];
|
|
34
|
+
memo?: Record<string, unknown>;
|
|
35
|
+
}
|
|
36
|
+
export interface BackfillOptions {
|
|
37
|
+
startTime: Date;
|
|
38
|
+
endTime: Date;
|
|
39
|
+
overlap?: ScheduleOverlapPolicy;
|
|
40
|
+
}
|
|
@@ -1,18 +1,34 @@
|
|
|
1
1
|
import { ModuleMetadata, Type } from '@nestjs/common';
|
|
2
|
-
import {
|
|
2
|
+
import { RuntimeOptions, DataConverter } from '@temporalio/worker';
|
|
3
|
+
import { ConnectionOptions } from './base.interface';
|
|
3
4
|
export interface TemporalWorkerOptions {
|
|
4
|
-
connection:
|
|
5
|
+
connection: ConnectionOptions;
|
|
5
6
|
namespace?: string;
|
|
6
7
|
taskQueue: string;
|
|
7
8
|
workflowsPath: string;
|
|
8
9
|
activityClasses?: Array<Type<any>>;
|
|
9
10
|
runtimeOptions?: RuntimeOptions;
|
|
10
|
-
|
|
11
|
+
reuseV8Context?: boolean;
|
|
12
|
+
maxConcurrentWorkflowTaskExecutions?: number;
|
|
13
|
+
maxConcurrentActivityTaskExecutions?: number;
|
|
14
|
+
maxConcurrentLocalActivityExecutions?: number;
|
|
15
|
+
maxConcurrentWorkflowTaskPolls?: number;
|
|
16
|
+
maxConcurrentActivityTaskPolls?: number;
|
|
17
|
+
maxCachedWorkflows?: number;
|
|
18
|
+
workflowThreadPoolSize?: number;
|
|
19
|
+
debugMode?: boolean;
|
|
20
|
+
showStackTraceSources?: boolean;
|
|
21
|
+
useVersioning?: boolean;
|
|
22
|
+
buildId?: string;
|
|
11
23
|
autoStart?: {
|
|
12
24
|
enabled?: boolean;
|
|
13
25
|
delayMs?: number;
|
|
14
26
|
};
|
|
15
27
|
allowWorkerFailure?: boolean;
|
|
28
|
+
maxActivitiesPerSecond?: number;
|
|
29
|
+
maxTaskQueueActivitiesPerSecond?: number;
|
|
30
|
+
dataConverter?: DataConverter;
|
|
31
|
+
workflowTaskTimeout?: string | number;
|
|
16
32
|
monitoring?: {
|
|
17
33
|
statsIntervalMs?: number;
|
|
18
34
|
metrics?: {
|
|
@@ -7,6 +7,9 @@ export interface WorkflowOptions {
|
|
|
7
7
|
workflowRunTimeout?: string | number;
|
|
8
8
|
workflowTaskTimeout?: string | number;
|
|
9
9
|
retry?: RetryPolicy;
|
|
10
|
+
cronSchedule?: string;
|
|
11
|
+
workflowIdReusePolicy?: 'ALLOW_DUPLICATE' | 'ALLOW_DUPLICATE_FAILED_ONLY' | 'REJECT_DUPLICATE';
|
|
12
|
+
workflowIdConflictPolicy?: 'FAIL' | 'USE_EXISTING' | 'TERMINATE_EXISTING';
|
|
10
13
|
}
|
|
11
14
|
export interface WorkflowMethodOptions {
|
|
12
15
|
name?: string;
|
|
@@ -17,3 +20,7 @@ export interface QueryMethodOptions {
|
|
|
17
20
|
export interface SignalMethodOptions {
|
|
18
21
|
name?: string;
|
|
19
22
|
}
|
|
23
|
+
export interface UpdateMethodOptions {
|
|
24
|
+
name?: string;
|
|
25
|
+
validator?: (...args: any[]) => void;
|
|
26
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { OnModuleInit } from '@nestjs/common';
|
|
2
|
-
import { Client, ScheduleHandle,
|
|
2
|
+
import { Client, ScheduleHandle, ScheduleOverlapPolicy } from '@temporalio/client';
|
|
3
3
|
import { TemporalScheduleOptions } from '../interfaces';
|
|
4
4
|
export declare class TemporalScheduleService implements OnModuleInit {
|
|
5
5
|
private readonly options;
|
|
@@ -21,8 +21,6 @@ export declare class TemporalScheduleService implements OnModuleInit {
|
|
|
21
21
|
pauseSchedule(scheduleId: string, note?: string): Promise<void>;
|
|
22
22
|
resumeSchedule(scheduleId: string, note?: string): Promise<void>;
|
|
23
23
|
triggerNow(scheduleId: string, overlap?: ScheduleOverlapPolicy): Promise<void>;
|
|
24
|
-
|
|
25
|
-
describeSchedule(scheduleId: string): Promise<ScheduleDescription>;
|
|
26
|
-
listSchedules(pageSize?: number): Promise<ScheduleSummary[]>;
|
|
24
|
+
listSchedules(pageSize?: number): Promise<any[]>;
|
|
27
25
|
private formatInterval;
|
|
28
26
|
}
|
|
@@ -15,7 +15,6 @@ var TemporalScheduleService_1;
|
|
|
15
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
16
|
exports.TemporalScheduleService = void 0;
|
|
17
17
|
const common_1 = require("@nestjs/common");
|
|
18
|
-
const client_1 = require("@temporalio/client");
|
|
19
18
|
const constants_1 = require("../constants");
|
|
20
19
|
let TemporalScheduleService = TemporalScheduleService_1 = class TemporalScheduleService {
|
|
21
20
|
constructor(options, client) {
|
|
@@ -26,8 +25,17 @@ let TemporalScheduleService = TemporalScheduleService_1 = class TemporalSchedule
|
|
|
26
25
|
}
|
|
27
26
|
async onModuleInit() {
|
|
28
27
|
if (this.client) {
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
try {
|
|
29
|
+
if (typeof this.client.schedule === 'undefined') {
|
|
30
|
+
this.logger.warn('Schedule client not available in this Temporal SDK version');
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
this.scheduleClient = this.client.schedule;
|
|
34
|
+
this.logger.log(`Temporal schedule client initialized with namespace: ${this.options.namespace}`);
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
this.logger.error('Failed to initialize schedule client', error);
|
|
38
|
+
}
|
|
31
39
|
}
|
|
32
40
|
else {
|
|
33
41
|
this.logger.warn('Temporal client not initialized - schedule features will be unavailable');
|
|
@@ -153,11 +161,11 @@ let TemporalScheduleService = TemporalScheduleService_1 = class TemporalSchedule
|
|
|
153
161
|
throw new Error(`Failed to resume schedule '${scheduleId}': ${error.message}`);
|
|
154
162
|
}
|
|
155
163
|
}
|
|
156
|
-
async triggerNow(scheduleId, overlap) {
|
|
164
|
+
async triggerNow(scheduleId, overlap = 'ALLOW_ALL') {
|
|
157
165
|
this.ensureClientInitialized();
|
|
158
166
|
try {
|
|
159
167
|
const handle = this.scheduleClient.getHandle(scheduleId);
|
|
160
|
-
await handle.trigger(overlap
|
|
168
|
+
await handle.trigger(overlap);
|
|
161
169
|
this.logger.log(`Triggered immediate run of schedule: ${scheduleId}`);
|
|
162
170
|
}
|
|
163
171
|
catch (error) {
|
|
@@ -165,34 +173,6 @@ let TemporalScheduleService = TemporalScheduleService_1 = class TemporalSchedule
|
|
|
165
173
|
throw new Error(`Failed to trigger schedule '${scheduleId}': ${error.message}`);
|
|
166
174
|
}
|
|
167
175
|
}
|
|
168
|
-
async backfill(scheduleId, startTime, endTime, overlap) {
|
|
169
|
-
this.ensureClientInitialized();
|
|
170
|
-
try {
|
|
171
|
-
const handle = this.scheduleClient.getHandle(scheduleId);
|
|
172
|
-
const backfill = {
|
|
173
|
-
start: startTime,
|
|
174
|
-
end: endTime,
|
|
175
|
-
overlap: overlap || client_1.ScheduleOverlapPolicy.ALLOW_ALL,
|
|
176
|
-
};
|
|
177
|
-
await handle.backfill(backfill);
|
|
178
|
-
this.logger.log(`Backfilled schedule: ${scheduleId} from ${startTime.toISOString()} to ${endTime.toISOString()}`);
|
|
179
|
-
}
|
|
180
|
-
catch (error) {
|
|
181
|
-
this.logger.error(`Failed to backfill schedule '${scheduleId}': ${error.message}`);
|
|
182
|
-
throw new Error(`Failed to backfill schedule '${scheduleId}': ${error.message}`);
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
async describeSchedule(scheduleId) {
|
|
186
|
-
this.ensureClientInitialized();
|
|
187
|
-
try {
|
|
188
|
-
const handle = this.scheduleClient.getHandle(scheduleId);
|
|
189
|
-
return await handle.describe();
|
|
190
|
-
}
|
|
191
|
-
catch (error) {
|
|
192
|
-
this.logger.error(`Failed to describe schedule '${scheduleId}': ${error.message}`);
|
|
193
|
-
throw new Error(`Failed to describe schedule '${scheduleId}': ${error.message}`);
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
176
|
async listSchedules(pageSize = 100) {
|
|
197
177
|
this.ensureClientInitialized();
|
|
198
178
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temporal-schedule.service.js","sourceRoot":"","sources":["../../src/schedule/temporal-schedule.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA0E;
|
|
1
|
+
{"version":3,"file":"temporal-schedule.service.js","sourceRoot":"","sources":["../../src/schedule/temporal-schedule.service.ts"],"names":[],"mappings":"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"}
|