@asyncswap/jsonrpc 0.4.12 → 0.4.14

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 CHANGED
@@ -117,6 +117,14 @@ const result = await client.call('add', [2, 3]);
117
117
  console.log(result); // 5
118
118
  ```
119
119
 
120
+ ## References
121
+
122
+ - [JSON-RPC 2.0 specification](https://www.jsonrpc.org/specification)
123
+
124
+ ## Dependencies (0)
125
+
126
+ No external dependencies
127
+
120
128
  ## License
121
129
 
122
130
  MIT
package/dist/base.d.ts CHANGED
@@ -1,6 +1,9 @@
1
1
  import { JsonRpcClient } from "./client";
2
- export declare abstract class BaseClient<MethodsSpec extends RpcSpecBase> {
3
- rpc: JsonRpcClient<MethodsSpec>;
2
+ export declare abstract class BaseClient<Spec extends Record<string, {
3
+ params: unknown[];
4
+ result: unknown;
5
+ }>> {
6
+ rpc: JsonRpcClient<Spec>;
4
7
  protected headers: Record<string, string>;
5
8
  constructor(url: string);
6
9
  withHeaders(headers: Record<string, string>): this;
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,8BAAsB,UAAU,CAAC,WAAW,SAAS,WAAW;IAC/D,GAAG,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IAChC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;gBAEnC,GAAG,EAAE,MAAM;IA8BvB,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;CAM3C"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,8BAAsB,UAAU,CAC/B,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC;IAEnE,GAAG,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;IACzB,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;gBAEnC,GAAG,EAAE,MAAM;IA8BvB,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;CAM3C"}
package/dist/base.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,OAAgB,UAAU;IAC/B,GAAG,CAA6B;IACtB,OAAO,GAA2B,EAAE,CAAC;IAE/C,YAAY,GAAW;QACtB,IAAI,CAAC,GAAG,GAAG,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC;QAElC,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE;YACtB,GAAG,EAAE,CAAC,MAAY,EAAE,IAAqB,EAAE,QAAQ,EAAE,EAAE;gBACtD,wCAAwC;gBACxC,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;oBACpB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;oBAClD,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;wBACjC,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE;4BACzB,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;4BACzC,iDAAiD;4BACjD,OAAO,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;wBAC9C,CAAC,CAAC;oBACH,CAAC;oBACD,OAAO,KAAK,CAAC;gBACd,CAAC;gBACD,cAAc;gBACd,IAAI,OAAO,IAAI,KAAK,QAAQ;oBAAE,OAAO,SAAS,CAAC;gBAE/C,MAAM,MAAM,GAAG,IAAyB,CAAC;gBAEzC,OAAO,CACN,GAAG,MAA4C,EACR,EAAE,CACzC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACrE,CAAC;SACD,CAAC,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,OAA+B;QAC1C,IAAI,CAAC,OAAO,GAAG;YACd,GAAG,OAAO;SACV,CAAC;QACF,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,OAAgB,UAAU;IAG/B,GAAG,CAAsB;IACf,OAAO,GAA2B,EAAE,CAAC;IAE/C,YAAY,GAAW;QACtB,IAAI,CAAC,GAAG,GAAG,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC;QAElC,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE;YACtB,GAAG,EAAE,CAAC,MAAY,EAAE,IAAqB,EAAE,QAAQ,EAAE,EAAE;gBACtD,wCAAwC;gBACxC,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;oBACpB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;oBAClD,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;wBACjC,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE;4BACzB,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;4BACzC,iDAAiD;4BACjD,OAAO,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;wBAC9C,CAAC,CAAC;oBACH,CAAC;oBACD,OAAO,KAAK,CAAC;gBACd,CAAC;gBACD,cAAc;gBACd,IAAI,OAAO,IAAI,KAAK,QAAQ;oBAAE,OAAO,SAAS,CAAC;gBAE/C,MAAM,MAAM,GAAG,IAAkB,CAAC;gBAElC,OAAO,CACN,GAAG,MAAqC,EACR,EAAE,CAClC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACrE,CAAC;SACD,CAAC,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,OAA+B;QAC1C,IAAI,CAAC,OAAO,GAAG;YACd,GAAG,OAAO;SACV,CAAC;QACF,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
package/dist/client.d.ts CHANGED
@@ -1,6 +1,7 @@
1
- export declare class JsonRpcClient<MethodsSpec extends RpcSpecBase> {
1
+ import type { JsonRpcRequest, SpecBase } from "./types";
2
+ export declare class JsonRpcClient<MethodsSpec extends SpecBase> {
2
3
  private url;
3
- private id;
4
+ id: number;
4
5
  constructor(url: string);
5
6
  call<Method extends keyof MethodsSpec, Result = unknown, E = unknown>(request: JsonRpcRequest<Method, MethodsSpec[Method]["params"]> | JsonRpcRequest<Method, MethodsSpec[Method]["params"]>[], headers?: Record<string, string>): Promise<Result | Result[] | E>;
6
7
  buildRequest<Method extends keyof MethodsSpec>(method: Method, params: MethodsSpec[Method]["params"]): JsonRpcRequest<Method, MethodsSpec[Method]["params"]>;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAEA,qBAAa,aAAa,CAAC,WAAW,SAAS,WAAW;IAG7C,OAAO,CAAC,GAAG;IAFvB,OAAO,CAAC,EAAE,CAAK;gBAEK,GAAG,EAAE,MAAM;IAEzB,IAAI,CAAC,MAAM,SAAS,MAAM,WAAW,EAAE,MAAM,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,EACzE,OAAO,EACJ,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GACrD,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,EAC1D,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC;IAgBjC,YAAY,CAAC,MAAM,SAAS,MAAM,WAAW,EAC5C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GACnC,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;YAS1C,OAAO;IAoCf,MAAM,CAAC,MAAM,SAAS,MAAM,WAAW,EAC5C,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;CAavC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAmB,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEzE,qBAAa,aAAa,CAAC,WAAW,SAAS,QAAQ;IAG1C,OAAO,CAAC,GAAG;IAFvB,EAAE,SAAK;gBAEa,GAAG,EAAE,MAAM;IAEzB,IAAI,CAAC,MAAM,SAAS,MAAM,WAAW,EAAE,MAAM,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,EACzE,OAAO,EACJ,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GACrD,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,EAC1D,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC;IAgBjC,YAAY,CAAC,MAAM,SAAS,MAAM,WAAW,EAC5C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GACnC,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;YAS1C,OAAO;IAoCf,MAAM,CAAC,MAAM,SAAS,MAAM,WAAW,EAC5C,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;CAavC"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,OAAO,aAAa;IAGL;IAFZ,EAAE,GAAG,CAAC,CAAC;IAEf,YAAoB,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;IAAI,CAAC;IAEpC,KAAK,CAAC,IAAI,CACT,OAE0D,EAC1D,OAAgC;QAEhC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;YACzB,OAAO,QAAQ,CAAC,KAAU,CAAC;QAC5B,CAAC;QACD,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAC1B,OAAO,QAAQ,CAAC,MAAgB,CAAC;QAClC,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,QAAoB,CAAC;QAC7B,CAAC;aAAM,CAAC;YACP,2CAA2C;YAC3C,OAAO,QAAQ,CAAC;QACjB,CAAC;IACF,CAAC;IAED,YAAY,CACX,MAAc,EACd,MAAqC;QAErC,OAAO;YACN,OAAO,EAAE,KAAK;YACd,MAAM;YACN,MAAM;YACN,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE;SACb,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,OAAO,CACpB,GAE0D,EAC1D,aAAsC;QAItC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,IAAI,CAAC;YACJ,MAAM,OAAO,GAA2B;gBACvC,cAAc,EAAE,kBAAkB;gBAClC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC;aACxB,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjC,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;gBACzB,MAAM,EAAE,UAAU,CAAC,MAAM;aACzB,CAAC,CAAC;YAEH,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAEa,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACN,IAAI,EAAE,gBAAgB,CAAC,cAAc;oBACrC,OAAO,EAAE,mBAAmB,GAAG,EAAE;iBACjC;gBACD,EAAE,EAAE,IAAI;aACR,CAAC;QACH,CAAC;IACF,CAAC;IAED,KAAK,CAAC,MAAM,CACX,MAAc,EACd,MAAsC;QAEtC,MAAM,OAAO,GAA0D;YACtE,OAAO,EAAE,KAAK;YACd,MAAM;YACN,MAAM;SACN,CAAC;QACF,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC7B,CAAC,CAAC;IACJ,CAAC;CACD"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAG3C,MAAM,OAAO,aAAa;IAGL;IAFpB,EAAE,GAAG,CAAC,CAAC;IAEP,YAAoB,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;IAAI,CAAC;IAEpC,KAAK,CAAC,IAAI,CACT,OAE0D,EAC1D,OAAgC;QAEhC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;YACzB,OAAO,QAAQ,CAAC,KAAU,CAAC;QAC5B,CAAC;QACD,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAC1B,OAAO,QAAQ,CAAC,MAAgB,CAAC;QAClC,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,QAAoB,CAAC;QAC7B,CAAC;aAAM,CAAC;YACP,2CAA2C;YAC3C,OAAO,QAAQ,CAAC;QACjB,CAAC;IACF,CAAC;IAED,YAAY,CACX,MAAc,EACd,MAAqC;QAErC,OAAO;YACN,OAAO,EAAE,KAAK;YACd,MAAM;YACN,MAAM;YACN,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE;SACb,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,OAAO,CACpB,GAE0D,EAC1D,aAAsC;QAItC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,IAAI,CAAC;YACJ,MAAM,OAAO,GAA2B;gBACvC,cAAc,EAAE,kBAAkB;gBAClC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC;aACxB,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjC,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;gBACzB,MAAM,EAAE,UAAU,CAAC,MAAM;aACzB,CAAC,CAAC;YAEH,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAEa,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACN,IAAI,EAAE,gBAAgB,CAAC,cAAc;oBACrC,OAAO,EAAE,mBAAmB,GAAG,EAAE;iBACjC;gBACD,EAAE,EAAE,IAAI;aACR,CAAC;QACH,CAAC;IACF,CAAC;IAED,KAAK,CAAC,MAAM,CACX,MAAc,EACd,MAAsC;QAEtC,MAAM,OAAO,GAA0D;YACtE,OAAO,EAAE,KAAK;YACd,MAAM;YACN,MAAM;SACN,CAAC;QACF,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;YACrB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC7B,CAAC,CAAC;IACJ,CAAC;CACD"}
package/dist/index.d.ts CHANGED
@@ -2,4 +2,5 @@ export * from "./base";
2
2
  export * from "./client";
3
3
  export * from "./error";
4
4
  export * from "./server";
5
+ export * from "./types";
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -2,4 +2,5 @@ export * from "./base";
2
2
  export * from "./client";
3
3
  export * from "./error";
4
4
  export * from "./server";
5
+ export * from "./types";
5
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
package/dist/server.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  import { JsonRpcErrorCode } from "./error";
2
+ import type { JsonRpcResponse, SpecBase } from "./types";
2
3
  type RpcParams = readonly unknown[] | undefined;
3
4
  export type Handler<Params extends RpcParams, Result> = (params: Params) => Promise<Result>;
4
- export declare class JsonRpcServer<MethodsSpec extends RpcSpecBase> {
5
+ export declare class JsonRpcServer<MethodsSpec extends SpecBase> {
5
6
  private methods;
6
7
  register<Method extends keyof MethodsSpec, Params extends MethodsSpec[Method]["params"], Result>(method: Method, handler: Handler<Params, Result>): void;
7
8
  handle<Method extends keyof MethodsSpec, Params extends MethodsSpec[Method]["params"], Result>(raw: unknown): Promise<JsonRpcResponse<Result, JsonRpcErrorCode | number> | JsonRpcResponse<Result, JsonRpcErrorCode | number>[] | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C,KAAK,SAAS,GAAG,SAAS,OAAO,EAAE,GAAG,SAAS,CAAC;AAEhD,MAAM,MAAM,OAAO,CAAC,MAAM,SAAS,SAAS,EAAE,MAAM,IAAI,CACvD,MAAM,EAAE,MAAM,KACV,OAAO,CAAC,MAAM,CAAC,CAAC;AAErB,qBAAa,aAAa,CAAC,WAAW,SAAS,WAAW;IACzD,OAAO,CAAC,OAAO,CAGX;IAEJ,QAAQ,CACP,MAAM,SAAS,MAAM,WAAW,EAChC,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,EAC5C,MAAM,EACL,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;IAI5C,MAAM,CACX,MAAM,SAAS,MAAM,WAAW,EAChC,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,EAC5C,MAAM,EAEN,GAAG,EAAE,OAAO,GACV,OAAO,CACP,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAC,GAClD,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAC,EAAE,GACpD,IAAI,CACN;IAsED,OAAO,CAAC,KAAK;CAgBb"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAkB,eAAe,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEzE,KAAK,SAAS,GAAG,SAAS,OAAO,EAAE,GAAG,SAAS,CAAC;AAEhD,MAAM,MAAM,OAAO,CAAC,MAAM,SAAS,SAAS,EAAE,MAAM,IAAI,CACvD,MAAM,EAAE,MAAM,KACV,OAAO,CAAC,MAAM,CAAC,CAAC;AAErB,qBAAa,aAAa,CAAC,WAAW,SAAS,QAAQ;IACtD,OAAO,CAAC,OAAO,CAGX;IAEJ,QAAQ,CACP,MAAM,SAAS,MAAM,WAAW,EAChC,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,EAC5C,MAAM,EACL,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;IAI5C,MAAM,CACX,MAAM,SAAS,MAAM,WAAW,EAChC,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,EAC5C,MAAM,EAEN,GAAG,EAAE,OAAO,GACV,OAAO,CACP,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAC,GAClD,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAC,EAAE,GACpD,IAAI,CACN;IAsED,OAAO,CAAC,KAAK;CAgBb"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAQ3C,MAAM,OAAO,aAAa;IACjB,OAAO,GAAG,IAAI,GAAG,EAGtB,CAAC;IAEJ,QAAQ,CAIN,MAAc,EAAE,OAAgC;QACjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAc,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,MAAM,CAKX,GAAY;QAMZ,eAAe;QACf,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC,KAAK,CAChB,IAAI,EACJ,gBAAgB,CAAC,eAAe,EAChC,iBAAiB,CACjB,CAAC;YACH,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC1E,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAChC,CAAC,CAAC,EAA2D,EAAE,CAC9D,CAAC,KAAK,IAAI,CACX,CAAC;YACF,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9C,CAAC;QAED,yBAAyB;QACzB,MAAM,GAAG,GAAG,GAA8C,CAAC;QAE3D,IACC,OAAO,GAAG,KAAK,QAAQ;YACvB,GAAG,KAAK,IAAI;YACZ,GAAG,CAAC,OAAO,KAAK,KAAK;YACrB,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,EAC7B,CAAC;YACF,OAAO,IAAI,CAAC,KAAK,CAChB,IAAI,EACJ,gBAAgB,CAAC,eAAe,EAChC,iBAAiB,CACjB,CAAC;QACH,CAAC;QAED,MAAM,EAAE,GACP,OAAQ,GAAW,EAAE,EAAE,KAAK,QAAQ;YACnC,OAAQ,GAAW,EAAE,EAAE,KAAK,QAAQ;YACnC,GAAW,EAAE,EAAE,KAAK,IAAI;YACzB,CAAC,CAAE,GAAW,CAAC,EAAE;YACjB,CAAC,CAAC,IAAI,CAAC;QAET,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAgB,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,EAAE,KAAK,IAAI;gBACjB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,IAAI,CAAC,KAAK,CACX,GAAG,CAAC,EAAE,EACN,gBAAgB,CAAC,gBAAgB,EACjC,kBAAkB,CAClB,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,MAAgB,CAAC,CAAC;YACnD,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC,CAAC,eAAe;YACtD,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,MAAM;gBACN,EAAE,EAAE,GAAG,CAAC,EAAE;aACV,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,KAAK,CAChB,GAAG,CAAC,EAAE,IAAI,IAAI,EACd,gBAAgB,CAAC,cAAc,EAC/B,gBAAgB,EAChB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CACxC,CAAC;QACH,CAAC;IACF,CAAC;IAEO,KAAK,CAKZ,EAAwC,EACxC,IAA+B,EAC/B,OAAe,EACf,IAAc;QAEd,OAAO;YACN,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;YAC9B,EAAE,EAAE,EAAE,IAAI,IAAI;SACd,CAAC;IACH,CAAC;CACD"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export type JsonRpcId = string | number | null;
2
+ export type SpecBase = Record<string, {
3
+ params: unknown[];
4
+ result: unknown;
5
+ }>;
6
+ export type RpcSpec<Spec extends SpecBase> = {
7
+ [Method in keyof Spec]: (...params: Spec[Method]["params"]) => Promise<Spec[Method]["result"]>;
8
+ };
9
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/types/base.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AAE/C,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAE9E,MAAM,MAAM,OAAO,CAAC,IAAI,SAAS,QAAQ,IAAI;KAC3C,MAAM,IAAI,MAAM,IAAI,GAAG,CACvB,GAAG,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAC7B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;CACpC,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/types/base.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export * from "./base";
2
+ export * from "./request";
3
+ export * from "./response";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from "./base";
2
+ export * from "./request";
3
+ export * from "./response";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { JsonRpcId } from "./base";
2
+ export interface JsonRpcRequest<Method, Params extends readonly unknown[]> {
3
+ jsonrpc: "2.0";
4
+ method: Method;
5
+ params?: Params;
6
+ id?: JsonRpcId;
7
+ }
8
+ //# sourceMappingURL=request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/types/request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,MAAM,WAAW,cAAc,CAAC,MAAM,EAAE,MAAM,SAAS,SAAS,OAAO,EAAE;IACxE,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,SAAS,CAAC;CACf"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/types/request.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import type { JsonRpcId } from "./base";
2
+ export interface JsonRpcSuccess<Result> {
3
+ jsonrpc: "2.0";
4
+ result: Result;
5
+ id: JsonRpcId;
6
+ }
7
+ export interface JsonRpcError<ErrorCode> {
8
+ jsonrpc: "2.0";
9
+ error: JsonRpcErrorObject<ErrorCode>;
10
+ id: JsonRpcId;
11
+ }
12
+ export interface JsonRpcErrorObject<ErrorCode> {
13
+ code: ErrorCode;
14
+ message: string;
15
+ data?: unknown;
16
+ }
17
+ export type JsonRpcResponse<Result, ErrorCode> = JsonRpcSuccess<Result> | JsonRpcError<ErrorCode>;
18
+ //# sourceMappingURL=response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../src/types/response.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,MAAM,WAAW,cAAc,CAAC,MAAM;IACrC,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,SAAS,CAAC;CACd;AAED,MAAM,WAAW,YAAY,CAAC,SAAS;IACtC,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACrC,EAAE,EAAE,SAAS,CAAC;CACd;AAED,MAAM,WAAW,kBAAkB,CAAC,SAAS;IAC5C,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AACD,MAAM,MAAM,eAAe,CAAC,MAAM,EAAE,SAAS,IAC1C,cAAc,CAAC,MAAM,CAAC,GACtB,YAAY,CAAC,SAAS,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../src/types/response.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@asyncswap/jsonrpc",
3
3
  "description": "A minimal jsonrpc spec implementation.",
4
4
  "author": "Meek Msaki",
5
- "version": "0.4.12",
5
+ "version": "0.4.14",
6
6
  "license": "MIT",
7
7
  "main": "dist/index.js",
8
8
  "module": "dist/index.mjs",
package/src/base.ts CHANGED
@@ -1,7 +1,9 @@
1
1
  import { JsonRpcClient } from "./client";
2
2
 
3
- export abstract class BaseClient<MethodsSpec extends RpcSpecBase> {
4
- rpc: JsonRpcClient<MethodsSpec>;
3
+ export abstract class BaseClient<
4
+ Spec extends Record<string, { params: unknown[]; result: unknown }>,
5
+ > {
6
+ rpc: JsonRpcClient<Spec>;
5
7
  protected headers: Record<string, string> = {};
6
8
 
7
9
  constructor(url: string) {
@@ -24,11 +26,11 @@ export abstract class BaseClient<MethodsSpec extends RpcSpecBase> {
24
26
  // dynamic rpc
25
27
  if (typeof prop !== "string") return undefined;
26
28
 
27
- const method = prop as keyof MethodsSpec;
29
+ const method = prop as keyof Spec;
28
30
 
29
31
  return (
30
- ...params: MethodsSpec[typeof method]["params"]
31
- ): MethodsSpec[typeof method]["result"] =>
32
+ ...params: Spec[typeof method]["params"]
33
+ ): Spec[typeof method]["result"] =>
32
34
  this.rpc.call(this.rpc.buildRequest(method, params), this.headers);
33
35
  },
34
36
  });
package/src/client.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  import { JsonRpcErrorCode } from "./error";
2
+ import type { JsonRpcRequest, JsonRpcResponse, SpecBase } from "./types";
2
3
 
3
- export class JsonRpcClient<MethodsSpec extends RpcSpecBase> {
4
- private id = 0;
4
+ export class JsonRpcClient<MethodsSpec extends SpecBase> {
5
+ id = 0;
5
6
 
6
7
  constructor(private url: string) { }
7
8
 
package/src/index.ts CHANGED
@@ -2,3 +2,4 @@ export * from "./base";
2
2
  export * from "./client";
3
3
  export * from "./error";
4
4
  export * from "./server";
5
+ export * from "./types";
package/src/server.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { JsonRpcErrorCode } from "./error";
2
+ import type { JsonRpcRequest, JsonRpcResponse, SpecBase } from "./types";
2
3
 
3
4
  type RpcParams = readonly unknown[] | undefined;
4
5
 
@@ -6,7 +7,7 @@ export type Handler<Params extends RpcParams, Result> = (
6
7
  params: Params,
7
8
  ) => Promise<Result>;
8
9
 
9
- export class JsonRpcServer<MethodsSpec extends RpcSpecBase> {
10
+ export class JsonRpcServer<MethodsSpec extends SpecBase> {
10
11
  private methods = new Map<
11
12
  keyof MethodsSpec,
12
13
  Handler<MethodsSpec[keyof MethodsSpec]["params"], any>
@@ -0,0 +1,9 @@
1
+ export type JsonRpcId = string | number | null;
2
+
3
+ export type SpecBase = Record<string, { params: unknown[]; result: unknown }>;
4
+
5
+ export type RpcSpec<Spec extends SpecBase> = {
6
+ [Method in keyof Spec]: (
7
+ ...params: Spec[Method]["params"]
8
+ ) => Promise<Spec[Method]["result"]>;
9
+ };
@@ -0,0 +1,3 @@
1
+ export * from "./base";
2
+ export * from "./request";
3
+ export * from "./response";
@@ -0,0 +1,8 @@
1
+ import type { JsonRpcId } from "./base";
2
+
3
+ export interface JsonRpcRequest<Method, Params extends readonly unknown[]> {
4
+ jsonrpc: "2.0";
5
+ method: Method;
6
+ params?: Params;
7
+ id?: JsonRpcId;
8
+ }
@@ -0,0 +1,22 @@
1
+ import type { JsonRpcId } from "./base";
2
+
3
+ export interface JsonRpcSuccess<Result> {
4
+ jsonrpc: "2.0";
5
+ result: Result;
6
+ id: JsonRpcId;
7
+ }
8
+
9
+ export interface JsonRpcError<ErrorCode> {
10
+ jsonrpc: "2.0";
11
+ error: JsonRpcErrorObject<ErrorCode>;
12
+ id: JsonRpcId;
13
+ }
14
+
15
+ export interface JsonRpcErrorObject<ErrorCode> {
16
+ code: ErrorCode;
17
+ message: string;
18
+ data?: unknown;
19
+ }
20
+ export type JsonRpcResponse<Result, ErrorCode> =
21
+ | JsonRpcSuccess<Result>
22
+ | JsonRpcError<ErrorCode>;
@@ -1,5 +0,0 @@
1
- declare global {
2
- export type JsonRpcId = string | number | null;
3
- }
4
-
5
- export { };
@@ -1,15 +0,0 @@
1
- declare global {
2
- export type RpcSpecBase = Record<
3
- string,
4
- { params: readonly unknown[]; result: unknown }
5
- >;
6
-
7
- export interface JsonRpcRequest<Method, Params extends readonly unknown[]> {
8
- jsonrpc: "2.0";
9
- method: Method;
10
- params?: Params;
11
- id?: JsonRpcId;
12
- }
13
- }
14
-
15
- export { };
@@ -1,24 +0,0 @@
1
- declare global {
2
- export interface JsonRpcSuccess<Result> {
3
- jsonrpc: "2.0";
4
- result: Result;
5
- id: JsonRpcId;
6
- }
7
-
8
- export interface JsonRpcError<ErrorCode> {
9
- jsonrpc: "2.0";
10
- error: JsonRpcErrorObject<ErrorCode>;
11
- id: JsonRpcId;
12
- }
13
-
14
- export interface JsonRpcErrorObject<ErrorCode> {
15
- code: ErrorCode;
16
- message: string;
17
- data?: unknown;
18
- }
19
- export type JsonRpcResponse<Result, ErrorCode> =
20
- | JsonRpcSuccess<Result>
21
- | JsonRpcError<ErrorCode>;
22
- }
23
-
24
- export { };