@enbox/dwn-clients 0.0.9 → 0.2.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/dist/esm/rpc-client.js
CHANGED
|
@@ -19,12 +19,12 @@ export var DidRpcMethod;
|
|
|
19
19
|
/**
|
|
20
20
|
* Client used to communicate with Dwn Servers
|
|
21
21
|
*/
|
|
22
|
-
export class
|
|
22
|
+
export class EnboxRpcClient {
|
|
23
23
|
constructor(clients = []) {
|
|
24
24
|
this.transportClients = new Map();
|
|
25
25
|
// include http and socket clients as default.
|
|
26
26
|
// can be overwritten for 'http:', 'https:', 'ws: or ':wss' if instantiated with other clients.
|
|
27
|
-
clients = [new
|
|
27
|
+
clients = [new HttpEnboxRpcClient(), new WebSocketEnboxRpcClient(), ...clients];
|
|
28
28
|
for (const client of clients) {
|
|
29
29
|
for (const transportScheme of client.transportProtocols) {
|
|
30
30
|
this.transportClients.set(transportScheme, client);
|
|
@@ -72,7 +72,7 @@ export class Web5RpcClient {
|
|
|
72
72
|
});
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
|
-
export class
|
|
75
|
+
export class HttpEnboxRpcClient extends HttpDwnRpcClient {
|
|
76
76
|
sendDidRequest(request) {
|
|
77
77
|
return __awaiter(this, void 0, void 0, function* () {
|
|
78
78
|
const requestId = CryptoUtils.randomUuid();
|
|
@@ -108,7 +108,7 @@ export class HttpWeb5RpcClient extends HttpDwnRpcClient {
|
|
|
108
108
|
});
|
|
109
109
|
}
|
|
110
110
|
}
|
|
111
|
-
export class
|
|
111
|
+
export class WebSocketEnboxRpcClient extends WebSocketDwnRpcClient {
|
|
112
112
|
sendDidRequest(_request) {
|
|
113
113
|
return __awaiter(this, void 0, void 0, function* () {
|
|
114
114
|
throw new Error(`not implemented for transports [${this.transportProtocols.join(', ')}]`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc-client.js","sourceRoot":"","sources":["../../src/rpc-client.ts"],"names":[],"mappings":";;;;;;;;;AAIA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAWhE,MAAM,CAAN,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,qCAAqB,CAAA;IACrB,uCAAuB,CAAA;AACzB,CAAC,EAHW,YAAY,KAAZ,YAAY,QAGvB;AAqBD;;GAEG;AACH,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"rpc-client.js","sourceRoot":"","sources":["../../src/rpc-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-rpc.d.ts","sourceRoot":"","sources":["../../src/json-rpc.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AAC/C,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC;AAChC,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC;AAEnC,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,cAAc,CAAC;IACxB,EAAE,CAAC,EAAE,SAAS,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,iDAAiD;IACjD,YAAY,CAAC,EAAE;QAAE,EAAE,EAAE,SAAS,CAAA;KAAE,CAAC;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,WAAW,mBAAmB;IAClC,8CAA8C;IAC9C,EAAE,EAAE,SAAS,CAAC;IACd,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,oBAAY,iBAAiB;IAE3B,cAAc,SAAS;IACvB,cAAc,SAAS;IACvB,aAAa,SAAS;IACtB,aAAa,SAAS;IACtB,UAAU,SAAS;IACnB,cAAc,SAAS;IAGvB,UAAU,SAAS,CAAE,gCAAgC;IACrD,YAAY,SAAS,CAAE,gCAAgC;IACvD,SAAS,SAAS,CAAE,gCAAgC;IACpD,QAAQ,SAAS,CAAE,gCAAgC;IACnD,eAAe,SAAS;CACzB;AAED,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG,oBAAoB,CAAC;AAE5E,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,cAAc,CAAC;IACxB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,cAAc,CAAC;IACxB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,YAAY,CAAC;CACrB;AAED,eAAO,MAAM,0BAA0B,
|
|
1
|
+
{"version":3,"file":"json-rpc.d.ts","sourceRoot":"","sources":["../../src/json-rpc.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AAC/C,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC;AAChC,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC;AAEnC,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,cAAc,CAAC;IACxB,EAAE,CAAC,EAAE,SAAS,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,iDAAiD;IACjD,YAAY,CAAC,EAAE;QAAE,EAAE,EAAE,SAAS,CAAA;KAAE,CAAC;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,WAAW,mBAAmB;IAClC,8CAA8C;IAC9C,EAAE,EAAE,SAAS,CAAC;IACd,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,oBAAY,iBAAiB;IAE3B,cAAc,SAAS;IACvB,cAAc,SAAS;IACvB,aAAa,SAAS;IACtB,aAAa,SAAS;IACtB,UAAU,SAAS;IACnB,cAAc,SAAS;IAGvB,UAAU,SAAS,CAAE,gCAAgC;IACrD,YAAY,SAAS,CAAE,gCAAgC;IACvD,SAAS,SAAS,CAAE,gCAAgC;IACpD,QAAQ,SAAS,CAAE,gCAAgC;IACnD,eAAe,SAAS;CACzB;AAED,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG,oBAAoB,CAAC;AAE5E,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,cAAc,CAAC;IACxB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,cAAc,CAAC;IACxB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,YAAY,CAAC;CACrB;AAED,eAAO,MAAM,0BAA0B,GACrC,IAAI,SAAS,EACb,MAAM,iBAAiB,EACvB,SAAS,MAAM,EACf,OAAO,GAAG,KACT,oBAUF,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,QAAQ,MAAM,EACd,SAAS,GAAG,KACX,cAMF,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,IAAI,SAAS,EACb,QAAQ,MAAM,EACd,SAAS,aAAa,KACrB,cAOF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,GAC3C,IAAI,SAAS,EACb,QAAQ,MAAM,EACd,SAAS,GAAG,EACZ,iBAAiB,SAAS,KACzB,cAUF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAC3B,gBAAgB,SAAS,EACzB,QAAQ,MAAM,KACb,cAOF,CAAC;AAEF,eAAO,MAAM,4BAA4B,GACvC,IAAI,SAAS,EACb,SAAS,GAAG,KACX,sBAMF,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMrD"}
|
|
@@ -3,7 +3,7 @@ import type { DwnServerInfoRpc, ServerInfo } from './server-info-types.js';
|
|
|
3
3
|
import { HttpDwnRpcClient } from './http-dwn-rpc-client.js';
|
|
4
4
|
import { WebSocketDwnRpcClient } from './web-socket-clients.js';
|
|
5
5
|
/**
|
|
6
|
-
* Interface that can be implemented to communicate with {@link
|
|
6
|
+
* Interface that can be implemented to communicate with {@link EnboxAgent | Enbox Agent}
|
|
7
7
|
* implementations via JSON-RPC.
|
|
8
8
|
*/
|
|
9
9
|
export interface DidRpc {
|
|
@@ -28,23 +28,23 @@ export type RpcStatus = {
|
|
|
28
28
|
code: number;
|
|
29
29
|
message: string;
|
|
30
30
|
};
|
|
31
|
-
export interface
|
|
31
|
+
export interface EnboxRpc extends DwnRpc, DidRpc, DwnServerInfoRpc {
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
34
|
* Client used to communicate with Dwn Servers
|
|
35
35
|
*/
|
|
36
|
-
export declare class
|
|
36
|
+
export declare class EnboxRpcClient implements EnboxRpc {
|
|
37
37
|
private transportClients;
|
|
38
|
-
constructor(clients?:
|
|
38
|
+
constructor(clients?: EnboxRpc[]);
|
|
39
39
|
get transportProtocols(): string[];
|
|
40
40
|
sendDidRequest(request: DidRpcRequest): Promise<DidRpcResponse>;
|
|
41
41
|
sendDwnRequest(request: DwnRpcRequest): Promise<DwnRpcResponse>;
|
|
42
42
|
getServerInfo(dwnUrl: string): Promise<ServerInfo>;
|
|
43
43
|
}
|
|
44
|
-
export declare class
|
|
44
|
+
export declare class HttpEnboxRpcClient extends HttpDwnRpcClient implements EnboxRpc {
|
|
45
45
|
sendDidRequest(request: DidRpcRequest): Promise<DidRpcResponse>;
|
|
46
46
|
}
|
|
47
|
-
export declare class
|
|
47
|
+
export declare class WebSocketEnboxRpcClient extends WebSocketDwnRpcClient implements EnboxRpc {
|
|
48
48
|
sendDidRequest(_request: DidRpcRequest): Promise<DidRpcResponse>;
|
|
49
49
|
getServerInfo(_dwnUrl: string): Promise<ServerInfo>;
|
|
50
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc-client.d.ts","sourceRoot":"","sources":["../../src/rpc-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAI3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,kBAAkB,IAAI,MAAM,EAAE,CAAA;IAClC,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;CAChE;AAED,oBAAY,YAAY;IACtB,MAAM,eAAe;IACrB,OAAO,gBAAgB;CACxB;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"rpc-client.d.ts","sourceRoot":"","sources":["../../src/rpc-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAI3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,kBAAkB,IAAI,MAAM,EAAE,CAAA;IAClC,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;CAChE;AAED,oBAAY,YAAY;IACtB,MAAM,eAAe;IACrB,OAAO,gBAAgB;CACxB;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,WAAW,QAAS,SAAQ,MAAM,EAAE,MAAM,EAAE,gBAAgB;CAAG;AAErE;;GAEG;AACH,qBAAa,cAAe,YAAW,QAAQ;IAC7C,OAAO,CAAC,gBAAgB,CAAwB;gBAEpC,OAAO,GAAE,QAAQ,EAAO;IAcpC,IAAI,kBAAkB,IAAI,MAAM,EAAE,CAEjC;IAEK,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAerE,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAezD,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;CAczD;AAED,qBAAa,kBAAmB,SAAQ,gBAAiB,YAAW,QAAQ;IACpE,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;CAoCtE;AAED,qBAAa,uBAAwB,SAAQ,qBAAsB,YAAW,QAAQ;IAC9E,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAIhE,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;CAG1D"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@enbox/dwn-clients",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/esm/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
7
7
|
"types": "./dist/types/index.d.ts",
|
|
8
8
|
"scripts": {
|
|
9
|
-
"clean": "
|
|
10
|
-
"build:esm": "
|
|
9
|
+
"clean": "rm -rf dist",
|
|
10
|
+
"build:esm": "rm -rf dist/esm dist/types && bun tsc -p tsconfig.json",
|
|
11
11
|
"build": "bun run clean && bun run build:esm",
|
|
12
12
|
"lint": "eslint . --max-warnings 0",
|
|
13
13
|
"lint:fix": "eslint . --fix",
|
|
@@ -46,21 +46,20 @@
|
|
|
46
46
|
"bun": ">=1.0.0"
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@enbox/common": "0.0
|
|
50
|
-
"@enbox/crypto": "0.0
|
|
51
|
-
"@enbox/dwn-sdk-js": "0.
|
|
49
|
+
"@enbox/common": "0.1.0",
|
|
50
|
+
"@enbox/crypto": "0.1.0",
|
|
51
|
+
"@enbox/dwn-sdk-js": "0.2.0",
|
|
52
52
|
"ms": "2.1.3"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@types/ms": "0.7.
|
|
56
|
-
"@types/node": "
|
|
55
|
+
"@types/ms": "0.7.34",
|
|
56
|
+
"@types/node": "22.19.15",
|
|
57
57
|
"@types/sinon": "17.0.3",
|
|
58
58
|
"@typescript-eslint/eslint-plugin": "8.32.1",
|
|
59
59
|
"@typescript-eslint/parser": "8.32.1",
|
|
60
|
-
"bun-types": "
|
|
60
|
+
"bun-types": "1.3.10",
|
|
61
61
|
"eslint": "9.7.0",
|
|
62
|
-
"rimraf": "4.4.0",
|
|
63
62
|
"sinon": "18.0.0",
|
|
64
|
-
"typescript": "5.
|
|
63
|
+
"typescript": "5.9.3"
|
|
65
64
|
}
|
|
66
65
|
}
|
package/src/rpc-client.ts
CHANGED
|
@@ -8,7 +8,7 @@ import { HttpDwnRpcClient } from './http-dwn-rpc-client.js';
|
|
|
8
8
|
import { WebSocketDwnRpcClient } from './web-socket-clients.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* Interface that can be implemented to communicate with {@link
|
|
11
|
+
* Interface that can be implemented to communicate with {@link EnboxAgent | Enbox Agent}
|
|
12
12
|
* implementations via JSON-RPC.
|
|
13
13
|
*/
|
|
14
14
|
export interface DidRpc {
|
|
@@ -38,20 +38,20 @@ export type RpcStatus = {
|
|
|
38
38
|
message: string;
|
|
39
39
|
};
|
|
40
40
|
|
|
41
|
-
export interface
|
|
41
|
+
export interface EnboxRpc extends DwnRpc, DidRpc, DwnServerInfoRpc {}
|
|
42
42
|
|
|
43
43
|
/**
|
|
44
44
|
* Client used to communicate with Dwn Servers
|
|
45
45
|
*/
|
|
46
|
-
export class
|
|
47
|
-
private transportClients: Map<string,
|
|
46
|
+
export class EnboxRpcClient implements EnboxRpc {
|
|
47
|
+
private transportClients: Map<string, EnboxRpc>;
|
|
48
48
|
|
|
49
|
-
constructor(clients:
|
|
49
|
+
constructor(clients: EnboxRpc[] = []) {
|
|
50
50
|
this.transportClients = new Map();
|
|
51
51
|
|
|
52
52
|
// include http and socket clients as default.
|
|
53
53
|
// can be overwritten for 'http:', 'https:', 'ws: or ':wss' if instantiated with other clients.
|
|
54
|
-
clients = [new
|
|
54
|
+
clients = [new HttpEnboxRpcClient(), new WebSocketEnboxRpcClient(), ...clients];
|
|
55
55
|
|
|
56
56
|
for (const client of clients) {
|
|
57
57
|
for (const transportScheme of client.transportProtocols) {
|
|
@@ -110,7 +110,7 @@ export class Web5RpcClient implements Web5Rpc {
|
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
-
export class
|
|
113
|
+
export class HttpEnboxRpcClient extends HttpDwnRpcClient implements EnboxRpc {
|
|
114
114
|
async sendDidRequest(request: DidRpcRequest): Promise<DidRpcResponse> {
|
|
115
115
|
const requestId = CryptoUtils.randomUuid();
|
|
116
116
|
const jsonRpcRequest = createJsonRpcRequest(requestId, request.method, {
|
|
@@ -149,7 +149,7 @@ export class HttpWeb5RpcClient extends HttpDwnRpcClient implements Web5Rpc {
|
|
|
149
149
|
}
|
|
150
150
|
}
|
|
151
151
|
|
|
152
|
-
export class
|
|
152
|
+
export class WebSocketEnboxRpcClient extends WebSocketDwnRpcClient implements EnboxRpc {
|
|
153
153
|
async sendDidRequest(_request: DidRpcRequest): Promise<DidRpcResponse> {
|
|
154
154
|
throw new Error(`not implemented for transports [${this.transportProtocols.join(', ')}]`);
|
|
155
155
|
}
|