@milaboratories/pl-client 2.11.0 → 2.11.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/dist/core/driver.d.ts +2 -2
- package/dist/core/driver.d.ts.map +1 -1
- package/dist/core/grpc.d.ts +16 -0
- package/dist/core/grpc.d.ts.map +1 -0
- package/dist/core/ll_client.d.ts +11 -3
- package/dist/core/ll_client.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +118 -88
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/core/client.test.ts +2 -2
- package/src/core/client.ts +3 -3
- package/src/core/driver.ts +2 -2
- package/src/core/grpc.ts +17 -0
- package/src/core/ll_client.ts +65 -9
- package/src/core/unauth_client.ts +3 -3
- package/src/index.ts +1 -0
package/dist/core/driver.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { PlClient } from './client';
|
|
2
|
-
import { GrpcTransport } from '@protobuf-ts/grpc-transport';
|
|
3
2
|
import { RpcOptions } from '@protobuf-ts/runtime-rpc';
|
|
4
3
|
import { Dispatcher } from 'undici';
|
|
5
4
|
import { ResourceType } from './types';
|
|
5
|
+
import { GrpcClientProviderFactory } from './grpc';
|
|
6
6
|
/** Drivers must implement this interface */
|
|
7
7
|
export interface PlDriver {
|
|
8
8
|
close(): void;
|
|
@@ -12,7 +12,7 @@ export interface PlDriverDefinition<Drv extends PlDriver> {
|
|
|
12
12
|
/** Used as key to only once instantiate specific drivers */
|
|
13
13
|
readonly name: string;
|
|
14
14
|
/** Initialization routine, will be executed only once for each driver in a specific client */
|
|
15
|
-
init(pl: PlClient,
|
|
15
|
+
init(pl: PlClient, grpcClientProviderFactory: GrpcClientProviderFactory, httpDispatcher: Dispatcher): Drv;
|
|
16
16
|
}
|
|
17
17
|
export declare function addRTypeToMetadata(rType: ResourceType, options?: RpcOptions): RpcOptions;
|
|
18
18
|
//# sourceMappingURL=driver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../src/core/driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../src/core/driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,QAAQ,CAAC;AAExD,4CAA4C;AAC5C,MAAM,WAAW,QAAQ;IACvB,KAAK,IAAI,IAAI,CAAC;CACf;AAED,oDAAoD;AACpD,MAAM,WAAW,kBAAkB,CAAC,GAAG,SAAS,QAAQ;IACtD,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,8FAA8F;IAC9F,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,cAAc,EAAE,UAAU,GAAG,GAAG,CAAC;CAC3G;AAKD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,UAAU,cAM3E"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { GrpcTransport } from '@protobuf-ts/grpc-transport';
|
|
2
|
+
/**
|
|
3
|
+
* A provider for a grpc client.
|
|
4
|
+
* The client is created on demand, and is reset when the transport is reset.
|
|
5
|
+
* This is useful for cases where the client is used in a loop, and the transport is reset after each iteration.
|
|
6
|
+
*/
|
|
7
|
+
export interface GrpcClientProvider<Client> {
|
|
8
|
+
get(): Client;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* A factory for grpc client providers.
|
|
12
|
+
*/
|
|
13
|
+
export interface GrpcClientProviderFactory {
|
|
14
|
+
createGrpcClientProvider<Client>(clientConstructor: (transport: GrpcTransport) => Client): GrpcClientProvider<Client>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=grpc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grpc.d.ts","sourceRoot":"","sources":["../../src/core/grpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;;;GAIG;AACH,MAAM,WAAW,kBAAkB,CAAC,MAAM;IACxC,GAAG,IAAI,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,wBAAwB,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,SAAS,EAAE,aAAa,KAAK,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;CACvH"}
|
package/dist/core/ll_client.d.ts
CHANGED
|
@@ -3,12 +3,13 @@ import { AuthOps, PlClientConfig, PlConnectionStatus, PlConnectionStatusListener
|
|
|
3
3
|
import { GrpcTransport } from '@protobuf-ts/grpc-transport';
|
|
4
4
|
import { LLPlTransaction } from './ll_transaction';
|
|
5
5
|
import { Dispatcher } from 'undici';
|
|
6
|
+
import { GrpcClientProvider, GrpcClientProviderFactory } from './grpc';
|
|
6
7
|
export interface PlCallOps {
|
|
7
8
|
timeout?: number;
|
|
8
9
|
abortSignal?: AbortSignal;
|
|
9
10
|
}
|
|
10
11
|
/** Abstract out low level networking and authorization details */
|
|
11
|
-
export declare class LLPlClient {
|
|
12
|
+
export declare class LLPlClient implements GrpcClientProviderFactory {
|
|
12
13
|
private readonly ops;
|
|
13
14
|
readonly conf: PlClientConfig;
|
|
14
15
|
/** Initial authorization information */
|
|
@@ -25,7 +26,8 @@ export declare class LLPlClient {
|
|
|
25
26
|
private readonly statusListener?;
|
|
26
27
|
private readonly grpcInterceptors;
|
|
27
28
|
private _grpcTransport;
|
|
28
|
-
private
|
|
29
|
+
private readonly providers;
|
|
30
|
+
readonly grpcPl: GrpcClientProvider<PlatformClient>;
|
|
29
31
|
readonly httpDispatcher: Dispatcher;
|
|
30
32
|
constructor(configOrAddress: PlClientConfig | string, ops?: {
|
|
31
33
|
auth?: AuthOps;
|
|
@@ -37,8 +39,14 @@ export declare class LLPlClient {
|
|
|
37
39
|
* @param gzip - whether to enable gzip compression
|
|
38
40
|
*/
|
|
39
41
|
private initGrpc;
|
|
42
|
+
private providerCleanupCounter;
|
|
43
|
+
/**
|
|
44
|
+
* Creates a provider for a grpc client. Returned provider will create fresh client whenever the underlying transport is reset.
|
|
45
|
+
*
|
|
46
|
+
* @param clientConstructor - a factory function that creates a grpc client
|
|
47
|
+
*/
|
|
48
|
+
createGrpcClientProvider<Client>(clientConstructor: (transport: GrpcTransport) => Client): GrpcClientProvider<Client>;
|
|
40
49
|
get grpcTransport(): GrpcTransport;
|
|
41
|
-
get grpcPl(): PlatformClient;
|
|
42
50
|
/** Returns true if client is authenticated. Even with anonymous auth information
|
|
43
51
|
* connection is considered authenticated. Unauthenticated clients are used for
|
|
44
52
|
* login and similar tasks, see {@link UnauthenticatedPlClient}. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ll_client.d.ts","sourceRoot":"","sources":["../../src/core/ll_client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iEAAiE,CAAC;AAQjG,OAAO,KAAK,EAEV,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,0BAA0B,EAC3B,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"ll_client.d.ts","sourceRoot":"","sources":["../../src/core/ll_client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iEAAiE,CAAC;AAQjG,OAAO,KAAK,EAEV,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,0BAA0B,EAC3B,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAGzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,QAAQ,CAAC;AAE5E,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAkBD,kEAAkE;AAClE,qBAAa,UAAW,YAAW,yBAAyB;IA2BxD,OAAO,CAAC,QAAQ,CAAC,GAAG;IA1BtB,SAAgB,IAAI,EAAE,cAAc,CAAC;IAErC,wCAAwC;IACxC,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,yDAAyD;IACzD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAqC;IACnE,oFAAoF;IACpF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAa;IAC1C,yDAAyD;IACzD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAA2B;IACjE,0DAA0D;IAC1D,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAElC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAA6B;IAE7D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;IACjD,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8C;IAExE,SAAgB,MAAM,EAAE,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAE3D,SAAgB,cAAc,EAAE,UAAU,CAAC;gBAGzC,eAAe,EAAE,cAAc,GAAG,MAAM,EACvB,GAAG,GAAE;QACpB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,cAAc,CAAC,EAAE,0BAA0B,CAAC;QAC5C,aAAa,CAAC,EAAE,OAAO,CAAC;KACpB;IAoCR;;;OAGG;IACH,OAAO,CAAC,QAAQ;IA8ChB,OAAO,CAAC,sBAAsB,CAAK;IAEnC;;;;OAIG;IACI,wBAAwB,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,SAAS,EAAE,aAAa,KAAK,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAqB5H,IAAW,aAAa,IAAI,aAAa,CAExC;IAED;;uEAEmE;IACnE,IAAW,aAAa,IAAI,OAAO,CAElC;IAED,sCAAsC;IACtC,IAAW,QAAQ,IAAI,MAAM,GAAG,IAAI,CAKnC;IAED,OAAO,CAAC,YAAY;IAUpB,IAAW,MAAM,IAAI,kBAAkB,CAEtC;IAED,OAAO,CAAC,qBAAqB,CAAkB;IAE/C,OAAO,CAAC,8BAA8B;IAiCtC,kEAAkE;IAClE,OAAO,CAAC,sBAAsB;IAoB9B,mDAAmD;IACnD,OAAO,CAAC,qBAAqB;IAgB7B,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,GAAE,SAAc,GAAG,eAAe;IAa3D,kCAAkC;IACrB,KAAK;CAInB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export * from './core/default_client';
|
|
|
9
9
|
export * from './core/unauth_client';
|
|
10
10
|
export * from './core/auth';
|
|
11
11
|
export * from './core/final';
|
|
12
|
+
export * from './core/grpc';
|
|
12
13
|
export * from './helpers/tx_helpers';
|
|
13
14
|
export * from './helpers/poll';
|
|
14
15
|
export * as TestHelpers from './test/test_config';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,cAAc,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAE/B,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,cAAc,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAE/B,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAC"}
|