@cratis/chronicle 5.1.0 → 6.1.0
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/ChronicleClient.ts +42 -9
- package/connection/ChronicleConnection.ts +9 -5
- package/connection/CompatibilityPreflight.ts +62 -0
- package/connection/IncompatibleChronicleServer.ts +10 -0
- package/connection/callResults.spec.ts +6 -0
- package/connection/callResults.ts +5 -7
- package/connection/for_ChronicleConnection/when_checking_compatibility/before_append.spec.ts +148 -0
- package/connection/for_CompatibilityPreflight/when_verifying/with_concurrent_calls.spec.ts +38 -0
- package/dist/ChronicleClient.d.ts +3 -0
- package/dist/ChronicleClient.d.ts.map +1 -1
- package/dist/ChronicleClient.js +41 -9
- package/dist/ChronicleClient.js.map +1 -1
- package/dist/connection/ChronicleConnection.d.ts +1 -0
- package/dist/connection/ChronicleConnection.d.ts.map +1 -1
- package/dist/connection/ChronicleConnection.js +9 -5
- package/dist/connection/ChronicleConnection.js.map +1 -1
- package/dist/connection/CompatibilityPreflight.d.ts +15 -0
- package/dist/connection/CompatibilityPreflight.d.ts.map +1 -0
- package/dist/connection/CompatibilityPreflight.js +61 -0
- package/dist/connection/CompatibilityPreflight.js.map +1 -0
- package/dist/connection/IncompatibleChronicleServer.d.ts +5 -0
- package/dist/connection/IncompatibleChronicleServer.d.ts.map +1 -0
- package/dist/connection/IncompatibleChronicleServer.js +10 -0
- package/dist/connection/IncompatibleChronicleServer.js.map +1 -0
- package/dist/connection/callResults.d.ts +4 -6
- package/dist/connection/callResults.d.ts.map +1 -1
- package/dist/connection/callResults.js +1 -1
- package/dist/connection/callResults.js.map +1 -1
- package/dist/eventSequences/AppendOptions.d.ts +11 -1
- package/dist/eventSequences/AppendOptions.d.ts.map +1 -1
- package/dist/eventSequences/EventForEventSourceId.d.ts +6 -4
- package/dist/eventSequences/EventForEventSourceId.d.ts.map +1 -1
- package/dist/eventSequences/EventSequence.d.ts +1 -1
- package/dist/eventSequences/EventSequence.d.ts.map +1 -1
- package/dist/eventSequences/EventSequence.js +29 -38
- package/dist/eventSequences/EventSequence.js.map +1 -1
- package/dist/eventSequences/IEventSequence.d.ts +12 -3
- package/dist/eventSequences/IEventSequence.d.ts.map +1 -1
- package/dist/events/CausationEntry.d.ts +2 -0
- package/dist/events/CausationEntry.d.ts.map +1 -1
- package/dist/events/EventContext.d.ts +19 -0
- package/dist/events/EventContext.d.ts.map +1 -1
- package/dist/events/WireEventContext.d.ts +11 -0
- package/dist/events/WireEventContext.d.ts.map +1 -0
- package/dist/events/WireEventContext.js +4 -0
- package/dist/events/WireEventContext.js.map +1 -0
- package/dist/events/toClientEventContext.d.ts +5 -0
- package/dist/events/toClientEventContext.d.ts.map +1 -0
- package/dist/events/toClientEventContext.js +37 -0
- package/dist/events/toClientEventContext.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/reactors/Reactors.d.ts.map +1 -1
- package/dist/reactors/Reactors.js +2 -16
- package/dist/reactors/Reactors.js.map +1 -1
- package/dist/reducers/Reducers.d.ts.map +1 -1
- package/dist/reducers/Reducers.js +3 -16
- package/dist/reducers/Reducers.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/eventSequences/AppendOptions.ts +16 -1
- package/eventSequences/EventForEventSourceId.ts +7 -4
- package/eventSequences/EventSequence.spec.ts +4 -4
- package/eventSequences/EventSequence.ts +29 -42
- package/eventSequences/IEventSequence.ts +12 -3
- package/eventSequences/for_EventSequence/when_appending/with_metadata.spec.ts +131 -0
- package/eventSequences/for_EventSequence/when_reading/with_route_filters.spec.ts +124 -0
- package/events/CausationEntry.ts +3 -0
- package/events/EventContext.ts +28 -0
- package/events/WireEventContext.ts +14 -0
- package/events/for_EventContext/when_receiving/with_kernel_metadata.spec.ts +109 -0
- package/events/toClientEventContext.ts +45 -0
- package/for_ChronicleClient/when_reconnecting/and_the_server_becomes_incompatible.spec.ts +95 -0
- package/index.ts +1 -0
- package/package.json +5 -4
- package/reactors/ReactorSideEffects.spec.ts +2 -0
- package/reactors/Reactors.ts +2 -17
- package/reducers/Reducers.ts +3 -17
- package/vitest.config.ts +1 -1
package/dist/ChronicleClient.js
CHANGED
|
@@ -4,6 +4,7 @@ import * as os from 'os';
|
|
|
4
4
|
import { diag } from '@opentelemetry/api';
|
|
5
5
|
import { SpanStatusCode } from '@opentelemetry/api';
|
|
6
6
|
import { ChronicleConnection } from './connection';
|
|
7
|
+
import { IncompatibleChronicleServer } from './connection/IncompatibleChronicleServer';
|
|
7
8
|
import { ensureCommandSuccess, ensureQuerySuccess } from './connection/callResults';
|
|
8
9
|
import { ConnectionLifecycle } from './connection/ConnectionLifecycle';
|
|
9
10
|
import { KernelKeepAlive } from './connection/KernelKeepAlive';
|
|
@@ -43,6 +44,7 @@ export class ChronicleClient {
|
|
|
43
44
|
_isDisposed = false;
|
|
44
45
|
_keepAliveAbortController;
|
|
45
46
|
_healthCheckInFlight = false;
|
|
47
|
+
_connectionFailure;
|
|
46
48
|
/**
|
|
47
49
|
* Creates a new {@link ChronicleClient} using the provided options.
|
|
48
50
|
* @param options - The options to configure the client, including the connection string.
|
|
@@ -195,14 +197,10 @@ export class ChronicleClient {
|
|
|
195
197
|
try {
|
|
196
198
|
// Resolve (DNS SRV, when applicable) and select (load balancer strategy) a
|
|
197
199
|
// server address and rebuild the gRPC channel from scratch on every attempt,
|
|
198
|
-
// including the first —
|
|
199
|
-
//
|
|
200
|
-
// failed probe can leave a channel in TRANSIENT_FAILURE, which gRPC won't
|
|
201
|
-
// recover from without a new channel. The contracts connect() is bypassed
|
|
202
|
-
// here — it uses watchConnectivityState and rejects as soon as the state
|
|
203
|
-
// changes to CONNECTING (not READY), making it unreliable for initial
|
|
204
|
-
// connection establishment.
|
|
200
|
+
// including the first — so membership and load changes are picked up. Verify
|
|
201
|
+
// the new channel's descriptor before registration or append can produce effects.
|
|
205
202
|
await this._connection.resetChannel();
|
|
203
|
+
await this._connection.connect();
|
|
206
204
|
this._logger.debug('Connecting to Chronicle kernel', { attempt: attempt + 1 });
|
|
207
205
|
// Probe with a real RPC call. gRPC connects lazily on the first call,
|
|
208
206
|
// so this effectively waits until the channel reaches READY or fails.
|
|
@@ -217,6 +215,10 @@ export class ChronicleClient {
|
|
|
217
215
|
return;
|
|
218
216
|
}
|
|
219
217
|
catch (error) {
|
|
218
|
+
if (error instanceof IncompatibleChronicleServer) {
|
|
219
|
+
this.failConnection(error);
|
|
220
|
+
throw error;
|
|
221
|
+
}
|
|
220
222
|
attempt++;
|
|
221
223
|
const delayMs = await this.backOff(attempt, 'Connection attempt failed, retrying', error);
|
|
222
224
|
this._logger.verbose('Backed off before next connection attempt', { attempt, delayMs });
|
|
@@ -228,6 +230,11 @@ export class ChronicleClient {
|
|
|
228
230
|
if (this._isDisposed) {
|
|
229
231
|
throw new Error('ChronicleClient is disposed. Create a new client instance before making calls.');
|
|
230
232
|
}
|
|
233
|
+
if (this._connectionFailure)
|
|
234
|
+
throw this._connectionFailure;
|
|
235
|
+
// Callers arriving during recovery must share its verdict, not create a competing channel.
|
|
236
|
+
if (this._reconnectOperation)
|
|
237
|
+
await this._reconnectOperation;
|
|
231
238
|
if (this._lifecycle.isConnected) {
|
|
232
239
|
return;
|
|
233
240
|
}
|
|
@@ -239,6 +246,8 @@ export class ChronicleClient {
|
|
|
239
246
|
await this._connectOperation;
|
|
240
247
|
}
|
|
241
248
|
async reconnect(reason, error) {
|
|
249
|
+
if (this._connectionFailure)
|
|
250
|
+
throw this._connectionFailure;
|
|
242
251
|
if (!this._reconnectOperation) {
|
|
243
252
|
this._reconnectOperation = (async () => {
|
|
244
253
|
this._logger.warn('Reconnecting to Chronicle kernel', {
|
|
@@ -256,6 +265,7 @@ export class ChronicleClient {
|
|
|
256
265
|
while (!this._isDisposed) {
|
|
257
266
|
try {
|
|
258
267
|
await this._connection.resetChannel();
|
|
268
|
+
await this._connection.connect();
|
|
259
269
|
await this._connection.server.getVersionInfo({}, { signal: AbortSignal.timeout(10_000) });
|
|
260
270
|
this._logger.info('Reconnected to Chronicle kernel', { attempt: attempt + 1 });
|
|
261
271
|
await this.startKernelKeepAlive();
|
|
@@ -267,6 +277,10 @@ export class ChronicleClient {
|
|
|
267
277
|
return;
|
|
268
278
|
}
|
|
269
279
|
catch (reconnectError) {
|
|
280
|
+
if (reconnectError instanceof IncompatibleChronicleServer) {
|
|
281
|
+
this.failConnection(reconnectError);
|
|
282
|
+
throw reconnectError;
|
|
283
|
+
}
|
|
270
284
|
attempt++;
|
|
271
285
|
await this.backOff(attempt, 'Reconnect attempt failed, retrying', reconnectError);
|
|
272
286
|
}
|
|
@@ -306,6 +320,8 @@ export class ChronicleClient {
|
|
|
306
320
|
}
|
|
307
321
|
}
|
|
308
322
|
shouldReconnect(error) {
|
|
323
|
+
if (error instanceof IncompatibleChronicleServer)
|
|
324
|
+
return false;
|
|
309
325
|
const code = Number(error?.code ?? -1);
|
|
310
326
|
const details = String(error?.details ?? '');
|
|
311
327
|
const message = this.toErrorMessage(error);
|
|
@@ -333,7 +349,7 @@ export class ChronicleClient {
|
|
|
333
349
|
}
|
|
334
350
|
startConnectionWatchdog() {
|
|
335
351
|
this._watchdogHandle = setInterval(() => {
|
|
336
|
-
void this.runHealthCheck();
|
|
352
|
+
void this.runHealthCheck().catch(error => this.backgroundConnectionFailed('watchdog-health-check', error));
|
|
337
353
|
}, ChronicleClient._healthCheckIntervalMs);
|
|
338
354
|
this._watchdogHandle.unref?.();
|
|
339
355
|
}
|
|
@@ -367,7 +383,7 @@ export class ChronicleClient {
|
|
|
367
383
|
if (this._isDisposed || signal.aborted) {
|
|
368
384
|
return;
|
|
369
385
|
}
|
|
370
|
-
void this.reconnect(reason, error);
|
|
386
|
+
void this.reconnect(reason, error).catch(failure => this.backgroundConnectionFailed(reason, failure));
|
|
371
387
|
});
|
|
372
388
|
await keepAlive.start({
|
|
373
389
|
ConnectionId: this._lifecycle.connectionId,
|
|
@@ -384,6 +400,22 @@ export class ChronicleClient {
|
|
|
384
400
|
connectionId: this._lifecycle.connectionId
|
|
385
401
|
});
|
|
386
402
|
}
|
|
403
|
+
failConnection(error) {
|
|
404
|
+
this._connectionFailure = error;
|
|
405
|
+
this._keepAliveAbortController?.abort();
|
|
406
|
+
this._connection.disconnect();
|
|
407
|
+
if (this._watchdogHandle) {
|
|
408
|
+
clearInterval(this._watchdogHandle);
|
|
409
|
+
this._watchdogHandle = undefined;
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
backgroundConnectionFailed(reason, error) {
|
|
413
|
+
this.failConnection(error instanceof Error ? error : new Error(String(error)));
|
|
414
|
+
this._logger.error('Background connection recovery failed; create a new client after correcting the server', {
|
|
415
|
+
reason,
|
|
416
|
+
error: this.toErrorMessage(error)
|
|
417
|
+
});
|
|
418
|
+
}
|
|
387
419
|
async registerArtifactsForStore(store, reason) {
|
|
388
420
|
this._logger.debug('Registering artifacts for event store', {
|
|
389
421
|
eventStore: store.name.value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChronicleClient.js","sourceRoot":"","sources":["../ChronicleClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChronicleClient.js","sourceRoot":"","sources":["../ChronicleClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,7 @@ export declare class ChronicleConnection implements ChronicleServices {
|
|
|
47
47
|
private _channel;
|
|
48
48
|
private _services;
|
|
49
49
|
private _connections;
|
|
50
|
+
private _compatibility;
|
|
50
51
|
private readonly _connectionString;
|
|
51
52
|
private readonly _tokenProvider;
|
|
52
53
|
private readonly _addressResolver;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChronicleConnection.d.ts","sourceRoot":"","sources":["../../connection/ChronicleConnection.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAW,kBAAkB,EAAkB,MAAM,eAAe,CAAC;AACjF,OAAO,EAqBH,KAAK,uBAAuB,EAC/B,MAAM,6BAA6B,CAAC;AAOrC,OAAO,EAAsB,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAE5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChronicleConnection.d.ts","sourceRoot":"","sources":["../../connection/ChronicleConnection.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAW,kBAAkB,EAAkB,MAAM,eAAe,CAAC;AACjF,OAAO,EAqBH,KAAK,uBAAuB,EAC/B,MAAM,6BAA6B,CAAC;AAOrC,OAAO,EAAsB,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAE5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAOxD;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACvC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,yBAAyB,CAAC;IAEtD;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAEjC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,iBAAiB;IAY7C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAXrC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA4B;IAC9D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAiC;IAClE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;IAC9D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAgB;gBAER,QAAQ,EAAE,0BAA0B;IAuBjE,IAAI,gBAAgB,IAAI,yBAAyB,CAEhD;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,WAAW,gEAEd;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,eAAe,oEAElB;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,cAAc,mEAEjB;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,WAAW,gEAEd;IAED,IAAI,SAAS,8DAEZ;IAED,IAAI,uBAAuB,qFAE1B;IAED,IAAI,gBAAgB,qEAEnB;IAED,IAAI,QAAQ,6DAEX;IAED,IAAI,QAAQ,6DAEX;IAED,IAAI,WAAW,gEAEd;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,iBAAiB,sEAEpB;IAED,IAAI,sBAAsB,2EAEzB;IAED,IAAI,IAAI,yDAEP;IAED,IAAI,QAAQ,6DAEX;IAED,IAAI,YAAY,iEAEf;IAED,IAAI,MAAM,2DAET;IAED,IAAI,UAAU,qEAEb;IAED,IAAI,gBAAgB,uFAEnB;IAED,IAAI,WAAW,IAAI,uBAAuB,CAEzC;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAOxB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAY7B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAKhC,UAAU,IAAI,IAAI;IAKlB,OAAO,IAAI,IAAI;YAID,aAAa;IAmD3B,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,wBAAwB;IAyBhC,OAAO,CAAC,oBAAoB;CAoB/B"}
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
import { ConnectionServiceDefinition, ConstraintsDefinition, EventSeedingDefinition, EventSequencesDefinition, EventStoresDefinition, EventTypesDefinition, FailedPartitionsDefinition, IdentitiesDefinition, JobsDefinition, MaterializedReadModelsDefinition, NamespacesDefinition, ObserversDefinition, ProjectionsDefinition, ReactorsDefinition, ReadModelExplorerDefinition, ReadModelsDefinition, RecommendationsDefinition, ReducersDefinition, ServerDefinition, WebhooksDefinition } from '@cratis/chronicle.contracts';
|
|
4
4
|
import { ComplianceDefinition } from '../compliance/ComplianceContracts';
|
|
5
|
-
import { createChannel, createClientFactory
|
|
5
|
+
import { createChannel, createClientFactory } from 'nice-grpc';
|
|
6
6
|
import { Metadata } from 'nice-grpc-common';
|
|
7
7
|
import { EventStoreSubscriptionsDefinition } from '../eventStoreSubscriptions/contracts';
|
|
8
8
|
import { ExternalServicesDefinition } from '../externalServices/ExternalServicesContracts';
|
|
9
9
|
import { AuthenticationMode, ChronicleConnectionString } from './ChronicleConnectionString';
|
|
10
10
|
import { ChronicleServerAddressResolver } from './ChronicleServerAddressResolver';
|
|
11
|
+
import { CompatibilityPreflight } from './CompatibilityPreflight';
|
|
11
12
|
import { formatServerAddress } from './formatServerAddress';
|
|
12
13
|
import { createLoadBalancerStrategy } from './LoadBalancerStrategyFactory';
|
|
13
14
|
import { NoOpTokenProvider, OAuthTokenProvider } from './TokenProvider';
|
|
@@ -19,6 +20,7 @@ export class ChronicleConnection {
|
|
|
19
20
|
_channel;
|
|
20
21
|
_services;
|
|
21
22
|
_connections;
|
|
23
|
+
_compatibility;
|
|
22
24
|
_connectionString;
|
|
23
25
|
_tokenProvider;
|
|
24
26
|
_addressResolver;
|
|
@@ -125,8 +127,8 @@ export class ChronicleConnection {
|
|
|
125
127
|
}
|
|
126
128
|
async connect() {
|
|
127
129
|
await this._clientsReady;
|
|
128
|
-
|
|
129
|
-
await
|
|
130
|
+
// The bounded compatibility RPC establishes transport readiness and contract support together.
|
|
131
|
+
await this._compatibility.verify();
|
|
130
132
|
this._isConnected = true;
|
|
131
133
|
}
|
|
132
134
|
async resetChannel() {
|
|
@@ -168,12 +170,15 @@ export class ChronicleConnection {
|
|
|
168
170
|
const credentials = this._options.credentials ?? this._connectionString.createCredentials();
|
|
169
171
|
this._channel = createChannel(serverAddress, credentials, channelOptions);
|
|
170
172
|
const factory = createClientFactory().use(this.createAuthMiddleware());
|
|
173
|
+
this._connections = factory.create(ConnectionServiceDefinition, this._channel);
|
|
174
|
+
this._compatibility = new CompatibilityPreflight(this._connections, this._options.connectTimeout ?? 10_000);
|
|
175
|
+
const eventSequenceFactory = factory.use(this._compatibility.middleware());
|
|
171
176
|
this._services = {
|
|
172
177
|
eventStores: factory.create(EventStoresDefinition, this._channel),
|
|
173
178
|
namespaces: factory.create(NamespacesDefinition, this._channel),
|
|
174
179
|
recommendations: factory.create(RecommendationsDefinition, this._channel),
|
|
175
180
|
identities: factory.create(IdentitiesDefinition, this._channel),
|
|
176
|
-
eventSequences:
|
|
181
|
+
eventSequences: eventSequenceFactory.create(EventSequencesDefinition, this._channel),
|
|
177
182
|
eventTypes: factory.create(EventTypesDefinition, this._channel),
|
|
178
183
|
constraints: factory.create(ConstraintsDefinition, this._channel),
|
|
179
184
|
observers: factory.create(ObserversDefinition, this._channel),
|
|
@@ -192,7 +197,6 @@ export class ChronicleConnection {
|
|
|
192
197
|
compliance: factory.create(ComplianceDefinition, this._channel),
|
|
193
198
|
externalServices: factory.create(ExternalServicesDefinition, this._channel)
|
|
194
199
|
};
|
|
195
|
-
this._connections = factory.create(ConnectionServiceDefinition, this._channel);
|
|
196
200
|
}
|
|
197
201
|
createTokenProvider() {
|
|
198
202
|
const hasUsername = !!this._connectionString.username;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChronicleConnection.js","sourceRoot":"","sources":["../../connection/ChronicleConnection.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAGrG,OAAO,EACH,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,cAAc,EACd,gCAAgC,EAChC,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,2BAA2B,EAC3B,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAErB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"ChronicleConnection.js","sourceRoot":"","sources":["../../connection/ChronicleConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type ConnectionServiceClient } from '@cratis/chronicle.contracts';
|
|
2
|
+
import { type ClientMiddleware } from 'nice-grpc-common';
|
|
3
|
+
/** Verifies the installed wire contract before a channel can perform event-sequence operations. */
|
|
4
|
+
export declare class CompatibilityPreflight {
|
|
5
|
+
private readonly _connections;
|
|
6
|
+
private readonly _timeout;
|
|
7
|
+
private _verification?;
|
|
8
|
+
constructor(_connections: ConnectionServiceClient, _timeout: number);
|
|
9
|
+
/** Shares in-flight checks and caches verdicts for this channel; transient failures can be retried. */
|
|
10
|
+
verify(): Promise<void>;
|
|
11
|
+
/** Gates even direct service calls that did not first call connect(). */
|
|
12
|
+
middleware(): ClientMiddleware;
|
|
13
|
+
private check;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=CompatibilityPreflight.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CompatibilityPreflight.d.ts","sourceRoot":"","sources":["../../connection/CompatibilityPreflight.ts"],"names":[],"mappings":"AAIA,OAAO,EAA0B,KAAK,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACnG,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAO9E,mGAAmG;AACnG,qBAAa,sBAAsB;IAGnB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAA2B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAF7F,OAAO,CAAC,aAAa,CAAC,CAAgB;gBAET,YAAY,EAAE,uBAAuB,EAAmB,QAAQ,EAAE,MAAM;IAErG,uGAAuG;IACvG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAavB,yEAAyE;IACzE,UAAU,IAAI,gBAAgB;YAQhB,KAAK;CAoBtB"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
import { createRequire } from 'node:module';
|
|
4
|
+
import { chronicleDescriptorSet } from '@cratis/chronicle.contracts';
|
|
5
|
+
import { ClientError, Status } from 'nice-grpc-common';
|
|
6
|
+
import { IncompatibleChronicleServer } from './IncompatibleChronicleServer';
|
|
7
|
+
const require = createRequire(import.meta.url);
|
|
8
|
+
const clientVersion = require('@cratis/chronicle/package.json').version;
|
|
9
|
+
const protocolVersion = require('@cratis/chronicle.contracts/package.json').version;
|
|
10
|
+
/** Verifies the installed wire contract before a channel can perform event-sequence operations. */
|
|
11
|
+
export class CompatibilityPreflight {
|
|
12
|
+
_connections;
|
|
13
|
+
_timeout;
|
|
14
|
+
_verification;
|
|
15
|
+
constructor(_connections, _timeout) {
|
|
16
|
+
this._connections = _connections;
|
|
17
|
+
this._timeout = _timeout;
|
|
18
|
+
}
|
|
19
|
+
/** Shares in-flight checks and caches verdicts for this channel; transient failures can be retried. */
|
|
20
|
+
verify() {
|
|
21
|
+
if (!this._verification) {
|
|
22
|
+
const verification = this.check().catch(error => {
|
|
23
|
+
if (!(error instanceof IncompatibleChronicleServer) && this._verification === verification) {
|
|
24
|
+
this._verification = undefined;
|
|
25
|
+
}
|
|
26
|
+
throw error;
|
|
27
|
+
});
|
|
28
|
+
this._verification = verification;
|
|
29
|
+
}
|
|
30
|
+
return this._verification;
|
|
31
|
+
}
|
|
32
|
+
/** Gates even direct service calls that did not first call connect(). */
|
|
33
|
+
middleware() {
|
|
34
|
+
const preflight = this;
|
|
35
|
+
return async function* compatibilityMiddleware(call, options) {
|
|
36
|
+
await preflight.verify();
|
|
37
|
+
return yield* call.next(call.request, options);
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
async check() {
|
|
41
|
+
if (!chronicleDescriptorSet?.length) {
|
|
42
|
+
throw new IncompatibleChronicleServer('The installed Chronicle contracts have no descriptor set; compatibility cannot be verified.');
|
|
43
|
+
}
|
|
44
|
+
const response = await this._connections.checkCompatibility({
|
|
45
|
+
ClientType: 'TypeScript',
|
|
46
|
+
ClientVersion: clientVersion,
|
|
47
|
+
ProtocolVersion: protocolVersion,
|
|
48
|
+
DescriptorSet: Buffer.from(chronicleDescriptorSet)
|
|
49
|
+
}, { signal: AbortSignal.timeout(this._timeout) }).catch(error => {
|
|
50
|
+
if (error instanceof ClientError && error.code === Status.UNIMPLEMENTED) {
|
|
51
|
+
throw new IncompatibleChronicleServer('The Chronicle server does not support contract compatibility checks; upgrade the kernel before connecting this client.');
|
|
52
|
+
}
|
|
53
|
+
throw error;
|
|
54
|
+
});
|
|
55
|
+
if (response?.IsCompatible !== true || !Array.isArray(response.Incompatibilities) || response.Incompatibilities.length !== 0) {
|
|
56
|
+
const reasons = response?.Incompatibilities?.join('; ') || 'missing, negative, or inconsistent compatibility verdict';
|
|
57
|
+
throw new IncompatibleChronicleServer(`Chronicle server ${response?.ServerVersion ?? 'unknown'} is incompatible with contracts ${protocolVersion}: ${reasons}`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=CompatibilityPreflight.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CompatibilityPreflight.js","sourceRoot":"","sources":["../../connection/CompatibilityPreflight.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IncompatibleChronicleServer.d.ts","sourceRoot":"","sources":["../../connection/IncompatibleChronicleServer.ts"],"names":[],"mappings":"AAGA,wFAAwF;AACxF,qBAAa,2BAA4B,SAAQ,KAAK;gBACtC,OAAO,EAAE,MAAM;CAI9B"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
/** A permanent contract mismatch; reconnect backoff cannot make this operation safe. */
|
|
4
|
+
export class IncompatibleChronicleServer extends Error {
|
|
5
|
+
constructor(message) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.name = 'IncompatibleChronicleServer';
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=IncompatibleChronicleServer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IncompatibleChronicleServer.js","sourceRoot":"","sources":["../../connection/IncompatibleChronicleServer.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAErG,wFAAwF;AACxF,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IAClD,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAC9C,CAAC;CACJ"}
|
|
@@ -8,14 +8,12 @@ export interface CallValidationResult {
|
|
|
8
8
|
/**
|
|
9
9
|
* Structural shape shared by every Chronicle command and query result envelope.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* absence as `false`, so the boolean always reads as `false` and carries no signal.
|
|
15
|
-
* Authorization failures are reported through `AuthorizationFailureReason` and gRPC
|
|
16
|
-
* status codes instead.
|
|
11
|
+
* Kernels from 18.4.1 transmit authorization verdicts explicitly, including true values.
|
|
12
|
+
* Older kernels omitted true values; the connection compatibility check must reject those kernels
|
|
13
|
+
* before operations rather than ignoring an authorization failure.
|
|
17
14
|
*/
|
|
18
15
|
export interface CallResultLike {
|
|
16
|
+
IsAuthorized?: boolean;
|
|
19
17
|
ValidationResults: CallValidationResult[];
|
|
20
18
|
ExceptionMessages: string[];
|
|
21
19
|
AuthorizationFailureReason?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callResults.d.ts","sourceRoot":"","sources":["../../connection/callResults.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;CACrB;AAED
|
|
1
|
+
{"version":3,"file":"callResults.d.ts","sourceRoot":"","sources":["../../connection/callResults.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,oBAAoB,EAAE,CAAC;IAC1C,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,KAAK,CAAE,SAAQ,cAAc;IAC1D,IAAI,EAAE,KAAK,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,SAAS,CAAE,SAAQ,cAAc;IAChE,QAAQ,EAAE,SAAS,GAAG,SAAS,CAAC;CACnC;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;IAC1C;;;;OAIG;gBACS,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc;CAexD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAI7D;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAIpF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,SAAS,CAAC,GAAG,SAAS,CAQnH;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,KAAK,CAMlG;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAMnH"}
|
|
@@ -31,7 +31,7 @@ export class ChronicleCallFailed extends Error {
|
|
|
31
31
|
* @returns True when the call succeeded, false otherwise.
|
|
32
32
|
*/
|
|
33
33
|
export function isCallSuccess(result) {
|
|
34
|
-
return !result.AuthorizationFailureReason &&
|
|
34
|
+
return result.IsAuthorized !== false && !result.AuthorizationFailureReason &&
|
|
35
35
|
(result.ValidationResults ?? []).length === 0 &&
|
|
36
36
|
(result.ExceptionMessages ?? []).length === 0;
|
|
37
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callResults.js","sourceRoot":"","sources":["../../connection/callResults.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;
|
|
1
|
+
{"version":3,"file":"callResults.js","sourceRoot":"","sources":["../../connection/callResults.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAsCrG;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC1C;;;;OAIG;IACH,YAAY,SAAiB,EAAE,MAAsB;QACjD,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,0BAA0B,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,MAAM,gBAAgB,IAAI,MAAM,CAAC,iBAAiB,IAAI,EAAE,EAAE,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC;QACD,KAAK,MAAM,gBAAgB,IAAI,MAAM,CAAC,iBAAiB,IAAI,EAAE,EAAE,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACnC,CAAC;QAED,KAAK,CAAC,wBAAwB,SAAS,aAAa,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;QAC9F,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACtC,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAsB;IAChD,OAAO,MAAM,CAAC,YAAY,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,0BAA0B;QACtE,CAAC,MAAM,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC;QAC7C,CAAC,MAAM,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AACtD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE,MAAsB;IAC1E,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,mBAAmB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAY,SAAiB,EAAE,MAAoC;IACpG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,mBAAmB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,2FAA2F;IAC3F,uFAAuF;IACvF,OAAO,MAAM,CAAC,QAAS,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAQ,SAAiB,EAAE,MAA8B;IACvF,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,mBAAmB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAU,SAAiB,EAAE,MAA8B;IAC7F,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,wBAAwB,SAAS,yCAAyC,CAAC,CAAC;AAChG,CAAC"}
|
|
@@ -7,7 +7,17 @@ import type { ConcurrencyScope } from './ConcurrencyScope';
|
|
|
7
7
|
export interface AppendOptions {
|
|
8
8
|
/** Optional correlation identifier for tracking the append operation. */
|
|
9
9
|
correlationId?: string | Guid;
|
|
10
|
-
/** Optional
|
|
10
|
+
/** Optional source type. When omitted or empty, the kernel selects the route. */
|
|
11
|
+
sourceType?: string;
|
|
12
|
+
/** Optional stream type. When omitted or empty, the kernel selects the route. */
|
|
13
|
+
streamType?: string;
|
|
14
|
+
/** Optional stream identifier. When omitted or empty, the kernel selects the route. */
|
|
15
|
+
streamId?: string;
|
|
16
|
+
/** Optional compliance subject. Defaults to the event source identifier. */
|
|
17
|
+
subject?: string;
|
|
18
|
+
/** Optional occurrence time. When omitted, the kernel supplies the timestamp. */
|
|
19
|
+
occurred?: Date;
|
|
20
|
+
/** Reserved legacy option; does not override the append method's event source identifier. */
|
|
11
21
|
eventSourceId?: string;
|
|
12
22
|
/** Optional concurrency scope to use for append operations. */
|
|
13
23
|
concurrencyScope?: ConcurrencyScope;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppendOptions.d.ts","sourceRoot":"","sources":["../../eventSequences/AppendOptions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,yEAAyE;IACzE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B,
|
|
1
|
+
{"version":3,"file":"AppendOptions.d.ts","sourceRoot":"","sources":["../../eventSequences/AppendOptions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,yEAAyE;IACzE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,IAAI,CAAC;IAEhB,6FAA6F;IAC7F,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;IAEnC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CACxD"}
|
|
@@ -7,13 +7,15 @@ export interface EventForEventSourceId {
|
|
|
7
7
|
readonly eventSourceId: string;
|
|
8
8
|
/** The event payload to append. */
|
|
9
9
|
readonly event: object;
|
|
10
|
-
/** Optional
|
|
10
|
+
/** Optional stream type. Overrides AppendOptions.streamType; the kernel resolves an omitted or empty route. */
|
|
11
11
|
readonly eventStreamType?: string;
|
|
12
|
-
/** Optional
|
|
12
|
+
/** Optional stream identifier. Overrides AppendOptions.streamId; the kernel resolves an omitted or empty route. */
|
|
13
13
|
readonly eventStreamId?: string;
|
|
14
|
-
/** Optional
|
|
14
|
+
/** Optional source type. Overrides AppendOptions.sourceType; the kernel resolves an omitted or empty route. */
|
|
15
15
|
readonly eventSourceType?: string;
|
|
16
|
-
/** Optional
|
|
16
|
+
/** Optional occurrence time. Overrides the shared occurrence time. */
|
|
17
|
+
readonly occurred?: Date;
|
|
18
|
+
/** Optional subject. Overrides AppendOptions.subject; otherwise falls back to the event source identifier. */
|
|
17
19
|
readonly subject?: string;
|
|
18
20
|
/**
|
|
19
21
|
* Optional tags to associate with the event. These are combined with any static tags
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventForEventSourceId.d.ts","sourceRoot":"","sources":["../../eventSequences/EventForEventSourceId.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,iDAAiD;IACjD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAE/B,mCAAmC;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB
|
|
1
|
+
{"version":3,"file":"EventForEventSourceId.d.ts","sourceRoot":"","sources":["../../eventSequences/EventForEventSourceId.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,iDAAiD;IACjD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAE/B,mCAAmC;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,+GAA+G;IAC/G,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAElC,mHAAmH;IACnH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEhC,+GAA+G;IAC/G,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAElC,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IAEzB,8GAA8G;IAC9G,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;CAC/C"}
|
|
@@ -39,7 +39,7 @@ export declare class EventSequence implements IEventSequence {
|
|
|
39
39
|
/** @inheritdoc */
|
|
40
40
|
hasEventsFor(eventSourceId: string): Promise<boolean>;
|
|
41
41
|
/** @inheritdoc */
|
|
42
|
-
getForEventSourceIdAndEventTypes(eventSourceId: string, eventTypes: Constructor[], eventStreamType?: string, eventStreamId?: string,
|
|
42
|
+
getForEventSourceIdAndEventTypes(eventSourceId: string, eventTypes: Constructor[], eventStreamType?: string, eventStreamId?: string, eventSourceType?: string): Promise<AppendedEvent[]>;
|
|
43
43
|
/** @inheritdoc */
|
|
44
44
|
getFromSequenceNumber(sequenceNumber: EventSequenceNumber, eventSourceId?: string, filterEventTypes?: Constructor[]): Promise<AppendedEvent[]>;
|
|
45
45
|
/** @inheritdoc */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventSequence.d.ts","sourceRoot":"","sources":["../../eventSequences/EventSequence.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,OAAO,EAAE,WAAW,EAAwB,MAAM,sBAAsB,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"EventSequence.d.ts","sourceRoot":"","sources":["../../eventSequences/EventSequence.ts"],"names":[],"mappings":"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"}
|