nestjs-temporal-core 3.2.6 → 3.2.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 +303 -5
- package/dist/index.d.ts +1 -0
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +40 -104
- package/dist/interfaces.js +2 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/services/temporal-client.service.d.ts +6 -5
- package/dist/services/temporal-client.service.js +40 -2
- package/dist/services/temporal-client.service.js.map +1 -1
- package/dist/services/temporal-schedule.service.d.ts +1 -0
- package/dist/services/temporal-schedule.service.js +46 -21
- package/dist/services/temporal-schedule.service.js.map +1 -1
- package/dist/services/temporal-worker.service.js +7 -9
- package/dist/services/temporal-worker.service.js.map +1 -1
- package/dist/services/temporal.service.d.ts +1 -0
- package/dist/services/temporal.service.js +17 -0
- package/dist/services/temporal.service.js.map +1 -1
- package/dist/temporal.module.js +17 -2
- package/dist/temporal.module.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +4 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/logger.d.ts +1 -0
- package/dist/utils/logger.js +11 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/workflow-token.d.ts +5 -0
- package/dist/utils/workflow-token.js +16 -0
- package/dist/utils/workflow-token.js.map +1 -0
- package/dist/workflow-proxy/index.d.ts +2 -0
- package/dist/workflow-proxy/index.js +8 -0
- package/dist/workflow-proxy/index.js.map +1 -0
- package/dist/workflow-proxy/workflow-proxy.d.ts +26 -0
- package/dist/workflow-proxy/workflow-proxy.factory.d.ts +9 -0
- package/dist/workflow-proxy/workflow-proxy.factory.js +29 -0
- package/dist/workflow-proxy/workflow-proxy.factory.js.map +1 -0
- package/dist/workflow-proxy/workflow-proxy.js +41 -0
- package/dist/workflow-proxy/workflow-proxy.js.map +1 -0
- package/package.json +3 -2
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { createLogger, LoggerUtils, TemporalLogger, TemporalLoggerManager } from './logger';
|
|
2
2
|
export { isValidCronExpression, isValidIntervalExpression } from './validation';
|
|
3
3
|
export { getActivityMetadata, getActivityMethodMetadata, isActivity, isActivityMethod, } from './metadata';
|
|
4
|
+
export { createWorkflowToken, createWorkflowProvider } from './workflow-token';
|
package/dist/utils/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isActivityMethod = exports.isActivity = exports.getActivityMethodMetadata = exports.getActivityMetadata = exports.isValidIntervalExpression = exports.isValidCronExpression = exports.TemporalLoggerManager = exports.TemporalLogger = exports.LoggerUtils = exports.createLogger = void 0;
|
|
3
|
+
exports.createWorkflowProvider = exports.createWorkflowToken = exports.isActivityMethod = exports.isActivity = exports.getActivityMethodMetadata = exports.getActivityMetadata = exports.isValidIntervalExpression = exports.isValidCronExpression = exports.TemporalLoggerManager = exports.TemporalLogger = exports.LoggerUtils = exports.createLogger = void 0;
|
|
4
4
|
var logger_1 = require("./logger");
|
|
5
5
|
Object.defineProperty(exports, "createLogger", { enumerable: true, get: function () { return logger_1.createLogger; } });
|
|
6
6
|
Object.defineProperty(exports, "LoggerUtils", { enumerable: true, get: function () { return logger_1.LoggerUtils; } });
|
|
@@ -14,4 +14,7 @@ Object.defineProperty(exports, "getActivityMetadata", { enumerable: true, get: f
|
|
|
14
14
|
Object.defineProperty(exports, "getActivityMethodMetadata", { enumerable: true, get: function () { return metadata_1.getActivityMethodMetadata; } });
|
|
15
15
|
Object.defineProperty(exports, "isActivity", { enumerable: true, get: function () { return metadata_1.isActivity; } });
|
|
16
16
|
Object.defineProperty(exports, "isActivityMethod", { enumerable: true, get: function () { return metadata_1.isActivityMethod; } });
|
|
17
|
+
var workflow_token_1 = require("./workflow-token");
|
|
18
|
+
Object.defineProperty(exports, "createWorkflowToken", { enumerable: true, get: function () { return workflow_token_1.createWorkflowToken; } });
|
|
19
|
+
Object.defineProperty(exports, "createWorkflowProvider", { enumerable: true, get: function () { return workflow_token_1.createWorkflowProvider; } });
|
|
17
20
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAWA,mCAA4F;AAAnF,sGAAA,YAAY,OAAA;AAAE,qGAAA,WAAW,OAAA;AAAE,wGAAA,cAAc,OAAA;AAAE,+GAAA,qBAAqB,OAAA;AAGzE,2CAAgF;AAAvE,mHAAA,qBAAqB,OAAA;AAAE,uHAAA,yBAAyB,OAAA;AAGzD,uCAKoB;AAJhB,+GAAA,mBAAmB,OAAA;AACnB,qHAAA,yBAAyB,OAAA;AACzB,sGAAA,UAAU,OAAA;AACV,4GAAA,gBAAgB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAWA,mCAA4F;AAAnF,sGAAA,YAAY,OAAA;AAAE,qGAAA,WAAW,OAAA;AAAE,wGAAA,cAAc,OAAA;AAAE,+GAAA,qBAAqB,OAAA;AAGzE,2CAAgF;AAAvE,mHAAA,qBAAqB,OAAA;AAAE,uHAAA,yBAAyB,OAAA;AAGzD,uCAKoB;AAJhB,+GAAA,mBAAmB,OAAA;AACnB,qHAAA,yBAAyB,OAAA;AACzB,sGAAA,UAAU,OAAA;AACV,4GAAA,gBAAgB,OAAA;AAIpB,mDAA+E;AAAtE,qHAAA,mBAAmB,OAAA;AAAE,wHAAA,sBAAsB,OAAA"}
|
package/dist/utils/logger.d.ts
CHANGED
|
@@ -34,6 +34,7 @@ export declare class TemporalLogger {
|
|
|
34
34
|
getLogLevel(): LogLevel;
|
|
35
35
|
getContext(): string;
|
|
36
36
|
isLevelEnabled(level: LogLevel): boolean;
|
|
37
|
+
isMuted(): boolean;
|
|
37
38
|
}
|
|
38
39
|
export declare function createLogger(context: string, config?: LoggerConfig): TemporalLogger;
|
|
39
40
|
export declare class LoggerUtils {
|
package/dist/utils/logger.js
CHANGED
|
@@ -36,7 +36,7 @@ class TemporalLoggerManager {
|
|
|
36
36
|
return logger;
|
|
37
37
|
}
|
|
38
38
|
getCacheKey(context, localConfig) {
|
|
39
|
-
return `${context}:${localConfig?.enableLogger ?? ''}:${localConfig?.logLevel ?? ''}`;
|
|
39
|
+
return `${context}:${localConfig?.enableLogger ?? ''}:${localConfig?.logLevel ?? ''}:${localConfig?.muteErrors ?? ''}`;
|
|
40
40
|
}
|
|
41
41
|
clearCache() {
|
|
42
42
|
this.loggerCache.clear();
|
|
@@ -58,6 +58,7 @@ class TemporalLogger {
|
|
|
58
58
|
this.config = {
|
|
59
59
|
enableLogger: config.enableLogger ?? true,
|
|
60
60
|
logLevel,
|
|
61
|
+
muteErrors: config.muteErrors ?? false,
|
|
61
62
|
};
|
|
62
63
|
this.currentLevelIndex = TemporalLogger.LEVEL_INDICES.get(this.config.logLevel) ?? 2;
|
|
63
64
|
}
|
|
@@ -68,6 +69,12 @@ class TemporalLogger {
|
|
|
68
69
|
return requestedLevelIndex !== undefined && requestedLevelIndex <= this.currentLevelIndex;
|
|
69
70
|
}
|
|
70
71
|
error(message, trace, context) {
|
|
72
|
+
if (this.config.muteErrors) {
|
|
73
|
+
if (this.shouldLog('debug')) {
|
|
74
|
+
this.nestLogger.debug(`[muted error] ${message}`, context ?? this.context);
|
|
75
|
+
}
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
71
78
|
if (this.shouldLog('error')) {
|
|
72
79
|
const stackTrace = trace instanceof Error ? trace.stack : trace;
|
|
73
80
|
this.nestLogger.error(message, stackTrace, context ?? this.context);
|
|
@@ -134,6 +141,9 @@ class TemporalLogger {
|
|
|
134
141
|
isLevelEnabled(level) {
|
|
135
142
|
return this.shouldLog(level);
|
|
136
143
|
}
|
|
144
|
+
isMuted() {
|
|
145
|
+
return this.config.muteErrors;
|
|
146
|
+
}
|
|
137
147
|
}
|
|
138
148
|
exports.TemporalLogger = TemporalLogger;
|
|
139
149
|
TemporalLogger.LOG_LEVELS = [
|
package/dist/utils/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { InjectionToken, FactoryProvider } from '@nestjs/common';
|
|
2
|
+
import type { Workflow } from '@temporalio/workflow';
|
|
3
|
+
import { WorkflowProxyConfig } from '../interfaces';
|
|
4
|
+
export declare function createWorkflowToken(workflowType: string): InjectionToken;
|
|
5
|
+
export declare function createWorkflowProvider<T extends Workflow>(token: InjectionToken, config: WorkflowProxyConfig): FactoryProvider;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createWorkflowToken = createWorkflowToken;
|
|
4
|
+
exports.createWorkflowProvider = createWorkflowProvider;
|
|
5
|
+
const workflow_proxy_factory_1 = require("../workflow-proxy/workflow-proxy.factory");
|
|
6
|
+
function createWorkflowToken(workflowType) {
|
|
7
|
+
return `TEMPORAL_WORKFLOW_${workflowType.toUpperCase()}`;
|
|
8
|
+
}
|
|
9
|
+
function createWorkflowProvider(token, config) {
|
|
10
|
+
return {
|
|
11
|
+
provide: token,
|
|
12
|
+
inject: [workflow_proxy_factory_1.WorkflowProxyFactory],
|
|
13
|
+
useFactory: (factory) => factory.createProxy(config),
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=workflow-token.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-token.js","sourceRoot":"","sources":["../../src/utils/workflow-token.ts"],"names":[],"mappings":";;AAiBA,kDAEC;AAuCD,wDAUC;AAlED,qFAAgF;AAehF,SAAgB,mBAAmB,CAAC,YAAoB;IACpD,OAAO,qBAAqB,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC;AAC7D,CAAC;AAuCD,SAAgB,sBAAsB,CAClC,KAAqB,EACrB,MAA2B;IAE3B,OAAO;QACH,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,CAAC,6CAAoB,CAAC;QAC9B,UAAU,EAAE,CAAC,OAA6B,EAAqB,EAAE,CAC7D,OAAO,CAAC,WAAW,CAAI,MAAM,CAAC;KACrC,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowProxyFactory = exports.WorkflowProxy = void 0;
|
|
4
|
+
var workflow_proxy_1 = require("./workflow-proxy");
|
|
5
|
+
Object.defineProperty(exports, "WorkflowProxy", { enumerable: true, get: function () { return workflow_proxy_1.WorkflowProxy; } });
|
|
6
|
+
var workflow_proxy_factory_1 = require("./workflow-proxy.factory");
|
|
7
|
+
Object.defineProperty(exports, "WorkflowProxyFactory", { enumerable: true, get: function () { return workflow_proxy_factory_1.WorkflowProxyFactory; } });
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/workflow-proxy/index.ts"],"names":[],"mappings":";;;AAAA,mDAAiE;AAAxC,+GAAA,aAAa,OAAA;AACtC,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { Workflow, SignalDefinition, QueryDefinition } from '@temporalio/workflow';
|
|
2
|
+
import { WorkflowHandle } from '@temporalio/client';
|
|
3
|
+
import { TemporalClientService } from '../services/temporal-client.service';
|
|
4
|
+
import { WorkflowHandleWithMetadata, WorkflowStartOptions, WorkflowProxyConfig } from '../interfaces';
|
|
5
|
+
export interface IWorkflowProxy<T extends Workflow> {
|
|
6
|
+
start(args: Parameters<T>, options?: WorkflowStartOptions): Promise<WorkflowHandleWithMetadata<T>>;
|
|
7
|
+
getHandle(workflowId: string, runId?: string): Promise<WorkflowHandle<T>>;
|
|
8
|
+
signal<TArgs extends unknown[]>(workflowId: string, signalDef: SignalDefinition<TArgs>, ...args: TArgs): Promise<void>;
|
|
9
|
+
signalByName(workflowId: string, signalName: string, args?: readonly unknown[]): Promise<void>;
|
|
10
|
+
query<TResult, TArgs extends unknown[] = []>(workflowId: string, queryDef: QueryDefinition<TResult, TArgs>, ...args: TArgs): Promise<TResult>;
|
|
11
|
+
queryByName<TResult>(workflowId: string, queryName: string, args?: readonly unknown[]): Promise<TResult>;
|
|
12
|
+
signalWithStart<TSignalArgs extends unknown[]>(signalDef: SignalDefinition<TSignalArgs>, signalArgs: TSignalArgs, workflowArgs: Parameters<T>, options?: WorkflowStartOptions): Promise<WorkflowHandleWithMetadata<T>>;
|
|
13
|
+
}
|
|
14
|
+
export declare class WorkflowProxy<T extends Workflow> implements IWorkflowProxy<T> {
|
|
15
|
+
private readonly clientService;
|
|
16
|
+
private readonly config;
|
|
17
|
+
constructor(clientService: TemporalClientService, config: WorkflowProxyConfig);
|
|
18
|
+
start(args: Parameters<T>, options?: WorkflowStartOptions): Promise<WorkflowHandleWithMetadata<T>>;
|
|
19
|
+
getHandle(workflowId: string, runId?: string): Promise<WorkflowHandle<T>>;
|
|
20
|
+
signal<TArgs extends unknown[]>(workflowId: string, signalDef: SignalDefinition<TArgs>, ...args: TArgs): Promise<void>;
|
|
21
|
+
signalByName(workflowId: string, signalName: string, args?: readonly unknown[]): Promise<void>;
|
|
22
|
+
query<TResult, TArgs extends unknown[] = []>(workflowId: string, queryDef: QueryDefinition<TResult, TArgs>, ...args: TArgs): Promise<TResult>;
|
|
23
|
+
queryByName<TResult>(workflowId: string, queryName: string, args?: readonly unknown[]): Promise<TResult>;
|
|
24
|
+
signalWithStart<TSignalArgs extends unknown[]>(signalDef: SignalDefinition<TSignalArgs>, signalArgs: TSignalArgs, workflowArgs: Parameters<T>, options?: WorkflowStartOptions): Promise<WorkflowHandleWithMetadata<T>>;
|
|
25
|
+
private mergeOptions;
|
|
26
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TemporalClientService } from '../services/temporal-client.service';
|
|
2
|
+
import { WorkflowProxyConfig } from '../interfaces';
|
|
3
|
+
import { IWorkflowProxy } from './workflow-proxy';
|
|
4
|
+
import type { Workflow } from '@temporalio/workflow';
|
|
5
|
+
export declare class WorkflowProxyFactory {
|
|
6
|
+
private readonly clientService;
|
|
7
|
+
constructor(clientService: TemporalClientService);
|
|
8
|
+
createProxy<T extends Workflow>(config: WorkflowProxyConfig): IWorkflowProxy<T>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.WorkflowProxyFactory = void 0;
|
|
13
|
+
const common_1 = require("@nestjs/common");
|
|
14
|
+
const temporal_client_service_1 = require("../services/temporal-client.service");
|
|
15
|
+
const workflow_proxy_1 = require("./workflow-proxy");
|
|
16
|
+
let WorkflowProxyFactory = class WorkflowProxyFactory {
|
|
17
|
+
constructor(clientService) {
|
|
18
|
+
this.clientService = clientService;
|
|
19
|
+
}
|
|
20
|
+
createProxy(config) {
|
|
21
|
+
return new workflow_proxy_1.WorkflowProxy(this.clientService, config);
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
exports.WorkflowProxyFactory = WorkflowProxyFactory;
|
|
25
|
+
exports.WorkflowProxyFactory = WorkflowProxyFactory = __decorate([
|
|
26
|
+
(0, common_1.Injectable)(),
|
|
27
|
+
__metadata("design:paramtypes", [temporal_client_service_1.TemporalClientService])
|
|
28
|
+
], WorkflowProxyFactory);
|
|
29
|
+
//# sourceMappingURL=workflow-proxy.factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-proxy.factory.js","sourceRoot":"","sources":["../../src/workflow-proxy/workflow-proxy.factory.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,iFAA4E;AAE5E,qDAAiE;AAiD1D,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC7B,YAA6B,aAAoC;QAApC,kBAAa,GAAb,aAAa,CAAuB;IAAG,CAAC;IAQrE,WAAW,CAAqB,MAA2B;QACvD,OAAO,IAAI,8BAAa,CAAI,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC;CACJ,CAAA;AAZY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;qCAEmC,+CAAqB;GADxD,oBAAoB,CAYhC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowProxy = void 0;
|
|
4
|
+
class WorkflowProxy {
|
|
5
|
+
constructor(clientService, config) {
|
|
6
|
+
this.clientService = clientService;
|
|
7
|
+
this.config = config;
|
|
8
|
+
}
|
|
9
|
+
async start(args, options) {
|
|
10
|
+
const handle = await this.clientService.startWorkflow(this.config.workflowType, args, this.mergeOptions(options));
|
|
11
|
+
return handle;
|
|
12
|
+
}
|
|
13
|
+
async getHandle(workflowId, runId) {
|
|
14
|
+
const handle = await this.clientService.getWorkflowHandle(workflowId, runId);
|
|
15
|
+
return handle;
|
|
16
|
+
}
|
|
17
|
+
async signal(workflowId, signalDef, ...args) {
|
|
18
|
+
return this.clientService.signalWorkflow(workflowId, signalDef.name, args);
|
|
19
|
+
}
|
|
20
|
+
async signalByName(workflowId, signalName, args) {
|
|
21
|
+
return this.clientService.signalWorkflow(workflowId, signalName, args);
|
|
22
|
+
}
|
|
23
|
+
async query(workflowId, queryDef, ...args) {
|
|
24
|
+
return this.clientService.queryWorkflow(workflowId, queryDef.name, args);
|
|
25
|
+
}
|
|
26
|
+
async queryByName(workflowId, queryName, args) {
|
|
27
|
+
return this.clientService.queryWorkflow(workflowId, queryName, args);
|
|
28
|
+
}
|
|
29
|
+
async signalWithStart(signalDef, signalArgs, workflowArgs, options) {
|
|
30
|
+
const handle = await this.clientService.signalWithStart(this.config.workflowType, signalDef.name, signalArgs, workflowArgs, this.mergeOptions(options));
|
|
31
|
+
return handle;
|
|
32
|
+
}
|
|
33
|
+
mergeOptions(options) {
|
|
34
|
+
return {
|
|
35
|
+
...(this.config.taskQueue && { taskQueue: this.config.taskQueue }),
|
|
36
|
+
...options,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.WorkflowProxy = WorkflowProxy;
|
|
41
|
+
//# sourceMappingURL=workflow-proxy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-proxy.js","sourceRoot":"","sources":["../../src/workflow-proxy/workflow-proxy.ts"],"names":[],"mappings":";;;AAiKA,MAAa,aAAa;IACtB,YACqB,aAAoC,EACpC,MAA2B;QAD3B,kBAAa,GAAb,aAAa,CAAuB;QACpC,WAAM,GAAN,MAAM,CAAqB;IAC7C,CAAC;IAEJ,KAAK,CAAC,KAAK,CACP,IAAmB,EACnB,OAA8B;QAE9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CACjD,IAAI,CAAC,MAAM,CAAC,YAAY,EACxB,IAAI,EACJ,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAC7B,CAAC;QACF,OAAO,MAAuC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAAkB,EAAE,KAAc;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC7E,OAAO,MAA2B,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,MAAM,CACR,UAAkB,EAClB,SAAkC,EAClC,GAAG,IAAW;QAEd,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,YAAY,CACd,UAAkB,EAClB,UAAkB,EAClB,IAAyB;QAEzB,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,KAAK,CACP,UAAkB,EAClB,QAAyC,EACzC,GAAG,IAAW;QAEd,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAU,UAAU,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtF,CAAC;IAED,KAAK,CAAC,WAAW,CACb,UAAkB,EAClB,SAAiB,EACjB,IAAyB;QAEzB,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAU,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,eAAe,CACjB,SAAwC,EACxC,UAAuB,EACvB,YAA2B,EAC3B,OAA8B;QAE9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CACnD,IAAI,CAAC,MAAM,CAAC,YAAY,EACxB,SAAS,CAAC,IAAI,EACd,UAAU,EACV,YAAY,EACZ,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAC7B,CAAC;QACF,OAAO,MAAuC,CAAC;IACnD,CAAC;IAEO,YAAY,CAAC,OAA8B;QAC/C,OAAO;YACH,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAClE,GAAG,OAAO;SACb,CAAC;IACN,CAAC;CACJ;AA7ED,sCA6EC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nestjs-temporal-core",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.8",
|
|
4
4
|
"description": "Complete NestJS integration for Temporal.io with auto-discovery, declarative scheduling, enhanced monitoring, and enterprise-ready features",
|
|
5
5
|
"author": "Harsh M",
|
|
6
6
|
"license": "MIT",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"test": "jest --coverage --passWithNoTests --forceExit",
|
|
45
45
|
"test:unit": "jest --testPathPatterns=test/unit --testPathIgnorePatterns=test/performance --coverage --passWithNoTests --forceExit",
|
|
46
46
|
"test:integration": "jest --testPathPatterns=test/integration --coverage --passWithNoTests --forceExit",
|
|
47
|
-
"test:ci": "
|
|
47
|
+
"test:ci": "jest --coverage --passWithNoTests --forceExit",
|
|
48
48
|
"make-badges": "istanbul-badges-readme",
|
|
49
49
|
"docs:generate": "typedoc src --out docs --excludePrivate --excludeProtected",
|
|
50
50
|
"docs:serve": "npx http-server docs -p 3001 -o",
|
|
@@ -124,6 +124,7 @@
|
|
|
124
124
|
"husky": "^9.1.7",
|
|
125
125
|
"istanbul-badges-readme": "^1.9.0",
|
|
126
126
|
"jest": "^30.3.0",
|
|
127
|
+
"jest-junit": "^16.0.0",
|
|
127
128
|
"jsdoc": "^4.0.5",
|
|
128
129
|
"jsdoc-to-markdown": "^9.1.3",
|
|
129
130
|
"jsdoc-tsimport-plugin": "^1.0.5",
|