@temporalio/client 1.12.3 → 1.13.1
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/lib/async-completion-client.d.ts +6 -0
- package/lib/async-completion-client.js +20 -2
- package/lib/async-completion-client.js.map +1 -1
- package/lib/base-client.d.ts +1 -1
- package/lib/base-client.js +1 -1
- package/lib/connection.d.ts +30 -2
- package/lib/connection.js +29 -2
- package/lib/connection.js.map +1 -1
- package/lib/interceptor-adapters.d.ts +2 -0
- package/lib/interceptor-adapters.js +37 -0
- package/lib/interceptor-adapters.js.map +1 -0
- package/lib/interceptors.d.ts +16 -0
- package/lib/internal.d.ts +40 -0
- package/lib/internal.js +13 -0
- package/lib/internal.js.map +1 -0
- package/lib/types.d.ts +14 -5
- package/lib/types.js +3 -1
- package/lib/types.js.map +1 -1
- package/lib/workflow-client.d.ts +11 -4
- package/lib/workflow-client.js +34 -11
- package/lib/workflow-client.js.map +1 -1
- package/lib/workflow-options.d.ts +7 -2
- package/lib/workflow-options.js.map +1 -1
- package/package.json +4 -4
- package/src/async-completion-client.ts +15 -2
- package/src/base-client.ts +1 -1
- package/src/connection.ts +50 -1
- package/src/interceptor-adapters.ts +41 -0
- package/src/interceptors.ts +19 -0
- package/src/internal.ts +45 -0
- package/src/types.ts +15 -5
- package/src/workflow-client.ts +57 -15
- package/src/workflow-options.ts +10 -2
|
@@ -24,6 +24,12 @@ export declare class ActivityCancelledError extends Error {
|
|
|
24
24
|
*/
|
|
25
25
|
export declare class ActivityPausedError extends Error {
|
|
26
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Thrown by {@link AsyncCompletionClient.heartbeat} when the reporting Activity
|
|
29
|
+
* has been reset.
|
|
30
|
+
*/
|
|
31
|
+
export declare class ActivityResetError extends Error {
|
|
32
|
+
}
|
|
27
33
|
/**
|
|
28
34
|
* Options used to configure {@link AsyncCompletionClient}
|
|
29
35
|
*/
|
|
@@ -6,7 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.AsyncCompletionClient = exports.ActivityPausedError = exports.ActivityCancelledError = exports.ActivityCompletionError = exports.ActivityNotFoundError = void 0;
|
|
9
|
+
exports.AsyncCompletionClient = exports.ActivityResetError = exports.ActivityPausedError = exports.ActivityCancelledError = exports.ActivityCompletionError = exports.ActivityNotFoundError = void 0;
|
|
10
10
|
const grpc_js_1 = require("@grpc/grpc-js");
|
|
11
11
|
const common_1 = require("@temporalio/common");
|
|
12
12
|
const internal_non_workflow_1 = require("@temporalio/common/lib/internal-non-workflow");
|
|
@@ -55,6 +55,16 @@ exports.ActivityPausedError = ActivityPausedError;
|
|
|
55
55
|
exports.ActivityPausedError = ActivityPausedError = __decorate([
|
|
56
56
|
(0, type_helpers_1.SymbolBasedInstanceOfError)('ActivityPausedError')
|
|
57
57
|
], ActivityPausedError);
|
|
58
|
+
/**
|
|
59
|
+
* Thrown by {@link AsyncCompletionClient.heartbeat} when the reporting Activity
|
|
60
|
+
* has been reset.
|
|
61
|
+
*/
|
|
62
|
+
let ActivityResetError = class ActivityResetError extends Error {
|
|
63
|
+
};
|
|
64
|
+
exports.ActivityResetError = ActivityResetError;
|
|
65
|
+
exports.ActivityResetError = ActivityResetError = __decorate([
|
|
66
|
+
(0, type_helpers_1.SymbolBasedInstanceOfError)('ActivityResetError')
|
|
67
|
+
], ActivityResetError);
|
|
58
68
|
function defaultAsyncCompletionClientOptions() {
|
|
59
69
|
return (0, base_client_1.defaultBaseClientOptions)();
|
|
60
70
|
}
|
|
@@ -172,6 +182,7 @@ class AsyncCompletionClient extends base_client_1.BaseClient {
|
|
|
172
182
|
const payloads = await (0, internal_non_workflow_1.encodeToPayloads)(this.dataConverter, details);
|
|
173
183
|
let cancelRequested = false;
|
|
174
184
|
let paused = false;
|
|
185
|
+
let reset = false;
|
|
175
186
|
try {
|
|
176
187
|
if (taskTokenOrFullActivityId instanceof Uint8Array) {
|
|
177
188
|
const response = await this.workflowService.recordActivityTaskHeartbeat({
|
|
@@ -182,6 +193,7 @@ class AsyncCompletionClient extends base_client_1.BaseClient {
|
|
|
182
193
|
});
|
|
183
194
|
cancelRequested = !!response.cancelRequested;
|
|
184
195
|
paused = !!response.activityPaused;
|
|
196
|
+
reset = !!response.activityReset;
|
|
185
197
|
}
|
|
186
198
|
else {
|
|
187
199
|
const response = await this.workflowService.recordActivityTaskHeartbeatById({
|
|
@@ -192,15 +204,21 @@ class AsyncCompletionClient extends base_client_1.BaseClient {
|
|
|
192
204
|
});
|
|
193
205
|
cancelRequested = !!response.cancelRequested;
|
|
194
206
|
paused = !!response.activityPaused;
|
|
207
|
+
reset = !!response.activityReset;
|
|
195
208
|
}
|
|
196
209
|
}
|
|
197
210
|
catch (err) {
|
|
198
211
|
this.handleError(err);
|
|
199
212
|
}
|
|
213
|
+
// Note that it is possible for a heartbeat response to have multiple fields
|
|
214
|
+
// set as true (i.e. cancelled and pause).
|
|
200
215
|
if (cancelRequested) {
|
|
201
216
|
throw new ActivityCancelledError('cancelled');
|
|
202
217
|
}
|
|
203
|
-
if (
|
|
218
|
+
else if (reset) {
|
|
219
|
+
throw new ActivityResetError('reset');
|
|
220
|
+
}
|
|
221
|
+
else if (paused) {
|
|
204
222
|
throw new ActivityPausedError('paused');
|
|
205
223
|
}
|
|
206
224
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async-completion-client.js","sourceRoot":"","sources":["../src/async-completion-client.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAqD;AACrD,+CAA2D;AAC3D,wFAAsG;AACtG,gFAAkF;AAClF,sEAAiF;AACjF,+CAMuB;AACvB,qCAA8C;AAE9C,uCAAmD;AAEnD;;;GAGG;AAEI,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,KAAK;CAAG,CAAA;AAAtC,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,yCAA0B,EAAC,uBAAuB,CAAC;GACvC,qBAAqB,CAAiB;AAEnD;;;GAGG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,KAAK;CAAG,CAAA;AAAxC,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,yCAA0B,EAAC,yBAAyB,CAAC;GACzC,uBAAuB,CAAiB;AAErD;;;GAGG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,KAAK;CAAG,CAAA;AAAvC,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,yCAA0B,EAAC,wBAAwB,CAAC;GACxC,sBAAsB,CAAiB;AAEpD;;;GAGG;AAEI,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,KAAK;CAAG,CAAA;AAApC,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,yCAA0B,EAAC,qBAAqB,CAAC;GACrC,mBAAmB,CAAiB;
|
|
1
|
+
{"version":3,"file":"async-completion-client.js","sourceRoot":"","sources":["../src/async-completion-client.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAqD;AACrD,+CAA2D;AAC3D,wFAAsG;AACtG,gFAAkF;AAClF,sEAAiF;AACjF,+CAMuB;AACvB,qCAA8C;AAE9C,uCAAmD;AAEnD;;;GAGG;AAEI,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,KAAK;CAAG,CAAA;AAAtC,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,yCAA0B,EAAC,uBAAuB,CAAC;GACvC,qBAAqB,CAAiB;AAEnD;;;GAGG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,KAAK;CAAG,CAAA;AAAxC,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,yCAA0B,EAAC,yBAAyB,CAAC;GACzC,uBAAuB,CAAiB;AAErD;;;GAGG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,KAAK;CAAG,CAAA;AAAvC,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,yCAA0B,EAAC,wBAAwB,CAAC;GACxC,sBAAsB,CAAiB;AAEpD;;;GAGG;AAEI,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,KAAK;CAAG,CAAA;AAApC,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,yCAA0B,EAAC,qBAAqB,CAAC;GACrC,mBAAmB,CAAiB;AAEjD;;;GAGG;AAEI,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,KAAK;CAAG,CAAA;AAAnC,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,yCAA0B,EAAC,oBAAoB,CAAC;GACpC,kBAAkB,CAAiB;AAShD,SAAS,mCAAmC;IAC1C,OAAO,IAAA,sCAAwB,GAAE,CAAC;AACpC,CAAC;AAeD;;;;;GAKG;AACH,MAAa,qBAAsB,SAAQ,wBAAU;IACnC,OAAO,CAAqC;IAE5D,YAAY,OAAsC;QAChD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,OAAO,GAAG;YACb,GAAG,mCAAmC,EAAE;YACxC,GAAG,IAAA,0CAAsB,EAAC,OAAO,IAAI,EAAE,CAAC;YACxC,mBAAmB,EAAE,IAAI,CAAC,aAAa;SACxC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;IACzC,CAAC;IAED;;OAEG;IACO,WAAW,CAAC,GAAY;QAChC,IAAI,IAAA,2BAAkB,EAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAA,gCAAsB,EAAC,GAAG,CAAC,CAAC;YAE5B,IAAI,GAAG,CAAC,IAAI,KAAK,gBAAU,CAAC,SAAS,EAAE,CAAC;gBACtC,MAAM,IAAI,qBAAqB,CAAC,WAAW,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,IAAI,uBAAuB,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,IAAI,uBAAuB,CAAC,oBAAoB,CAAC,CAAC;IAC1D,CAAC;IAWD,KAAK,CAAC,QAAQ,CAAC,yBAAsD,EAAE,MAAe;QACpF,MAAM,QAAQ,GAAG,MAAM,IAAA,wCAAgB,EAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACpE,IAAI,CAAC;YACH,IAAI,yBAAyB,YAAY,UAAU,EAAE,CAAC;gBACpD,MAAM,IAAI,CAAC,eAAe,CAAC,4BAA4B,CAAC;oBACtD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,SAAS,EAAE,yBAAyB;oBACpC,MAAM,EAAE,EAAE,QAAQ,EAAE;iBACrB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,eAAe,CAAC,gCAAgC,CAAC;oBAC1D,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,GAAG,yBAAyB;oBAC5B,MAAM,EAAE,EAAE,QAAQ,EAAE;iBACrB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAWD,KAAK,CAAC,IAAI,CAAC,yBAAsD,EAAE,GAAY;QAC7E,MAAM,OAAO,GAAG,MAAM,IAAA,4CAAoB,EAAC,IAAI,CAAC,aAAa,EAAE,IAAA,8BAAqB,EAAC,GAAG,CAAC,CAAC,CAAC;QAC3F,IAAI,CAAC;YACH,IAAI,yBAAyB,YAAY,UAAU,EAAE,CAAC;gBACpD,MAAM,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC;oBACnD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,SAAS,EAAE,yBAAyB;oBACpC,OAAO;iBACR,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC;oBACvD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,GAAG,yBAAyB;oBAC5B,OAAO;iBACR,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAWD,KAAK,CAAC,kBAAkB,CAAC,yBAAsD,EAAE,OAAiB;QAChG,MAAM,QAAQ,GAAG,MAAM,IAAA,wCAAgB,EAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC;YACH,IAAI,yBAAyB,YAAY,UAAU,EAAE,CAAC;gBACpD,MAAM,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC;oBACrD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,SAAS,EAAE,yBAAyB;oBACpC,OAAO,EAAE,EAAE,QAAQ,EAAE;iBACtB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,eAAe,CAAC,+BAA+B,CAAC;oBACzD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,GAAG,yBAAyB;oBAC5B,OAAO,EAAE,EAAE,QAAQ,EAAE;iBACtB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAWD,KAAK,CAAC,SAAS,CAAC,yBAAsD,EAAE,OAAiB;QACvF,MAAM,QAAQ,GAAG,MAAM,IAAA,wCAAgB,EAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACrE,IAAI,eAAe,GAAG,KAAK,CAAC;QAC5B,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,yBAAyB,YAAY,UAAU,EAAE,CAAC;gBACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC;oBACtE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,SAAS,EAAE,yBAAyB;oBACpC,OAAO,EAAE,EAAE,QAAQ,EAAE;iBACtB,CAAC,CAAC;gBACH,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAC7C,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;gBACnC,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,+BAA+B,CAAC;oBAC1E,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC/B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,GAAG,yBAAyB;oBAC5B,OAAO,EAAE,EAAE,QAAQ,EAAE;iBACtB,CAAC,CAAC;gBACH,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAC7C,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;gBACnC,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;YACnC,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;QACD,4EAA4E;QAC5E,0CAA0C;QAC1C,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,IAAI,sBAAsB,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,KAAK,EAAE,CAAC;YACjB,MAAM,IAAI,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;aAAM,IAAI,MAAM,EAAE,CAAC;YAClB,MAAM,IAAI,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;CACF;AAvLD,sDAuLC"}
|
package/lib/base-client.d.ts
CHANGED
|
@@ -35,7 +35,7 @@ WithDefaults<Options> & {
|
|
|
35
35
|
export declare function defaultBaseClientOptions(): WithDefaults<BaseClientOptions>;
|
|
36
36
|
export declare class BaseClient {
|
|
37
37
|
/**
|
|
38
|
-
* The underlying {@link Connection | connection} used by this client.
|
|
38
|
+
* The underlying {@link Connection | connection} or {@link NativeConnection | native connection} used by this client.
|
|
39
39
|
*
|
|
40
40
|
* Clients are cheap to create, but connections are expensive. Where it makes sense,
|
|
41
41
|
* a single connection may and should be reused by multiple `Client`s.
|
package/lib/base-client.js
CHANGED
|
@@ -17,7 +17,7 @@ function defaultBaseClientOptions() {
|
|
|
17
17
|
}
|
|
18
18
|
class BaseClient {
|
|
19
19
|
/**
|
|
20
|
-
* The underlying {@link Connection | connection} used by this client.
|
|
20
|
+
* The underlying {@link Connection | connection} or {@link NativeConnection | native connection} used by this client.
|
|
21
21
|
*
|
|
22
22
|
* Clients are cheap to create, but connections are expensive. Where it makes sense,
|
|
23
23
|
* a single connection may and should be reused by multiple `Client`s.
|
package/lib/connection.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import * as grpc from '@grpc/grpc-js';
|
|
|
3
3
|
import type * as proto from 'protobufjs';
|
|
4
4
|
import { TLSConfig } from '@temporalio/common/lib/internal-non-workflow';
|
|
5
5
|
import { Duration } from '@temporalio/common/lib/time';
|
|
6
|
-
import { CallContext, HealthService, Metadata, OperatorService, WorkflowService } from './types';
|
|
6
|
+
import { CallContext, HealthService, Metadata, OperatorService, TestService, WorkflowService } from './types';
|
|
7
7
|
/**
|
|
8
8
|
* gRPC and Temporal Server connection options
|
|
9
9
|
*/
|
|
@@ -111,6 +111,22 @@ export interface ConnectionOptions {
|
|
|
111
111
|
export type ConnectionOptionsWithDefaults = Required<Omit<ConnectionOptions, 'tls' | 'connectTimeout' | 'callCredentials' | 'apiKey'>> & {
|
|
112
112
|
connectTimeoutMs: number;
|
|
113
113
|
};
|
|
114
|
+
/**
|
|
115
|
+
* A symbol used to attach extra, SDK-internal connection options.
|
|
116
|
+
*
|
|
117
|
+
* @internal
|
|
118
|
+
* @hidden
|
|
119
|
+
*/
|
|
120
|
+
export declare const InternalConnectionOptionsSymbol: unique symbol;
|
|
121
|
+
export type InternalConnectionOptions = ConnectionOptions & {
|
|
122
|
+
[InternalConnectionOptionsSymbol]?: {
|
|
123
|
+
/**
|
|
124
|
+
* Indicate whether the `TestService` should be enabled on this connection. This is set to true
|
|
125
|
+
* on connections created internally by `TestWorkflowEnvironment.createTimeSkipping()`.
|
|
126
|
+
*/
|
|
127
|
+
supportsTestService?: boolean;
|
|
128
|
+
};
|
|
129
|
+
};
|
|
114
130
|
export declare const LOCAL_TARGET = "localhost:7233";
|
|
115
131
|
export interface RPCImplOptions {
|
|
116
132
|
serviceName: string;
|
|
@@ -135,6 +151,12 @@ export interface ConnectionCtorOptions {
|
|
|
135
151
|
* Raw gRPC access to the Temporal {@link https://github.com/temporalio/api/blob/ddf07ab9933e8230309850e3c579e1ff34b03f53/temporal/api/operatorservice/v1/service.proto | operator service}.
|
|
136
152
|
*/
|
|
137
153
|
readonly operatorService: OperatorService;
|
|
154
|
+
/**
|
|
155
|
+
* Raw gRPC access to the Temporal test service.
|
|
156
|
+
*
|
|
157
|
+
* Will be `undefined` if connected to a server that does not support the test service.
|
|
158
|
+
*/
|
|
159
|
+
readonly testService: TestService | undefined;
|
|
138
160
|
/**
|
|
139
161
|
* Raw gRPC access to the standard gRPC {@link https://github.com/grpc/grpc/blob/92f58c18a8da2728f571138c37760a721c8915a2/doc/health-checking.md | health service}.
|
|
140
162
|
*/
|
|
@@ -177,6 +199,12 @@ export declare class Connection {
|
|
|
177
199
|
* Cloud namespace will result in gRPC `unauthorized` error.
|
|
178
200
|
*/
|
|
179
201
|
readonly operatorService: OperatorService;
|
|
202
|
+
/**
|
|
203
|
+
* Raw gRPC access to the Temporal test service.
|
|
204
|
+
*
|
|
205
|
+
* Will be `undefined` if connected to a server that does not support the test service.
|
|
206
|
+
*/
|
|
207
|
+
readonly testService: TestService | undefined;
|
|
180
208
|
/**
|
|
181
209
|
* Raw gRPC access to the standard gRPC {@link https://github.com/grpc/grpc/blob/92f58c18a8da2728f571138c37760a721c8915a2/doc/health-checking.md | health service}.
|
|
182
210
|
*/
|
|
@@ -207,7 +235,7 @@ export declare class Connection {
|
|
|
207
235
|
* {@link ensureConnected}.
|
|
208
236
|
*/
|
|
209
237
|
static connect(options?: ConnectionOptions): Promise<Connection>;
|
|
210
|
-
protected constructor({ options, client, workflowService, operatorService, healthService, callContextStorage, apiKeyFnRef, }: ConnectionCtorOptions);
|
|
238
|
+
protected constructor({ options, client, workflowService, operatorService, testService, healthService, callContextStorage, apiKeyFnRef, }: ConnectionCtorOptions);
|
|
211
239
|
protected static generateRPCImplementation({ serviceName, client, callContextStorage, interceptors, staticMetadata, apiKeyFnRef, }: RPCImplOptions): proto.RPCImpl;
|
|
212
240
|
/**
|
|
213
241
|
* Set a deadline for any service requests executed in `fn`'s scope.
|
package/lib/connection.js
CHANGED
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.Connection = exports.LOCAL_TARGET = void 0;
|
|
29
|
+
exports.Connection = exports.LOCAL_TARGET = exports.InternalConnectionOptionsSymbol = void 0;
|
|
30
30
|
const node_async_hooks_1 = require("node:async_hooks");
|
|
31
31
|
const grpc = __importStar(require("@grpc/grpc-js"));
|
|
32
32
|
const internal_non_workflow_1 = require("@temporalio/common/lib/internal-non-workflow");
|
|
@@ -40,6 +40,13 @@ const types_1 = require("./types");
|
|
|
40
40
|
* The default Temporal Server's TCP port for public gRPC connections.
|
|
41
41
|
*/
|
|
42
42
|
const DEFAULT_TEMPORAL_GRPC_PORT = 7233;
|
|
43
|
+
/**
|
|
44
|
+
* A symbol used to attach extra, SDK-internal connection options.
|
|
45
|
+
*
|
|
46
|
+
* @internal
|
|
47
|
+
* @hidden
|
|
48
|
+
*/
|
|
49
|
+
exports.InternalConnectionOptionsSymbol = Symbol('__temporal_internal_connection_options');
|
|
43
50
|
exports.LOCAL_TARGET = 'localhost:7233';
|
|
44
51
|
function addDefaults(options) {
|
|
45
52
|
const { channelArgs, interceptors, connectTimeout, ...rest } = options;
|
|
@@ -137,6 +144,12 @@ class Connection {
|
|
|
137
144
|
* Cloud namespace will result in gRPC `unauthorized` error.
|
|
138
145
|
*/
|
|
139
146
|
operatorService;
|
|
147
|
+
/**
|
|
148
|
+
* Raw gRPC access to the Temporal test service.
|
|
149
|
+
*
|
|
150
|
+
* Will be `undefined` if connected to a server that does not support the test service.
|
|
151
|
+
*/
|
|
152
|
+
testService;
|
|
140
153
|
/**
|
|
141
154
|
* Raw gRPC access to the standard gRPC {@link https://github.com/grpc/grpc/blob/92f58c18a8da2728f571138c37760a721c8915a2/doc/health-checking.md | health service}.
|
|
142
155
|
*/
|
|
@@ -179,6 +192,18 @@ class Connection {
|
|
|
179
192
|
apiKeyFnRef,
|
|
180
193
|
});
|
|
181
194
|
const operatorService = types_1.OperatorService.create(operatorRpcImpl, false, false);
|
|
195
|
+
let testService = undefined;
|
|
196
|
+
if (options?.[exports.InternalConnectionOptionsSymbol]?.supportsTestService) {
|
|
197
|
+
const testRpcImpl = this.generateRPCImplementation({
|
|
198
|
+
serviceName: 'temporal.api.testservice.v1.TestService',
|
|
199
|
+
client,
|
|
200
|
+
callContextStorage,
|
|
201
|
+
interceptors: optionsWithDefaults?.interceptors,
|
|
202
|
+
staticMetadata: optionsWithDefaults.metadata,
|
|
203
|
+
apiKeyFnRef,
|
|
204
|
+
});
|
|
205
|
+
testService = types_1.TestService.create(testRpcImpl, false, false);
|
|
206
|
+
}
|
|
182
207
|
const healthRpcImpl = this.generateRPCImplementation({
|
|
183
208
|
serviceName: 'grpc.health.v1.Health',
|
|
184
209
|
client,
|
|
@@ -193,6 +218,7 @@ class Connection {
|
|
|
193
218
|
callContextStorage,
|
|
194
219
|
workflowService,
|
|
195
220
|
operatorService,
|
|
221
|
+
testService,
|
|
196
222
|
healthService,
|
|
197
223
|
options: optionsWithDefaults,
|
|
198
224
|
apiKeyFnRef,
|
|
@@ -249,11 +275,12 @@ class Connection {
|
|
|
249
275
|
await conn.ensureConnected();
|
|
250
276
|
return conn;
|
|
251
277
|
}
|
|
252
|
-
constructor({ options, client, workflowService, operatorService, healthService, callContextStorage, apiKeyFnRef, }) {
|
|
278
|
+
constructor({ options, client, workflowService, operatorService, testService, healthService, callContextStorage, apiKeyFnRef, }) {
|
|
253
279
|
this.options = options;
|
|
254
280
|
this.client = client;
|
|
255
281
|
this.workflowService = this.withNamespaceHeaderInjector(workflowService);
|
|
256
282
|
this.operatorService = operatorService;
|
|
283
|
+
this.testService = testService;
|
|
257
284
|
this.healthService = healthService;
|
|
258
285
|
this.callContextStorage = callContextStorage;
|
|
259
286
|
this.apiKeyFnRef = apiKeyFnRef;
|
package/lib/connection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAqD;AACrD,oDAAsC;AAEtC,wFAIsD;AACtD,gFAAkF;AAClF,sDAA2E;AAE3E,qCAA4D;AAC5D,6CAAiF;AACjF,gDAAwB;AACxB,
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAqD;AACrD,oDAAsC;AAEtC,wFAIsD;AACtD,gFAAkF;AAClF,sDAA2E;AAE3E,qCAA4D;AAC5D,6CAAiF;AACjF,gDAAwB;AACxB,mCAA8G;AAE9G;;GAEG;AACH,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAyHxC;;;;;GAKG;AACU,QAAA,+BAA+B,GAAG,MAAM,CAAC,wCAAwC,CAAC,CAAC;AAWnF,QAAA,YAAY,GAAG,gBAAgB,CAAC;AAE7C,SAAS,WAAW,CAAC,OAA0B;IAC7C,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IACvE,OAAO;QACL,OAAO,EAAE,oBAAY;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE;QAC9C,WAAW,EAAE;YACX,qCAAqC,EAAE,CAAC;YACxC,wBAAwB,EAAE,MAAM;YAChC,2BAA2B,EAAE,MAAM;YACnC,0BAA0B,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,EAAE,SAAS;YACxD,GAAG,WAAW;SACf;QACD,YAAY,EAAE,YAAY,IAAI,CAAC,IAAA,qCAAwB,EAAC,IAAA,oCAAuB,GAAE,CAAC,CAAC;QACnF,QAAQ,EAAE,EAAE;QACZ,gBAAgB,EAAE,IAAA,yBAAkB,EAAC,cAAc,CAAC,IAAI,MAAM;QAC9D,GAAG,IAAA,0CAAsB,EAAC,IAAI,CAAC;KAChC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,OAA2B;IACtD,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IACpF,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,SAAS,CACjB,2GAA2G,CAC5G,CAAC;QACJ,CAAC;QACD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,SAAS,CACjB,4GAA4G,CAC7G,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,IAAA,oDAA4B,EAAC,IAAI,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,GAAG,GAAG,IAAA,0CAAkB,EAAC,aAAa,CAAC,CAAC;IAC9C,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,IAAI,SAAS,CAAC,8DAA8D,CAAC,CAAC;QACtF,CAAC;QACD,OAAO;YACL,GAAG,IAAI;YACP,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,yBAAyB,CACrD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,cAAc,EAAE,GAAG,EAAE,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,EACzG,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAC3B;YACD,WAAW,EAAE;gBACX,GAAG,IAAI,CAAC,WAAW;gBACnB,GAAG,CAAC,GAAG,CAAC,kBAAkB;oBACxB,CAAC,CAAC;wBACE,+BAA+B,EAAE,GAAG,CAAC,kBAAkB;wBACvD,wBAAwB,EAAE,GAAG,CAAC,kBAAkB;qBACjD;oBACH,CAAC,CAAC,SAAS,CAAC;aACf;SACF,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO;YACL,GAAG,IAAI;YACP,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,yBAAyB,CACrD,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,EAChD,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAC3B;SACF,CAAC;IACJ,CAAC;AACH,CAAC;AA2CD;;;;;GAKG;AACH,MAAa,UAAU;IACrB;;OAEG;IACI,MAAM,CAAU,MAAM,GAAG,IAAI,CAAC,4BAA4B,CAAC,EAAE,EAAE,iBAAiB,EAAE,EAAE,CAAC,CAAC;IAE7E,OAAO,CAAgC;IACpC,MAAM,CAAc;IAEvC;;OAEG;IACO,cAAc,CAAiB;IAEzC;;;OAGG;IACa,eAAe,CAAkB;IAEjD;;;;;;;;;OASG;IACa,eAAe,CAAkB;IAEjD;;;;OAIG;IACa,WAAW,CAA0B;IAErD;;OAEG;IACa,aAAa,CAAgB;IAEpC,kBAAkB,CAAiC;IAC3C,WAAW,CAAwB;IAE1C,MAAM,CAAC,iBAAiB,CAAC,OAA2B;QAC5D,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,WAAW,GAA0B,EAAE,CAAC;QAC9C,IAAI,iBAAiB,CAAC,MAAM,EAAE,CAAC;YAC7B,IAAI,OAAO,iBAAiB,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACjD,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC;gBACxC,WAAW,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,EAAE,GAAG,iBAAiB,CAAC,MAAM,CAAC;YAC5C,CAAC;QACH,CAAC;QACD,MAAM,mBAAmB,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAC3D,wBAAwB;QACxB,mBAAmB,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,qBAAqB,CAAC;QACtE,mBAAmB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,aAAG,CAAC,OAAO,CAAC;QAE/D,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAC5B,mBAAmB,CAAC,OAAO,EAC3B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,WAAW,CAChC,CAAC;QACF,MAAM,kBAAkB,GAAG,IAAI,oCAAiB,EAAe,CAAC;QAEhE,MAAM,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC;YACrD,WAAW,EAAE,iDAAiD;YAC9D,MAAM;YACN,kBAAkB;YAClB,YAAY,EAAE,mBAAmB,EAAE,YAAY;YAC/C,cAAc,EAAE,mBAAmB,CAAC,QAAQ;YAC5C,WAAW;SACZ,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,uBAAe,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAE9E,MAAM,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC;YACrD,WAAW,EAAE,iDAAiD;YAC9D,MAAM;YACN,kBAAkB;YAClB,YAAY,EAAE,mBAAmB,EAAE,YAAY;YAC/C,cAAc,EAAE,mBAAmB,CAAC,QAAQ;YAC5C,WAAW;SACZ,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,uBAAe,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAE9E,IAAI,WAAW,GAA4B,SAAS,CAAC;QACrD,IAAK,OAAqC,EAAE,CAAC,uCAA+B,CAAC,EAAE,mBAAmB,EAAE,CAAC;YACnG,MAAM,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC;gBACjD,WAAW,EAAE,yCAAyC;gBACtD,MAAM;gBACN,kBAAkB;gBAClB,YAAY,EAAE,mBAAmB,EAAE,YAAY;gBAC/C,cAAc,EAAE,mBAAmB,CAAC,QAAQ;gBAC5C,WAAW;aACZ,CAAC,CAAC;YACH,WAAW,GAAG,mBAAW,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,yBAAyB,CAAC;YACnD,WAAW,EAAE,uBAAuB;YACpC,MAAM;YACN,kBAAkB;YAClB,YAAY,EAAE,mBAAmB,EAAE,YAAY;YAC/C,cAAc,EAAE,mBAAmB,CAAC,QAAQ;YAC5C,WAAW;SACZ,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,qBAAa,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAExE,OAAO;YACL,MAAM;YACN,kBAAkB;YAClB,eAAe;YACf,eAAe;YACf,WAAW;YACX,aAAa;YACb,OAAO,EAAE,mBAAmB;YAC5B,WAAW;SACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,eAAe;QACnB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAC5D,IAAI,CAAC,cAAc,GAAG,CAAC,KAAK,IAAI,EAAE;gBAChC,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAEhC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClF,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,IAAA,2BAAkB,EAAC,GAAG,CAAC,EAAE,CAAC;wBAC5B,qBAAqB;wBACrB,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;4BAC3C,MAAM,IAAI,qBAAY,CAAC,sCAAsC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;wBACjF,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,GAAG,CAAC;oBACZ,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,EAAE,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAC,OAA2B;QACrC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IACnD,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAA2B;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAsB,EACpB,OAAO,EACP,MAAM,EACN,eAAe,EACf,eAAe,EACf,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,WAAW,GACW;QACtB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,2BAA2B,CAAC,eAAe,CAAC,CAAC;QACzE,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAES,MAAM,CAAC,yBAAyB,CAAC,EACzC,WAAW,EACX,MAAM,EACN,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,WAAW,GACI;QACf,OAAO,CACL,MAAsF,EACtF,WAAuB,EACvB,QAAmC,EACnC,EAAE;YACF,MAAM,iBAAiB,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9C,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;YAChF,IAAI,WAAW,CAAC,EAAE,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,EAAE,CAAC;gBAChC,IAAI,MAAM;oBAAE,iBAAiB,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,MAAM,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;gBACpD,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9B,CAAC;YACD,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;gBACrB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC9C,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAClC,IAAI,WAAW,IAAI,MAAM,CAAC,IAAI,EAAE,EAChC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,EACjB,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,EACjB,WAAW,EACX,iBAAiB,EACjB,EAAE,YAAY,EAAE,QAAQ,EAAE,EAC1B,QAAQ,CACT,CAAC;YAEF,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;gBACxB,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAC7D,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,YAAY,CAAa,QAAuB,EAAE,EAA6B;QACnF,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;QAC9C,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,iGAAiG;IACjG,gGAAgG;IAChG,KAAK,CAAC,eAAe,CAAa,WAAwB,EAAE,EAA6B;QACvF,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;QAC9C,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,YAAY,CAAa,QAAkB,EAAE,EAA6B;QAC9E,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;QAC9C,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CACtC;YACE,GAAG,EAAE;YACL,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE;SAC3C,EACD,EAAE,CACH,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,UAAU,CAAa,MAAc,EAAE,EAA6B;QACxE,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;QAC9C,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CACtC;YACE,GAAG,EAAE;YACL,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;SACjE,EACD,EAAE,CACH,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,MAA+B;QACvC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;YAC9D,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,EAAE,GAAG,MAAM,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,UAAU,CAAC,QAAgB;QACzC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;gBACzC,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;qBAAM,CAAC;oBACN,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,+GAA+G;IAC/G;;;;OAIG;IACI,KAAK,CAAC,KAAK;QAChB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC;IAEO,2BAA2B,CACjC,eAAgE;QAEhE,MAAM,OAAO,GAAQ,EAAE,CAAC;QAExB,sEAAsE;QACtE,KAAK,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAyB,EAAE,CAAC;YAC/F,IAAI,OAAO,UAAU,KAAK,UAAU;gBAAE,SAAS;YAE/C,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE;gBACvC,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;gBACrC,IAAI,SAAS,EAAE,CAAC;oBACd,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,oBAAoB,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC/G,CAAC;qBAAM,CAAC;oBACN,OAAO,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,OAA0B,CAAC;IACpC,CAAC;;AArZH,gCAsZC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.adaptWorkflowClientInterceptor = adaptWorkflowClientInterceptor;
|
|
4
|
+
function adaptWorkflowClientInterceptor(i) {
|
|
5
|
+
return adaptLegacyStartInterceptor(i);
|
|
6
|
+
}
|
|
7
|
+
// Adapt legacy `start` interceptors to the new `startWithDetails` interceptor.
|
|
8
|
+
function adaptLegacyStartInterceptor(i) {
|
|
9
|
+
// If it already has the new method, or doesn't have the legacy one, no adaptation is needed.
|
|
10
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
11
|
+
if (i.startWithDetails || !i.start) {
|
|
12
|
+
return i;
|
|
13
|
+
}
|
|
14
|
+
// This interceptor has a legacy `start` but not `startWithDetails`. We'll adapt it.
|
|
15
|
+
return {
|
|
16
|
+
...i,
|
|
17
|
+
startWithDetails: async (input, next) => {
|
|
18
|
+
let downstreamOut;
|
|
19
|
+
// Patched `next` for legacy `start` interceptors.
|
|
20
|
+
// Captures the full `WorkflowStartOutput` while returning `runId` as a string.
|
|
21
|
+
const patchedNext = async (patchedInput) => {
|
|
22
|
+
downstreamOut = await next(patchedInput);
|
|
23
|
+
return downstreamOut.runId;
|
|
24
|
+
};
|
|
25
|
+
const runIdFromLegacyInterceptor = await i.start(input, patchedNext); // eslint-disable-line deprecation/deprecation
|
|
26
|
+
// If the interceptor short-circuited (didn't call `next`), `downstreamOut` will be undefined.
|
|
27
|
+
// In that case, we can't have an eager start.
|
|
28
|
+
if (downstreamOut === undefined) {
|
|
29
|
+
return { runId: runIdFromLegacyInterceptor, eagerlyStarted: false };
|
|
30
|
+
}
|
|
31
|
+
// If `next` was called, honor the `runId` from the legacy interceptor but preserve
|
|
32
|
+
// the `eagerlyStarted` status from the actual downstream call.
|
|
33
|
+
return { ...downstreamOut, runId: runIdFromLegacyInterceptor };
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=interceptor-adapters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interceptor-adapters.js","sourceRoot":"","sources":["../src/interceptor-adapters.ts"],"names":[],"mappings":";;AAEA,wEAEC;AAFD,SAAgB,8BAA8B,CAAC,CAA4B;IACzE,OAAO,2BAA2B,CAAC,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,+EAA+E;AAC/E,SAAS,2BAA2B,CAAC,CAA4B;IAC/D,6FAA6F;IAC7F,mDAAmD;IACnD,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QACnC,OAAO,CAAC,CAAC;IACX,CAAC;IAED,oFAAoF;IACpF,OAAO;QACL,GAAG,CAAC;QACJ,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAgC,EAAE;YACpE,IAAI,aAA8C,CAAC;YAEnD,kDAAkD;YAClD,+EAA+E;YAC/E,MAAM,WAAW,GAAG,KAAK,EAAE,YAAgC,EAAmB,EAAE;gBAC9E,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,CAAC;gBACzC,OAAO,aAAa,CAAC,KAAK,CAAC;YAC7B,CAAC,CAAC;YAEF,MAAM,0BAA0B,GAAG,MAAM,CAAC,CAAC,KAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,8CAA8C;YAErH,8FAA8F;YAC9F,8CAA8C;YAC9C,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO,EAAE,KAAK,EAAE,0BAA0B,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;YACtE,CAAC;YAED,mFAAmF;YACnF,+DAA+D;YAC/D,OAAO,EAAE,GAAG,aAAa,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC;QACjE,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/lib/interceptors.d.ts
CHANGED
|
@@ -25,6 +25,11 @@ export interface WorkflowStartUpdateInput {
|
|
|
25
25
|
readonly headers: Headers;
|
|
26
26
|
readonly options: WorkflowUpdateOptions;
|
|
27
27
|
}
|
|
28
|
+
/** Output for WorkflowClientInterceptor.startWithDetails */
|
|
29
|
+
export interface WorkflowStartOutput {
|
|
30
|
+
readonly runId: string;
|
|
31
|
+
readonly eagerlyStarted: boolean;
|
|
32
|
+
}
|
|
28
33
|
/** Output for WorkflowClientInterceptor.startUpdate */
|
|
29
34
|
export interface WorkflowStartUpdateOutput {
|
|
30
35
|
readonly updateId: string;
|
|
@@ -99,8 +104,19 @@ export interface WorkflowClientInterceptor {
|
|
|
99
104
|
*
|
|
100
105
|
* If you implement this method,
|
|
101
106
|
* {@link signalWithStart} most likely needs to be implemented too
|
|
107
|
+
*
|
|
108
|
+
* @deprecated in favour of {@link startWithDetails}
|
|
102
109
|
*/
|
|
103
110
|
start?: (input: WorkflowStartInput, next: Next<this, 'start'>) => Promise<string>;
|
|
111
|
+
/**
|
|
112
|
+
* Intercept a service call to startWorkflowExecution
|
|
113
|
+
*
|
|
114
|
+
* This method returns start details via {@link WorkflowStartOutput}.
|
|
115
|
+
*
|
|
116
|
+
* If you implement this method,
|
|
117
|
+
* {@link signalWithStart} most likely needs to be implemented too
|
|
118
|
+
*/
|
|
119
|
+
startWithDetails?: (input: WorkflowStartInput, next: Next<this, 'startWithDetails'>) => Promise<WorkflowStartOutput>;
|
|
104
120
|
/**
|
|
105
121
|
* Intercept a service call to updateWorkflowExecution
|
|
106
122
|
*/
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { temporal } from '@temporalio/proto';
|
|
2
|
+
import { WorkflowOptions } from './workflow-options';
|
|
3
|
+
/**
|
|
4
|
+
* A symbol used to attach extra, SDK-internal options to the `WorkflowClient.start()` call.
|
|
5
|
+
*
|
|
6
|
+
* These are notably used by the Temporal Nexus helpers.
|
|
7
|
+
*
|
|
8
|
+
* @internal
|
|
9
|
+
* @hidden
|
|
10
|
+
*/
|
|
11
|
+
export declare const InternalWorkflowStartOptionsSymbol: unique symbol;
|
|
12
|
+
export interface InternalWorkflowStartOptions extends WorkflowOptions {
|
|
13
|
+
[InternalWorkflowStartOptionsSymbol]?: {
|
|
14
|
+
/**
|
|
15
|
+
* Request ID to be used for the workflow.
|
|
16
|
+
*/
|
|
17
|
+
requestId?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Callbacks to be called by the server when this workflow reaches a terminal state.
|
|
20
|
+
* If the workflow continues-as-new, these callbacks will be carried over to the new execution.
|
|
21
|
+
* Callback addresses must be whitelisted in the server's dynamic configuration.
|
|
22
|
+
*/
|
|
23
|
+
completionCallbacks?: temporal.api.common.v1.ICallback[];
|
|
24
|
+
/**
|
|
25
|
+
* Links to be associated with the workflow.
|
|
26
|
+
*/
|
|
27
|
+
links?: temporal.api.common.v1.ILink[];
|
|
28
|
+
/**
|
|
29
|
+
* Backlink copied by the client from the StartWorkflowExecutionResponse.
|
|
30
|
+
* Only populated in servers newer than 1.27.
|
|
31
|
+
*/
|
|
32
|
+
backLink?: temporal.api.common.v1.ILink;
|
|
33
|
+
/**
|
|
34
|
+
* Conflict options for when USE_EXISTING is specified.
|
|
35
|
+
*
|
|
36
|
+
* Used by the Nexus WorkflowRunOperations to attach to a callback to a running workflow.
|
|
37
|
+
*/
|
|
38
|
+
onConflictOptions?: temporal.api.workflow.v1.IOnConflictOptions;
|
|
39
|
+
};
|
|
40
|
+
}
|
package/lib/internal.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InternalWorkflowStartOptionsSymbol = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* A symbol used to attach extra, SDK-internal options to the `WorkflowClient.start()` call.
|
|
6
|
+
*
|
|
7
|
+
* These are notably used by the Temporal Nexus helpers.
|
|
8
|
+
*
|
|
9
|
+
* @internal
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
exports.InternalWorkflowStartOptionsSymbol = Symbol.for('__temporal_internal_client_workflow_start_options');
|
|
13
|
+
//# sourceMappingURL=internal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":";;;AAGA;;;;;;;GAOG;AACU,QAAA,kCAAkC,GAAG,MAAM,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC"}
|
package/lib/types.d.ts
CHANGED
|
@@ -55,14 +55,14 @@ export type WorkflowExecutionDescription = Replace<WorkflowExecutionInfo, {
|
|
|
55
55
|
* General fixed details for this workflow execution that may appear in UI/CLI.
|
|
56
56
|
* This can be in Temporal markdown format and can span multiple lines.
|
|
57
57
|
*
|
|
58
|
-
* @experimental User metadata is a new API and
|
|
58
|
+
* @experimental User metadata is a new API and susceptible to change.
|
|
59
59
|
*/
|
|
60
60
|
staticDetails: () => Promise<string | undefined>;
|
|
61
61
|
/**
|
|
62
62
|
* A single-line fixed summary for this workflow execution that may appear in the UI/CLI.
|
|
63
63
|
* This can be in single-line Temporal markdown format.
|
|
64
64
|
*
|
|
65
|
-
* @experimental User metadata is a new API and
|
|
65
|
+
* @experimental User metadata is a new API and susceptible to change.
|
|
66
66
|
*/
|
|
67
67
|
staticSummary: () => Promise<string | undefined>;
|
|
68
68
|
};
|
|
@@ -70,6 +70,8 @@ export type WorkflowService = proto.temporal.api.workflowservice.v1.WorkflowServ
|
|
|
70
70
|
export declare const WorkflowService: typeof proto.temporal.api.workflowservice.v1.WorkflowService;
|
|
71
71
|
export type OperatorService = proto.temporal.api.operatorservice.v1.OperatorService;
|
|
72
72
|
export declare const OperatorService: typeof proto.temporal.api.operatorservice.v1.OperatorService;
|
|
73
|
+
export type TestService = proto.temporal.api.testservice.v1.TestService;
|
|
74
|
+
export declare const TestService: typeof proto.temporal.api.testservice.v1.TestService;
|
|
73
75
|
export type HealthService = proto.grpc.health.v1.Health;
|
|
74
76
|
export declare const HealthService: typeof proto.grpc.health.v1.Health;
|
|
75
77
|
/**
|
|
@@ -92,9 +94,6 @@ export interface CallContext {
|
|
|
92
94
|
}
|
|
93
95
|
/**
|
|
94
96
|
* Connection interface used by high level SDK clients.
|
|
95
|
-
*
|
|
96
|
-
* NOTE: Currently the SDK only supports grpc-js based connection but in the future
|
|
97
|
-
* we might support grpc-web and native Rust connections.
|
|
98
97
|
*/
|
|
99
98
|
export interface ConnectionLike {
|
|
100
99
|
workflowService: WorkflowService;
|
|
@@ -136,6 +135,16 @@ export interface ConnectionLike {
|
|
|
136
135
|
*/
|
|
137
136
|
withAbortSignal<R>(abortSignal: AbortSignal, fn: () => Promise<R>): Promise<R>;
|
|
138
137
|
}
|
|
138
|
+
export declare const InternalConnectionLikeSymbol: unique symbol;
|
|
139
|
+
export type InternalConnectionLike = ConnectionLike & {
|
|
140
|
+
[InternalConnectionLikeSymbol]?: {
|
|
141
|
+
/**
|
|
142
|
+
* Capability flag that determines whether the connection supports eager workflow start.
|
|
143
|
+
* This will only be true if the underlying connection is a {@link NativeConnection}.
|
|
144
|
+
*/
|
|
145
|
+
readonly supportsEagerStart?: boolean;
|
|
146
|
+
};
|
|
147
|
+
};
|
|
139
148
|
export declare const QueryRejectCondition: {
|
|
140
149
|
readonly NONE: "NONE";
|
|
141
150
|
readonly NOT_OPEN: "NOT_OPEN";
|
package/lib/types.js
CHANGED
|
@@ -24,12 +24,14 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
24
24
|
};
|
|
25
25
|
var _a;
|
|
26
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
exports.decodeQueryRejectCondition = exports.encodeQueryRejectCondition = exports.QueryRejectCondition = exports.HealthService = exports.OperatorService = exports.WorkflowService = void 0;
|
|
27
|
+
exports.decodeQueryRejectCondition = exports.encodeQueryRejectCondition = exports.QueryRejectCondition = exports.InternalConnectionLikeSymbol = exports.HealthService = exports.TestService = exports.OperatorService = exports.WorkflowService = void 0;
|
|
28
28
|
const internal_workflow_1 = require("@temporalio/common/lib/internal-workflow");
|
|
29
29
|
const proto = __importStar(require("@temporalio/proto"));
|
|
30
30
|
exports.WorkflowService = proto.temporal.api.workflowservice.v1.WorkflowService;
|
|
31
31
|
exports.OperatorService = proto.temporal.api.operatorservice.v1.OperatorService;
|
|
32
|
+
exports.TestService = proto.temporal.api.testservice.v1.TestService;
|
|
32
33
|
exports.HealthService = proto.grpc.health.v1.Health;
|
|
34
|
+
exports.InternalConnectionLikeSymbol = Symbol('__temporal_internal_connection_like');
|
|
33
35
|
exports.QueryRejectCondition = {
|
|
34
36
|
NONE: 'NONE',
|
|
35
37
|
NOT_OPEN: 'NOT_OPEN',
|
package/lib/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,gFAAmF;AACnF,yDAA2C;AAuF5B,uBAAe,GAAK,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,iBAAC;AAE1D,uBAAe,GAAK,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,iBAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,gFAAmF;AACnF,yDAA2C;AAuF5B,uBAAe,GAAK,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,iBAAC;AAE1D,uBAAe,GAAK,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,iBAAC;AAE1D,mBAAW,GAAK,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,aAAC;AAE1C,qBAAa,GAAK,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,QAAC;AAsEjD,QAAA,4BAA4B,GAAG,MAAM,CAAC,qCAAqC,CAAC,CAAC;AAW7E,QAAA,oBAAoB,GAAG;IAClC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,qBAAqB,EAAE,uBAAuB;IAE9C,4CAA4C;IAC5C,2BAA2B,EAAE,MAAM,EAAE,8CAA8C;IAEnF,gDAAgD;IAChD,+BAA+B,EAAE,UAAU,EAAE,8CAA8C;IAE3F,6DAA6D;IAC7D,4CAA4C,EAAE,uBAAuB,EAAE,8CAA8C;IAErH,2CAA2C;IAC3C,kCAAkC,EAAE,SAAS,EAAE,8CAA8C;CACrF,CAAC;AAGE,KAA2D,IAAA,2CAAuB,EAO7F;IACE,CAAC,4BAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC9B,CAAC,4BAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;IAClC,CAAC,4BAAoB,CAAC,qBAAqB,CAAC,EAAE,CAAC;IAC/C,WAAW,EAAE,CAAC;CACN,EACV,yBAAyB,CAC1B,EAda,kCAA0B,UAAE,kCAA0B,SAclE"}
|
package/lib/workflow-client.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { status as grpcStatus } from '@grpc/grpc-js';
|
|
|
2
2
|
import { BaseWorkflowHandle, HistoryAndWorkflowId, QueryDefinition, UpdateDefinition, WithWorkflowArgs, Workflow, WorkflowResultType, WorkflowIdConflictPolicy } from '@temporalio/common';
|
|
3
3
|
import { History } from '@temporalio/common/lib/proto-utils';
|
|
4
4
|
import { temporal } from '@temporalio/proto';
|
|
5
|
-
import { WorkflowCancelInput, WorkflowClientInterceptor, WorkflowClientInterceptors, WorkflowDescribeInput, WorkflowQueryInput, WorkflowSignalInput, WorkflowSignalWithStartInput, WorkflowStartInput, WorkflowTerminateInput, WorkflowStartUpdateInput, WorkflowStartUpdateOutput, WorkflowStartUpdateWithStartInput, WorkflowStartUpdateWithStartOutput } from './interceptors';
|
|
5
|
+
import { WorkflowCancelInput, WorkflowClientInterceptor, WorkflowClientInterceptors, WorkflowDescribeInput, WorkflowQueryInput, WorkflowSignalInput, WorkflowSignalWithStartInput, WorkflowStartInput, WorkflowTerminateInput, WorkflowStartUpdateInput, WorkflowStartUpdateOutput, WorkflowStartUpdateWithStartInput, WorkflowStartUpdateWithStartOutput, WorkflowStartOutput } from './interceptors';
|
|
6
6
|
import { CountWorkflowExecution, DescribeWorkflowExecutionResponse, QueryRejectCondition, RequestCancelWorkflowExecutionResponse, StartWorkflowExecutionRequest, TerminateWorkflowExecutionResponse, WorkflowExecution, WorkflowExecutionDescription, WorkflowExecutionInfo, WorkflowService } from './types';
|
|
7
7
|
import { WorkflowSignalWithStartOptions, WorkflowStartOptions, WorkflowUpdateOptions } from './workflow-options';
|
|
8
8
|
import { BaseClient, BaseClientOptions, LoadedWithDefaults } from './base-client';
|
|
@@ -153,6 +153,13 @@ export interface WorkflowHandleWithFirstExecutionRunId<T extends Workflow = Work
|
|
|
153
153
|
*/
|
|
154
154
|
readonly firstExecutionRunId: string;
|
|
155
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* This interface is exactly the same as {@link WorkflowHandleWithFirstExecutionRunId} except it
|
|
158
|
+
* includes the `eagerlyStarted` returned from {@link WorkflowClient.start}.
|
|
159
|
+
*/
|
|
160
|
+
export interface WorkflowHandleWithStartDetails<T extends Workflow = Workflow> extends WorkflowHandleWithFirstExecutionRunId<T> {
|
|
161
|
+
readonly eagerlyStarted: boolean;
|
|
162
|
+
}
|
|
156
163
|
/**
|
|
157
164
|
* This interface is exactly the same as {@link WorkflowHandle} except it
|
|
158
165
|
* includes the `signaledRunId` returned from `signalWithStart`.
|
|
@@ -339,14 +346,14 @@ export declare class WorkflowClient extends BaseClient {
|
|
|
339
346
|
* object.
|
|
340
347
|
*/
|
|
341
348
|
get workflowService(): WorkflowService;
|
|
342
|
-
protected _start<T extends Workflow>(workflowTypeOrFunc: string | T, options: WorkflowStartOptions<T>, interceptors: WorkflowClientInterceptor[]): Promise<
|
|
349
|
+
protected _start<T extends Workflow>(workflowTypeOrFunc: string | T, options: WorkflowStartOptions<T>, interceptors: WorkflowClientInterceptor[]): Promise<WorkflowStartOutput>;
|
|
343
350
|
protected _signalWithStart<T extends Workflow, SA extends any[]>(workflowTypeOrFunc: string | T, options: WithWorkflowArgs<T, WorkflowSignalWithStartOptions<SA>>, interceptors: WorkflowClientInterceptor[]): Promise<string>;
|
|
344
351
|
/**
|
|
345
352
|
* Start a new Workflow execution.
|
|
346
353
|
*
|
|
347
354
|
* @returns a {@link WorkflowHandle} to the started Workflow
|
|
348
355
|
*/
|
|
349
|
-
start<T extends Workflow>(workflowTypeOrFunc: string | T, options: WorkflowStartOptions<T>): Promise<
|
|
356
|
+
start<T extends Workflow>(workflowTypeOrFunc: string | T, options: WorkflowStartOptions<T>): Promise<WorkflowHandleWithStartDetails<T>>;
|
|
350
357
|
/**
|
|
351
358
|
* Start a new Workflow Execution and immediately send a Signal to that Workflow.
|
|
352
359
|
*
|
|
@@ -471,7 +478,7 @@ export declare class WorkflowClient extends BaseClient {
|
|
|
471
478
|
*
|
|
472
479
|
* Used as the final function of the start interceptor chain
|
|
473
480
|
*/
|
|
474
|
-
protected _startWorkflowHandler(input: WorkflowStartInput): Promise<
|
|
481
|
+
protected _startWorkflowHandler(input: WorkflowStartInput): Promise<WorkflowStartOutput>;
|
|
475
482
|
protected createStartWorkflowRequest(input: WorkflowStartInput): Promise<StartWorkflowExecutionRequest>;
|
|
476
483
|
/**
|
|
477
484
|
* Use given input to make terminateWorkflowExecution call to the service
|