@nmtjs/client 0.15.0-beta.5 → 0.15.0-beta.50
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 +31 -1
- package/dist/clients/runtime.d.ts +2 -2
- package/dist/clients/runtime.js +1 -1
- package/dist/clients/runtime.js.map +1 -1
- package/dist/clients/static.d.ts +2 -2
- package/dist/clients/static.js +6 -3
- package/dist/clients/static.js.map +1 -1
- package/dist/core.d.ts +36 -7
- package/dist/core.js +379 -106
- package/dist/core.js.map +1 -1
- package/dist/events.d.ts +1 -1
- package/dist/events.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +6 -5
- package/dist/index.js.map +1 -1
- package/dist/plugins/browser.d.ts +2 -0
- package/dist/plugins/browser.js +41 -0
- package/dist/plugins/browser.js.map +1 -0
- package/dist/plugins/heartbeat.d.ts +6 -0
- package/dist/plugins/heartbeat.js +86 -0
- package/dist/plugins/heartbeat.js.map +1 -0
- package/dist/plugins/index.d.ts +5 -0
- package/dist/plugins/index.js +6 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/plugins/logging.d.ts +9 -0
- package/dist/plugins/logging.js +30 -0
- package/dist/plugins/logging.js.map +1 -0
- package/dist/plugins/reconnect.d.ts +6 -0
- package/dist/plugins/reconnect.js +98 -0
- package/dist/plugins/reconnect.js.map +1 -0
- package/dist/plugins/types.d.ts +53 -0
- package/dist/plugins/types.js +2 -0
- package/dist/plugins/types.js.map +1 -0
- package/dist/streams.d.ts +3 -3
- package/dist/streams.js.map +1 -1
- package/dist/transformers.js.map +1 -1
- package/dist/types.d.ts +1 -4
- package/dist/types.js.map +1 -1
- package/package.json +27 -17
- package/src/clients/runtime.ts +4 -4
- package/src/clients/static.ts +9 -13
- package/src/core.ts +450 -132
- package/src/index.ts +1 -0
- package/src/plugins/browser.ts +61 -0
- package/src/plugins/heartbeat.ts +111 -0
- package/src/plugins/index.ts +5 -0
- package/src/plugins/logging.ts +42 -0
- package/src/plugins/reconnect.ts +130 -0
- package/src/plugins/types.ts +61 -0
- package/src/streams.ts +3 -3
- package/src/types.ts +1 -17
package/README.md
CHANGED
|
@@ -6,4 +6,34 @@
|
|
|
6
6
|
- binary data streaming and event subscriptions
|
|
7
7
|
- contract-based API
|
|
8
8
|
- end-to-end type safety
|
|
9
|
-
- CPU-intensive task execution on separate workers
|
|
9
|
+
- CPU-intensive task execution on separate workers
|
|
10
|
+
|
|
11
|
+
## Jobs E2E (Local Docker)
|
|
12
|
+
|
|
13
|
+
Prerequisites:
|
|
14
|
+
- Docker Desktop (or Docker Engine) with `docker compose` available
|
|
15
|
+
|
|
16
|
+
No host ports are exposed in this setup. Tests run fully inside Docker containers.
|
|
17
|
+
The test image is optimized for Docker layer caching with `pnpm fetch` + offline install.
|
|
18
|
+
|
|
19
|
+
Run both backends with one command:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
pnpm run test:e2e:jobs:docker
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
This command rebuilds the test image on each run and executes Redis + Valkey suites in one pass.
|
|
26
|
+
|
|
27
|
+
Run Jobs E2E directly in Docker:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
docker compose -f docker-compose.jobs-e2e.yml run --rm --build test-jobs
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Manual Docker control:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
docker compose -f docker-compose.jobs-e2e.yml up -d --wait redis valkey
|
|
37
|
+
docker compose -f docker-compose.jobs-e2e.yml run --rm --build test-jobs
|
|
38
|
+
docker compose -f docker-compose.jobs-e2e.yml down -v --remove-orphans
|
|
39
|
+
```
|
|
@@ -13,8 +13,8 @@ export declare class RuntimeClient<Transport extends ClientTransportFactory<any,
|
|
|
13
13
|
#private;
|
|
14
14
|
protected readonly transformer: RuntimeContractTransformer;
|
|
15
15
|
constructor(options: BaseClientOptions<RouterContract, SafeCall>, transport: Transport, transportOptions: Transport extends ClientTransportFactory<any, infer Options> ? Options : never);
|
|
16
|
-
get call(): ClientCallers<this[
|
|
17
|
-
get stream(): ClientCallers<this[
|
|
16
|
+
get call(): ClientCallers<this['_']['routes'], SafeCall, false>;
|
|
17
|
+
get stream(): ClientCallers<this['_']['routes'], SafeCall, true>;
|
|
18
18
|
protected resolveProcedures(router: TAnyRouterContract, path?: string[]): void;
|
|
19
19
|
protected buildCallers(): ClientCallers<this['_']['routes'], SafeCall, boolean>;
|
|
20
20
|
}
|
package/dist/clients/runtime.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/clients/runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAUvE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,MAAM,OAAO,0BAA0B;IACrC,WAAW,GAAG,IAAI,GAAG,EAAiC,CAAA;IAEtD,YAAY,MAA0B;
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/clients/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/clients/static.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { BaseClientTransformer } from '../transformers.ts';
|
|
|
7
7
|
export declare class StaticClient<Transport extends ClientTransportFactory<any, any> = ClientTransportFactory<any, any>, RouterContract extends TAnyRouterContract = TAnyRouterContract, SafeCall extends boolean = false> extends BaseClient<Transport, RouterContract, SafeCall, StaticInputContractTypeProvider, StaticOutputContractTypeProvider> {
|
|
8
8
|
protected readonly transformer: BaseClientTransformer;
|
|
9
9
|
constructor(options: BaseClientOptions<RouterContract, SafeCall>, transport: Transport, transportOptions: Transport extends ClientTransportFactory<any, infer Options> ? Options : never);
|
|
10
|
-
get call(): ClientCallers<this[
|
|
11
|
-
get stream(): ClientCallers<this[
|
|
10
|
+
get call(): ClientCallers<this['_']['routes'], SafeCall, false>;
|
|
11
|
+
get stream(): ClientCallers<this['_']['routes'], SafeCall, true>;
|
|
12
12
|
protected createProxy<T>(target: Record<string, unknown>, isStream: boolean, path?: string[]): T;
|
|
13
13
|
}
|
package/dist/clients/static.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BaseClient } from
|
|
2
|
-
import { BaseClientTransformer } from
|
|
1
|
+
import { BaseClient } from '../core.js';
|
|
2
|
+
import { BaseClientTransformer } from '../transformers.js';
|
|
3
3
|
export class StaticClient extends BaseClient {
|
|
4
4
|
transformer;
|
|
5
5
|
constructor(options, transport, transportOptions) {
|
|
@@ -18,7 +18,10 @@ export class StaticClient extends BaseClient {
|
|
|
18
18
|
if (prop === 'then')
|
|
19
19
|
return obj;
|
|
20
20
|
const newPath = [...path, String(prop)];
|
|
21
|
-
const caller = (payload, options) => this._call(newPath.join('/'), payload,
|
|
21
|
+
const caller = (payload, options) => this._call(newPath.join('/'), payload, {
|
|
22
|
+
...options,
|
|
23
|
+
_stream_response: isStream || options?._stream_response,
|
|
24
|
+
});
|
|
22
25
|
return this.createProxy(caller, isStream, newPath);
|
|
23
26
|
},
|
|
24
27
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static.js","sourceRoot":"","sources":["../../src/clients/static.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAE1D,MAAM,OAAO,YAOX,SAAQ,UAMT;IACoB,WAAW,CAAuB;IAErD,YACE,OAAoD,EACpD,SAAoB,EACpB,gBAKS;
|
|
1
|
+
{"version":3,"file":"static.js","sourceRoot":"","sources":["../../src/clients/static.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAE1D,MAAM,OAAO,YAOX,SAAQ,UAMT;IACoB,WAAW,CAAuB;IAErD,YACE,OAAoD,EACpD,SAAoB,EACpB,gBAKS,EACT;QACA,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAA;QAC3C,IAAI,CAAC,WAAW,GAAG,IAAI,qBAAqB,EAAE,CAAA;IAAA,CAC/C;IAED,IAAa,IAAI,GAAwD;QACvE,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAA;IAAA,CACpD;IAED,IAAa,MAAM,GAAuD;QACxE,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAA;IAAA,CACnD;IAES,WAAW,CACnB,MAA+B,EAC/B,QAAiB,EACjB,IAAI,GAAa,EAAE,EACnB;QACA,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE;YACvB,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC;gBAClB,IAAI,IAAI,KAAK,MAAM;oBAAE,OAAO,GAAG,CAAA;gBAC/B,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;gBACvC,MAAM,MAAM,GAAG,CACb,OAAiB,EACjB,OAAoC,EACpC,EAAE,CACF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE;oBACrC,GAAG,OAAO;oBACV,gBAAgB,EAAE,QAAQ,IAAI,OAAO,EAAE,gBAAgB;iBACxD,CAAC,CAAA;gBACJ,OAAO,IAAI,CAAC,WAAW,CAAC,MAAa,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;YAAA,CAC1D;SACF,CAAM,CAAA;IAAA,CACR;CACF"}
|
package/dist/core.d.ts
CHANGED
|
@@ -2,8 +2,9 @@ import type { Future, TypeProvider } from '@nmtjs/common';
|
|
|
2
2
|
import type { TAnyRouterContract } from '@nmtjs/contract';
|
|
3
3
|
import type { ProtocolBlobMetadata, ProtocolVersion } from '@nmtjs/protocol';
|
|
4
4
|
import type { BaseClientFormat, MessageContext, ProtocolVersionInterface } from '@nmtjs/protocol/client';
|
|
5
|
-
import { ProtocolBlob } from '@nmtjs/protocol';
|
|
5
|
+
import { ConnectionType, ProtocolBlob } from '@nmtjs/protocol';
|
|
6
6
|
import { ProtocolError } from '@nmtjs/protocol/client';
|
|
7
|
+
import type { ClientDisconnectReason, ClientPlugin, ClientPluginEvent, ClientPluginInstance } from './plugins/types.ts';
|
|
7
8
|
import type { BaseClientTransformer } from './transformers.ts';
|
|
8
9
|
import type { ClientTransportFactory } from './transport.ts';
|
|
9
10
|
import type { ClientCallers, ClientCallOptions, ResolveAPIRouterRoutes } from './types.ts';
|
|
@@ -23,7 +24,7 @@ export interface BaseClientOptions<RouterContract extends TAnyRouterContract = T
|
|
|
23
24
|
format: BaseClientFormat;
|
|
24
25
|
application?: string;
|
|
25
26
|
timeout?: number;
|
|
26
|
-
|
|
27
|
+
plugins?: ClientPlugin[];
|
|
27
28
|
safe?: SafeCall;
|
|
28
29
|
}
|
|
29
30
|
/**
|
|
@@ -32,9 +33,9 @@ export interface BaseClientOptions<RouterContract extends TAnyRouterContract = T
|
|
|
32
33
|
*/
|
|
33
34
|
export declare abstract class BaseClient<TransportFactory extends ClientTransportFactory<any, any> = ClientTransportFactory<any, any>, RouterContract extends TAnyRouterContract = TAnyRouterContract, SafeCall extends boolean = false, InputTypeProvider extends TypeProvider = TypeProvider, OutputTypeProvider extends TypeProvider = TypeProvider> extends EventEmitter<{
|
|
34
35
|
connected: [];
|
|
35
|
-
disconnected: [reason:
|
|
36
|
+
disconnected: [reason: ClientDisconnectReason];
|
|
37
|
+
pong: [nonce: number];
|
|
36
38
|
}> {
|
|
37
|
-
#private;
|
|
38
39
|
readonly options: BaseClientOptions<RouterContract, SafeCall>;
|
|
39
40
|
readonly transportFactory: TransportFactory;
|
|
40
41
|
readonly transportOptions: TransportFactory extends ClientTransportFactory<any, infer U> ? U : never;
|
|
@@ -55,15 +56,43 @@ export declare abstract class BaseClient<TransportFactory extends ClientTranspor
|
|
|
55
56
|
protected callId: number;
|
|
56
57
|
protected streamId: number;
|
|
57
58
|
protected cab: AbortController | null;
|
|
58
|
-
protected
|
|
59
|
+
protected connecting: Promise<void> | null;
|
|
60
|
+
protected _state: 'connected' | 'disconnected';
|
|
61
|
+
protected _lastDisconnectReason: ClientDisconnectReason;
|
|
62
|
+
protected _disposed: boolean;
|
|
63
|
+
protected pingNonce: number;
|
|
64
|
+
protected pendingPings: Map<number, Future<void>>;
|
|
65
|
+
protected plugins: ClientPluginInstance[];
|
|
66
|
+
private clientDisconnectAsReconnect;
|
|
67
|
+
private clientDisconnectOverrideReason;
|
|
68
|
+
private authValue;
|
|
59
69
|
constructor(options: BaseClientOptions<RouterContract, SafeCall>, transportFactory: TransportFactory, transportOptions: TransportFactory extends ClientTransportFactory<any, infer U> ? U : never);
|
|
70
|
+
dispose(): void;
|
|
71
|
+
get state(): "connected" | "disconnected";
|
|
72
|
+
get lastDisconnectReason(): ClientDisconnectReason;
|
|
73
|
+
get transportType(): ConnectionType;
|
|
74
|
+
isDisposed(): boolean;
|
|
75
|
+
requestReconnect(reason?: string): Promise<void>;
|
|
60
76
|
get auth(): any;
|
|
61
77
|
set auth(value: any);
|
|
62
78
|
connect(): Promise<void>;
|
|
63
|
-
disconnect(
|
|
79
|
+
disconnect(options?: {
|
|
80
|
+
reconnect?: boolean;
|
|
81
|
+
reason?: string;
|
|
82
|
+
}): Promise<void>;
|
|
64
83
|
blob(source: Blob | ReadableStream | string | AsyncIterable<Uint8Array>, metadata?: ProtocolBlobMetadata): ProtocolBlob;
|
|
65
84
|
protected _call(procedure: string, payload: any, options?: ClientCallOptions): Promise<any>;
|
|
66
85
|
protected onConnect(): Promise<void>;
|
|
67
|
-
protected onDisconnect(reason:
|
|
86
|
+
protected onDisconnect(reason: ClientDisconnectReason): Promise<void>;
|
|
87
|
+
protected nextPingNonce(): number;
|
|
88
|
+
ping(timeout: number, signal?: AbortSignal): Promise<any>;
|
|
89
|
+
protected stopAllPendingPings(reason?: any): void;
|
|
68
90
|
protected onMessage(buffer: ArrayBufferView): Promise<void>;
|
|
91
|
+
private handleRPCResponseMessage;
|
|
92
|
+
private handleRPCStreamResponseMessage;
|
|
93
|
+
private handleCallResponse;
|
|
94
|
+
protected send(buffer: ArrayBufferView, signal?: AbortSignal): Promise<void>;
|
|
95
|
+
protected getStreamId(): number;
|
|
96
|
+
protected getCallId(): number;
|
|
97
|
+
protected emitClientEvent(event: ClientPluginEvent): void;
|
|
69
98
|
}
|