@hazae41/jsonrpc 1.0.5 → 1.0.7

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.
@@ -9,6 +9,10 @@ var rpc = require('./mods/rpc/rpc.cjs');
9
9
 
10
10
 
11
11
  exports.RpcErr = err.RpcErr;
12
+ Object.defineProperty(exports, "RpcErrInit", {
13
+ enumerable: true,
14
+ get: function () { return err.RpcErrInit; }
15
+ });
12
16
  exports.RpcError = err.RpcError;
13
17
  exports.RpcInternalError = err.RpcInternalError;
14
18
  exports.RpcInvalidParamsError = err.RpcInvalidParamsError;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,6 +2,13 @@
2
2
 
3
3
  var result = require('@hazae41/result');
4
4
 
5
+ exports.RpcErrInit = void 0;
6
+ (function (RpcErrInit) {
7
+ function from(response) {
8
+ return response.toJSON();
9
+ }
10
+ RpcErrInit.from = from;
11
+ })(exports.RpcErrInit || (exports.RpcErrInit = {}));
5
12
  class RpcError extends Error {
6
13
  code;
7
14
  message;
@@ -40,9 +47,6 @@ class RpcError extends Error {
40
47
  return new RpcInternalError(error.message);
41
48
  return new RpcInternalError();
42
49
  }
43
- /**
44
- * Used by JSON.stringify
45
- */
46
50
  toJSON() {
47
51
  const { code, message, data } = this;
48
52
  return { code, message, data };
@@ -108,6 +112,11 @@ class RpcErr extends result.Err {
108
112
  static rewrap(id, result) {
109
113
  return new RpcErr(id, RpcError.rewrap(result.inner));
110
114
  }
115
+ toJSON() {
116
+ const { jsonrpc, id } = this;
117
+ const error = this.error.toJSON();
118
+ return { jsonrpc, id, error };
119
+ }
111
120
  }
112
121
 
113
122
  exports.RpcErr = RpcErr;
@@ -1 +1 @@
1
- {"version":3,"file":"err.cjs","sources":["../../../../src/mods/rpc/err.ts"],"sourcesContent":["import { Err } from \"@hazae41/result\"\nimport { RpcId } from \"./request.js\"\n\nexport interface RpcErrorInit {\n readonly code: number,\n readonly message: string,\n readonly data: unknown\n}\n\nexport interface RpcErrInit {\n readonly jsonrpc: \"2.0\"\n readonly id: RpcId\n readonly error: RpcErrorInit\n}\n\nexport class RpcError extends Error {\n readonly #class = RpcError\n readonly name = this.#class.name\n\n static readonly codes = {\n ParseError: -32700,\n InvalidRequest: -32600,\n MethodNotFound: -32601,\n InvalidParams: -32602,\n InternalError: -32603\n } as const\n\n static readonly messages = {\n ParseError: \"Parse error\",\n InvalidRequest: \"Invalid Request\",\n MethodNotFound: \"Method not found\",\n InvalidParams: \"Invalid params\",\n InternalError: \"Internal error\",\n ServerError: \"Server error\"\n } as const\n\n constructor(\n readonly code: number,\n readonly message: string,\n readonly data: unknown = undefined\n ) {\n super(message)\n }\n\n static from(init: RpcErrorInit) {\n const { code, message, data } = init\n return new RpcError(code, message, data)\n }\n\n static rewrap(error: unknown) {\n if (error instanceof RpcError)\n return error\n if (error instanceof Error)\n return new RpcInternalError(error.message)\n return new RpcInternalError()\n }\n\n /**\n * Used by JSON.stringify\n */\n toJSON() {\n const { code, message, data } = this\n return { code, message, data }\n }\n\n}\n\nexport class RpcParseError extends RpcError {\n readonly #class = RpcParseError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.ParseError\n static readonly message = RpcError.messages.ParseError\n\n constructor(message: string = RpcError.messages.ParseError) {\n super(RpcError.codes.ParseError, message)\n }\n}\n\nexport class RpcInvalidRequestError extends RpcError {\n readonly #class = RpcInvalidRequestError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InvalidRequest\n static readonly message = RpcError.messages.InvalidRequest\n\n constructor(message: string = RpcError.messages.InvalidRequest) {\n super(RpcError.codes.InvalidRequest, message)\n }\n\n}\n\nexport class RpcMethodNotFoundError extends RpcError {\n readonly #class = RpcMethodNotFoundError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.MethodNotFound\n static readonly message = RpcError.messages.MethodNotFound\n\n constructor(message: string = RpcError.messages.MethodNotFound) {\n super(RpcError.codes.MethodNotFound, message)\n }\n\n}\n\nexport class RpcInvalidParamsError extends RpcError {\n readonly #class = RpcInvalidParamsError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InvalidParams\n static readonly message = RpcError.messages.InvalidParams\n\n constructor(message: string = RpcError.messages.InvalidParams) {\n super(RpcError.codes.InvalidParams, message)\n }\n\n}\n\nexport class RpcInternalError extends RpcError {\n readonly #class = RpcInternalError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InternalError\n static readonly message = RpcError.messages.InternalError\n\n constructor(message: string = RpcError.messages.InternalError) {\n super(RpcError.codes.InternalError, message)\n }\n\n}\n\nexport class RpcErr extends Err<RpcError> {\n readonly jsonrpc = \"2.0\"\n\n constructor(\n readonly id: RpcId,\n readonly error: RpcError\n ) {\n super(error)\n }\n\n static from(init: RpcErrInit) {\n return new RpcErr(init.id, RpcError.from(init.error))\n }\n\n static rewrap<T extends Err.Infer<T>>(id: RpcId, result: T) {\n return new RpcErr(id, RpcError.rewrap(result.inner))\n }\n\n}"],"names":["Err"],"mappings":"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"}
1
+ {"version":3,"file":"err.cjs","sources":["../../../../src/mods/rpc/err.ts"],"sourcesContent":["import { Err } from \"@hazae41/result\"\nimport { RpcId } from \"./request.js\"\n\nexport interface RpcErrorInit {\n readonly code: number,\n readonly message: string,\n readonly data: unknown\n}\n\nexport interface RpcErrInit {\n readonly jsonrpc: \"2.0\"\n readonly id: RpcId\n readonly error: RpcErrorInit\n}\n\nexport namespace RpcErrInit {\n\n export function from(response: RpcErr): RpcErrInit {\n return response.toJSON()\n }\n\n}\n\nexport class RpcError extends Error {\n readonly #class = RpcError\n readonly name = this.#class.name\n\n static readonly codes = {\n ParseError: -32700,\n InvalidRequest: -32600,\n MethodNotFound: -32601,\n InvalidParams: -32602,\n InternalError: -32603\n } as const\n\n static readonly messages = {\n ParseError: \"Parse error\",\n InvalidRequest: \"Invalid Request\",\n MethodNotFound: \"Method not found\",\n InvalidParams: \"Invalid params\",\n InternalError: \"Internal error\",\n ServerError: \"Server error\"\n } as const\n\n constructor(\n readonly code: number,\n readonly message: string,\n readonly data: unknown = undefined\n ) {\n super(message)\n }\n\n static from(init: RpcErrorInit) {\n const { code, message, data } = init\n return new RpcError(code, message, data)\n }\n\n static rewrap(error: unknown) {\n if (error instanceof RpcError)\n return error\n if (error instanceof Error)\n return new RpcInternalError(error.message)\n return new RpcInternalError()\n }\n\n toJSON() {\n const { code, message, data } = this\n return { code, message, data }\n }\n\n}\n\nexport class RpcParseError extends RpcError {\n readonly #class = RpcParseError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.ParseError\n static readonly message = RpcError.messages.ParseError\n\n constructor(message: string = RpcError.messages.ParseError) {\n super(RpcError.codes.ParseError, message)\n }\n}\n\nexport class RpcInvalidRequestError extends RpcError {\n readonly #class = RpcInvalidRequestError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InvalidRequest\n static readonly message = RpcError.messages.InvalidRequest\n\n constructor(message: string = RpcError.messages.InvalidRequest) {\n super(RpcError.codes.InvalidRequest, message)\n }\n\n}\n\nexport class RpcMethodNotFoundError extends RpcError {\n readonly #class = RpcMethodNotFoundError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.MethodNotFound\n static readonly message = RpcError.messages.MethodNotFound\n\n constructor(message: string = RpcError.messages.MethodNotFound) {\n super(RpcError.codes.MethodNotFound, message)\n }\n\n}\n\nexport class RpcInvalidParamsError extends RpcError {\n readonly #class = RpcInvalidParamsError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InvalidParams\n static readonly message = RpcError.messages.InvalidParams\n\n constructor(message: string = RpcError.messages.InvalidParams) {\n super(RpcError.codes.InvalidParams, message)\n }\n\n}\n\nexport class RpcInternalError extends RpcError {\n readonly #class = RpcInternalError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InternalError\n static readonly message = RpcError.messages.InternalError\n\n constructor(message: string = RpcError.messages.InternalError) {\n super(RpcError.codes.InternalError, message)\n }\n\n}\n\nexport class RpcErr extends Err<RpcError> {\n readonly jsonrpc = \"2.0\"\n\n constructor(\n readonly id: RpcId,\n readonly error: RpcError\n ) {\n super(error)\n }\n\n static from(init: RpcErrInit) {\n return new RpcErr(init.id, RpcError.from(init.error))\n }\n\n static rewrap<T extends Err.Infer<T>>(id: RpcId, result: T) {\n return new RpcErr(id, RpcError.rewrap(result.inner))\n }\n\n toJSON() {\n const { jsonrpc, id } = this\n\n const error = this.error.toJSON()\n\n return { jsonrpc, id, error } as const\n }\n\n}"],"names":["RpcErrInit","Err"],"mappings":"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"}
@@ -5,8 +5,7 @@ var result = require('@hazae41/result');
5
5
  exports.RpcOkInit = void 0;
6
6
  (function (RpcOkInit) {
7
7
  function from(response) {
8
- const { jsonrpc, id, result } = response;
9
- return { jsonrpc, id, result };
8
+ return response.toJSON();
10
9
  }
11
10
  RpcOkInit.from = from;
12
11
  })(exports.RpcOkInit || (exports.RpcOkInit = {}));
@@ -25,6 +24,10 @@ class RpcOk extends result.Ok {
25
24
  static rewrap(id, result) {
26
25
  return new RpcOk(id, result.inner);
27
26
  }
27
+ toJSON() {
28
+ const { jsonrpc, id, result } = this;
29
+ return { jsonrpc, id, result };
30
+ }
28
31
  }
29
32
 
30
33
  exports.RpcOk = RpcOk;
@@ -1 +1 @@
1
- {"version":3,"file":"ok.cjs","sources":["../../../../src/mods/rpc/ok.ts"],"sourcesContent":["import { Ok } from \"@hazae41/result\"\nimport { RpcId } from \"./request.js\"\n\nexport interface RpcOkInit<T = unknown> {\n readonly jsonrpc: \"2.0\"\n readonly id: RpcId,\n readonly result: T\n}\n\nexport namespace RpcOkInit {\n\n export function from<T>(response: RpcOk<T>): RpcOkInit<T> {\n const { jsonrpc, id, result } = response\n return { jsonrpc, id, result }\n }\n\n}\n\nexport class RpcOk<T = unknown> extends Ok<T> {\n readonly jsonrpc = \"2.0\"\n\n constructor(\n readonly id: RpcId,\n readonly result: T\n ) {\n super(result)\n }\n\n static from<T>(init: RpcOkInit<T>) {\n return new RpcOk(init.id, init.result)\n }\n\n static rewrap<T extends Ok.Infer<T>>(id: RpcId, result: T) {\n return new RpcOk(id, result.inner)\n }\n\n}\n"],"names":["RpcOkInit","Ok"],"mappings":";;;;AASiBA,2BAOhB;AAPD,CAAA,UAAiB,SAAS,EAAA;IAExB,SAAgB,IAAI,CAAI,QAAkB,EAAA;QACxC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;AACxC,QAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAA;KAC/B;AAHe,IAAA,SAAA,CAAA,IAAI,OAGnB,CAAA;AAEH,CAAC,EAPgBA,iBAAS,KAATA,iBAAS,GAOzB,EAAA,CAAA,CAAA,CAAA;AAEK,MAAO,KAAmB,SAAQC,SAAK,CAAA;AAIhC,IAAA,EAAA,CAAA;AACA,IAAA,MAAA,CAAA;IAJF,OAAO,GAAG,KAAK,CAAA;IAExB,WACW,CAAA,EAAS,EACT,MAAS,EAAA;QAElB,KAAK,CAAC,MAAM,CAAC,CAAA;QAHJ,IAAE,CAAA,EAAA,GAAF,EAAE,CAAO;QACT,IAAM,CAAA,MAAA,GAAN,MAAM,CAAG;KAGnB;IAED,OAAO,IAAI,CAAI,IAAkB,EAAA;QAC/B,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;KACvC;AAED,IAAA,OAAO,MAAM,CAAwB,EAAS,EAAE,MAAS,EAAA;QACvD,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;KACnC;AAEF;;;;"}
1
+ {"version":3,"file":"ok.cjs","sources":["../../../../src/mods/rpc/ok.ts"],"sourcesContent":["import { Ok } from \"@hazae41/result\"\nimport { RpcId } from \"./request.js\"\n\nexport interface RpcOkInit<T = unknown> {\n readonly jsonrpc: \"2.0\"\n readonly id: RpcId,\n readonly result: T\n}\n\nexport namespace RpcOkInit {\n\n export function from<T>(response: RpcOk<T>): RpcOkInit<T> {\n return response.toJSON()\n }\n\n}\n\nexport class RpcOk<T = unknown> extends Ok<T> {\n readonly jsonrpc = \"2.0\"\n\n constructor(\n readonly id: RpcId,\n readonly result: T\n ) {\n super(result)\n }\n\n static from<T>(init: RpcOkInit<T>) {\n return new RpcOk(init.id, init.result)\n }\n\n static rewrap<T extends Ok.Infer<T>>(id: RpcId, result: T) {\n return new RpcOk(id, result.inner)\n }\n\n toJSON() {\n const { jsonrpc, id, result } = this\n return { jsonrpc, id, result } as const\n }\n\n}\n"],"names":["RpcOkInit","Ok"],"mappings":";;;;AASiBA,2BAMhB;AAND,CAAA,UAAiB,SAAS,EAAA;IAExB,SAAgB,IAAI,CAAI,QAAkB,EAAA;AACxC,QAAA,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAA;KACzB;AAFe,IAAA,SAAA,CAAA,IAAI,OAEnB,CAAA;AAEH,CAAC,EANgBA,iBAAS,KAATA,iBAAS,GAMzB,EAAA,CAAA,CAAA,CAAA;AAEK,MAAO,KAAmB,SAAQC,SAAK,CAAA;AAIhC,IAAA,EAAA,CAAA;AACA,IAAA,MAAA,CAAA;IAJF,OAAO,GAAG,KAAK,CAAA;IAExB,WACW,CAAA,EAAS,EACT,MAAS,EAAA;QAElB,KAAK,CAAC,MAAM,CAAC,CAAA;QAHJ,IAAE,CAAA,EAAA,GAAF,EAAE,CAAO;QACT,IAAM,CAAA,MAAA,GAAN,MAAM,CAAG;KAGnB;IAED,OAAO,IAAI,CAAI,IAAkB,EAAA;QAC/B,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;KACvC;AAED,IAAA,OAAO,MAAM,CAAwB,EAAS,EAAE,MAAS,EAAA;QACvD,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;KACnC;IAED,MAAM,GAAA;QACJ,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;AACpC,QAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAW,CAAA;KACxC;AAEF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"request.cjs","sources":["../../../../src/mods/rpc/request.ts"],"sourcesContent":["export type RpcId = number | string | null\n\nexport type RpcRequestPreinit<T = unknown> =\n undefined extends T\n ? RpcParamlessRequestPreinit<T>\n : RpcParamfulRequestPreinit<T>\n\nexport interface RpcParamfulRequestPreinit<T = unknown> {\n readonly id?: RpcId\n readonly method: string,\n readonly params: NonNullable<T>\n}\n\nexport interface RpcParamlessRequestPreinit<T = unknown> {\n readonly id?: RpcId\n readonly method: string\n readonly params?: T\n}\n\nexport type RpcRequestInit<T = unknown> =\n undefined extends T\n ? RpcParamlessRequestInit<T>\n : RpcParamfulRequestInit<T>\n\nexport interface RpcParamfulRequestInit<T = unknown> {\n readonly id: RpcId\n readonly method: string\n readonly params: NonNullable<T>\n}\n\nexport interface RpcParamlessRequestInit<T = unknown> {\n readonly id: RpcId\n readonly method: string\n readonly params?: T\n}\n\nexport class RpcRequest<T> {\n readonly jsonrpc = \"2.0\" as const\n\n constructor(\n readonly id: RpcId,\n readonly method: string,\n readonly params?: T\n ) { }\n\n static from<T>(init: RpcRequestInit<T>) {\n const { id, method, params } = init\n return new RpcRequest(id, method, params)\n }\n\n toJSON() {\n const { jsonrpc, id, method, params } = this\n return { jsonrpc, id, method, params }\n }\n\n}"],"names":[],"mappings":";;MAoCa,UAAU,CAAA;AAIV,IAAA,EAAA,CAAA;AACA,IAAA,MAAA,CAAA;AACA,IAAA,MAAA,CAAA;IALF,OAAO,GAAG,KAAc,CAAA;AAEjC,IAAA,WAAA,CACW,EAAS,EACT,MAAc,EACd,MAAU,EAAA;QAFV,IAAE,CAAA,EAAA,GAAF,EAAE,CAAO;QACT,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAI;KAChB;IAEL,OAAO,IAAI,CAAI,IAAuB,EAAA;QACpC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACnC,OAAO,IAAI,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAC1C;IAED,MAAM,GAAA;QACJ,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAC5C,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;KACvC;AAEF;;;;"}
1
+ {"version":3,"file":"request.cjs","sources":["../../../../src/mods/rpc/request.ts"],"sourcesContent":["export type RpcId = number | string | null\n\nexport type RpcRequestPreinit<T = unknown> =\n undefined extends T\n ? RpcParamlessRequestPreinit<T>\n : RpcParamfulRequestPreinit<T>\n\nexport interface RpcParamfulRequestPreinit<T = unknown> {\n readonly id?: RpcId\n readonly method: string,\n readonly params: NonNullable<T>\n}\n\nexport interface RpcParamlessRequestPreinit<T = unknown> {\n readonly id?: RpcId\n readonly method: string\n readonly params?: T\n}\n\nexport type RpcRequestInit<T = unknown> =\n undefined extends T\n ? RpcParamlessRequestInit<T>\n : RpcParamfulRequestInit<T>\n\nexport interface RpcParamfulRequestInit<T = unknown> {\n readonly id: RpcId\n readonly method: string\n readonly params: NonNullable<T>\n}\n\nexport interface RpcParamlessRequestInit<T = unknown> {\n readonly id: RpcId\n readonly method: string\n readonly params?: T\n}\n\nexport class RpcRequest<T> {\n readonly jsonrpc = \"2.0\" as const\n\n constructor(\n readonly id: RpcId,\n readonly method: string,\n readonly params?: T\n ) { }\n\n static from<T>(init: RpcRequestInit<T>) {\n const { id, method, params } = init\n return new RpcRequest(id, method, params)\n }\n\n toJSON() {\n const { jsonrpc, id, method, params } = this\n return { jsonrpc, id, method, params } as const\n }\n\n}"],"names":[],"mappings":";;MAoCa,UAAU,CAAA;AAIV,IAAA,EAAA,CAAA;AACA,IAAA,MAAA,CAAA;AACA,IAAA,MAAA,CAAA;IALF,OAAO,GAAG,KAAc,CAAA;AAEjC,IAAA,WAAA,CACW,EAAS,EACT,MAAc,EACd,MAAU,EAAA;QAFV,IAAE,CAAA,EAAA,GAAF,EAAE,CAAO;QACT,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAI;KAChB;IAEL,OAAO,IAAI,CAAI,IAAuB,EAAA;QACpC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACnC,OAAO,IAAI,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAC1C;IAED,MAAM,GAAA;QACJ,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAC5C,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAW,CAAA;KAChD;AAEF;;;;"}
@@ -1,4 +1,4 @@
1
- export { RpcErr, RpcError, RpcInternalError, RpcInvalidParamsError, RpcInvalidRequestError, RpcMethodNotFoundError, RpcParseError } from './mods/rpc/err.mjs';
1
+ export { RpcErr, RpcErrInit, RpcError, RpcInternalError, RpcInvalidParamsError, RpcInvalidRequestError, RpcMethodNotFoundError, RpcParseError } from './mods/rpc/err.mjs';
2
2
  export { RpcOk, RpcOkInit } from './mods/rpc/ok.mjs';
3
3
  export { RpcRequest } from './mods/rpc/request.mjs';
4
4
  export { RpcResponse } from './mods/rpc/response.mjs';
@@ -1,5 +1,12 @@
1
1
  import { Err } from '@hazae41/result';
2
2
 
3
+ var RpcErrInit;
4
+ (function (RpcErrInit) {
5
+ function from(response) {
6
+ return response.toJSON();
7
+ }
8
+ RpcErrInit.from = from;
9
+ })(RpcErrInit || (RpcErrInit = {}));
3
10
  class RpcError extends Error {
4
11
  code;
5
12
  message;
@@ -38,9 +45,6 @@ class RpcError extends Error {
38
45
  return new RpcInternalError(error.message);
39
46
  return new RpcInternalError();
40
47
  }
41
- /**
42
- * Used by JSON.stringify
43
- */
44
48
  toJSON() {
45
49
  const { code, message, data } = this;
46
50
  return { code, message, data };
@@ -106,7 +110,12 @@ class RpcErr extends Err {
106
110
  static rewrap(id, result) {
107
111
  return new RpcErr(id, RpcError.rewrap(result.inner));
108
112
  }
113
+ toJSON() {
114
+ const { jsonrpc, id } = this;
115
+ const error = this.error.toJSON();
116
+ return { jsonrpc, id, error };
117
+ }
109
118
  }
110
119
 
111
- export { RpcErr, RpcError, RpcInternalError, RpcInvalidParamsError, RpcInvalidRequestError, RpcMethodNotFoundError, RpcParseError };
120
+ export { RpcErr, RpcErrInit, RpcError, RpcInternalError, RpcInvalidParamsError, RpcInvalidRequestError, RpcMethodNotFoundError, RpcParseError };
112
121
  //# sourceMappingURL=err.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"err.mjs","sources":["../../../../src/mods/rpc/err.ts"],"sourcesContent":["import { Err } from \"@hazae41/result\"\nimport { RpcId } from \"./request.js\"\n\nexport interface RpcErrorInit {\n readonly code: number,\n readonly message: string,\n readonly data: unknown\n}\n\nexport interface RpcErrInit {\n readonly jsonrpc: \"2.0\"\n readonly id: RpcId\n readonly error: RpcErrorInit\n}\n\nexport class RpcError extends Error {\n readonly #class = RpcError\n readonly name = this.#class.name\n\n static readonly codes = {\n ParseError: -32700,\n InvalidRequest: -32600,\n MethodNotFound: -32601,\n InvalidParams: -32602,\n InternalError: -32603\n } as const\n\n static readonly messages = {\n ParseError: \"Parse error\",\n InvalidRequest: \"Invalid Request\",\n MethodNotFound: \"Method not found\",\n InvalidParams: \"Invalid params\",\n InternalError: \"Internal error\",\n ServerError: \"Server error\"\n } as const\n\n constructor(\n readonly code: number,\n readonly message: string,\n readonly data: unknown = undefined\n ) {\n super(message)\n }\n\n static from(init: RpcErrorInit) {\n const { code, message, data } = init\n return new RpcError(code, message, data)\n }\n\n static rewrap(error: unknown) {\n if (error instanceof RpcError)\n return error\n if (error instanceof Error)\n return new RpcInternalError(error.message)\n return new RpcInternalError()\n }\n\n /**\n * Used by JSON.stringify\n */\n toJSON() {\n const { code, message, data } = this\n return { code, message, data }\n }\n\n}\n\nexport class RpcParseError extends RpcError {\n readonly #class = RpcParseError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.ParseError\n static readonly message = RpcError.messages.ParseError\n\n constructor(message: string = RpcError.messages.ParseError) {\n super(RpcError.codes.ParseError, message)\n }\n}\n\nexport class RpcInvalidRequestError extends RpcError {\n readonly #class = RpcInvalidRequestError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InvalidRequest\n static readonly message = RpcError.messages.InvalidRequest\n\n constructor(message: string = RpcError.messages.InvalidRequest) {\n super(RpcError.codes.InvalidRequest, message)\n }\n\n}\n\nexport class RpcMethodNotFoundError extends RpcError {\n readonly #class = RpcMethodNotFoundError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.MethodNotFound\n static readonly message = RpcError.messages.MethodNotFound\n\n constructor(message: string = RpcError.messages.MethodNotFound) {\n super(RpcError.codes.MethodNotFound, message)\n }\n\n}\n\nexport class RpcInvalidParamsError extends RpcError {\n readonly #class = RpcInvalidParamsError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InvalidParams\n static readonly message = RpcError.messages.InvalidParams\n\n constructor(message: string = RpcError.messages.InvalidParams) {\n super(RpcError.codes.InvalidParams, message)\n }\n\n}\n\nexport class RpcInternalError extends RpcError {\n readonly #class = RpcInternalError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InternalError\n static readonly message = RpcError.messages.InternalError\n\n constructor(message: string = RpcError.messages.InternalError) {\n super(RpcError.codes.InternalError, message)\n }\n\n}\n\nexport class RpcErr extends Err<RpcError> {\n readonly jsonrpc = \"2.0\"\n\n constructor(\n readonly id: RpcId,\n readonly error: RpcError\n ) {\n super(error)\n }\n\n static from(init: RpcErrInit) {\n return new RpcErr(init.id, RpcError.from(init.error))\n }\n\n static rewrap<T extends Err.Infer<T>>(id: RpcId, result: T) {\n return new RpcErr(id, RpcError.rewrap(result.inner))\n }\n\n}"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"err.mjs","sources":["../../../../src/mods/rpc/err.ts"],"sourcesContent":["import { Err } from \"@hazae41/result\"\nimport { RpcId } from \"./request.js\"\n\nexport interface RpcErrorInit {\n readonly code: number,\n readonly message: string,\n readonly data: unknown\n}\n\nexport interface RpcErrInit {\n readonly jsonrpc: \"2.0\"\n readonly id: RpcId\n readonly error: RpcErrorInit\n}\n\nexport namespace RpcErrInit {\n\n export function from(response: RpcErr): RpcErrInit {\n return response.toJSON()\n }\n\n}\n\nexport class RpcError extends Error {\n readonly #class = RpcError\n readonly name = this.#class.name\n\n static readonly codes = {\n ParseError: -32700,\n InvalidRequest: -32600,\n MethodNotFound: -32601,\n InvalidParams: -32602,\n InternalError: -32603\n } as const\n\n static readonly messages = {\n ParseError: \"Parse error\",\n InvalidRequest: \"Invalid Request\",\n MethodNotFound: \"Method not found\",\n InvalidParams: \"Invalid params\",\n InternalError: \"Internal error\",\n ServerError: \"Server error\"\n } as const\n\n constructor(\n readonly code: number,\n readonly message: string,\n readonly data: unknown = undefined\n ) {\n super(message)\n }\n\n static from(init: RpcErrorInit) {\n const { code, message, data } = init\n return new RpcError(code, message, data)\n }\n\n static rewrap(error: unknown) {\n if (error instanceof RpcError)\n return error\n if (error instanceof Error)\n return new RpcInternalError(error.message)\n return new RpcInternalError()\n }\n\n toJSON() {\n const { code, message, data } = this\n return { code, message, data }\n }\n\n}\n\nexport class RpcParseError extends RpcError {\n readonly #class = RpcParseError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.ParseError\n static readonly message = RpcError.messages.ParseError\n\n constructor(message: string = RpcError.messages.ParseError) {\n super(RpcError.codes.ParseError, message)\n }\n}\n\nexport class RpcInvalidRequestError extends RpcError {\n readonly #class = RpcInvalidRequestError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InvalidRequest\n static readonly message = RpcError.messages.InvalidRequest\n\n constructor(message: string = RpcError.messages.InvalidRequest) {\n super(RpcError.codes.InvalidRequest, message)\n }\n\n}\n\nexport class RpcMethodNotFoundError extends RpcError {\n readonly #class = RpcMethodNotFoundError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.MethodNotFound\n static readonly message = RpcError.messages.MethodNotFound\n\n constructor(message: string = RpcError.messages.MethodNotFound) {\n super(RpcError.codes.MethodNotFound, message)\n }\n\n}\n\nexport class RpcInvalidParamsError extends RpcError {\n readonly #class = RpcInvalidParamsError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InvalidParams\n static readonly message = RpcError.messages.InvalidParams\n\n constructor(message: string = RpcError.messages.InvalidParams) {\n super(RpcError.codes.InvalidParams, message)\n }\n\n}\n\nexport class RpcInternalError extends RpcError {\n readonly #class = RpcInternalError\n readonly name = this.#class.name\n\n static readonly code = RpcError.codes.InternalError\n static readonly message = RpcError.messages.InternalError\n\n constructor(message: string = RpcError.messages.InternalError) {\n super(RpcError.codes.InternalError, message)\n }\n\n}\n\nexport class RpcErr extends Err<RpcError> {\n readonly jsonrpc = \"2.0\"\n\n constructor(\n readonly id: RpcId,\n readonly error: RpcError\n ) {\n super(error)\n }\n\n static from(init: RpcErrInit) {\n return new RpcErr(init.id, RpcError.from(init.error))\n }\n\n static rewrap<T extends Err.Infer<T>>(id: RpcId, result: T) {\n return new RpcErr(id, RpcError.rewrap(result.inner))\n }\n\n toJSON() {\n const { jsonrpc, id } = this\n\n const error = this.error.toJSON()\n\n return { jsonrpc, id, error } as const\n }\n\n}"],"names":[],"mappings":";;AAeM,IAAW,WAMhB;AAND,CAAA,UAAiB,UAAU,EAAA;IAEzB,SAAgB,IAAI,CAAC,QAAgB,EAAA;AACnC,QAAA,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAA;KACzB;AAFe,IAAA,UAAA,CAAA,IAAI,OAEnB,CAAA;AAEH,CAAC,EANgB,UAAU,KAAV,UAAU,GAM1B,EAAA,CAAA,CAAA,CAAA;AAEK,MAAO,QAAS,SAAQ,KAAK,CAAA;AAsBtB,IAAA,IAAA,CAAA;AACA,IAAA,OAAA,CAAA;AACA,IAAA,IAAA,CAAA;IAvBF,MAAM,GAAG,QAAQ,CAAA;AACjB,IAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IAEhC,OAAgB,KAAK,GAAG;QACtB,UAAU,EAAE,CAAC,KAAK;QAClB,cAAc,EAAE,CAAC,KAAK;QACtB,cAAc,EAAE,CAAC,KAAK;QACtB,aAAa,EAAE,CAAC,KAAK;QACrB,aAAa,EAAE,CAAC,KAAK;KACb,CAAA;IAEV,OAAgB,QAAQ,GAAG;AACzB,QAAA,UAAU,EAAE,aAAa;AACzB,QAAA,cAAc,EAAE,iBAAiB;AACjC,QAAA,cAAc,EAAE,kBAAkB;AAClC,QAAA,aAAa,EAAE,gBAAgB;AAC/B,QAAA,aAAa,EAAE,gBAAgB;AAC/B,QAAA,WAAW,EAAE,cAAc;KACnB,CAAA;AAEV,IAAA,WAAA,CACW,IAAY,EACZ,OAAe,EACf,OAAgB,SAAS,EAAA;QAElC,KAAK,CAAC,OAAO,CAAC,CAAA;QAJL,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAQ;QACZ,IAAO,CAAA,OAAA,GAAP,OAAO,CAAQ;QACf,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAqB;KAGnC;IAED,OAAO,IAAI,CAAC,IAAkB,EAAA;QAC5B,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;QACpC,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;KACzC;IAED,OAAO,MAAM,CAAC,KAAc,EAAA;QAC1B,IAAI,KAAK,YAAY,QAAQ;AAC3B,YAAA,OAAO,KAAK,CAAA;QACd,IAAI,KAAK,YAAY,KAAK;AACxB,YAAA,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC5C,OAAO,IAAI,gBAAgB,EAAE,CAAA;KAC9B;IAED,MAAM,GAAA;QACJ,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;AACpC,QAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;KAC/B;;AAIG,MAAO,aAAc,SAAQ,QAAQ,CAAA;IAChC,MAAM,GAAG,aAAa,CAAA;AACtB,IAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IAEhC,OAAgB,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAA;IAChD,OAAgB,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAA;AAEtD,IAAA,WAAA,CAAY,OAAkB,GAAA,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAA;QACxD,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;KAC1C;;AAGG,MAAO,sBAAuB,SAAQ,QAAQ,CAAA;IACzC,MAAM,GAAG,sBAAsB,CAAA;AAC/B,IAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IAEhC,OAAgB,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAA;IACpD,OAAgB,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAA;AAE1D,IAAA,WAAA,CAAY,OAAkB,GAAA,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAA;QAC5D,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;KAC9C;;AAIG,MAAO,sBAAuB,SAAQ,QAAQ,CAAA;IACzC,MAAM,GAAG,sBAAsB,CAAA;AAC/B,IAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IAEhC,OAAgB,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAA;IACpD,OAAgB,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAA;AAE1D,IAAA,WAAA,CAAY,OAAkB,GAAA,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAA;QAC5D,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;KAC9C;;AAIG,MAAO,qBAAsB,SAAQ,QAAQ,CAAA;IACxC,MAAM,GAAG,qBAAqB,CAAA;AAC9B,IAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IAEhC,OAAgB,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAA;IACnD,OAAgB,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAA;AAEzD,IAAA,WAAA,CAAY,OAAkB,GAAA,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAA;QAC3D,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;KAC7C;;AAIG,MAAO,gBAAiB,SAAQ,QAAQ,CAAA;IACnC,MAAM,GAAG,gBAAgB,CAAA;AACzB,IAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IAEhC,OAAgB,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAA;IACnD,OAAgB,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAA;AAEzD,IAAA,WAAA,CAAY,OAAkB,GAAA,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAA;QAC3D,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;KAC7C;;AAIG,MAAO,MAAO,SAAQ,GAAa,CAAA;AAI5B,IAAA,EAAA,CAAA;AACA,IAAA,KAAA,CAAA;IAJF,OAAO,GAAG,KAAK,CAAA;IAExB,WACW,CAAA,EAAS,EACT,KAAe,EAAA;QAExB,KAAK,CAAC,KAAK,CAAC,CAAA;QAHH,IAAE,CAAA,EAAA,GAAF,EAAE,CAAO;QACT,IAAK,CAAA,KAAA,GAAL,KAAK,CAAU;KAGzB;IAED,OAAO,IAAI,CAAC,IAAgB,EAAA;AAC1B,QAAA,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;KACtD;AAED,IAAA,OAAO,MAAM,CAAyB,EAAS,EAAE,MAAS,EAAA;AACxD,QAAA,OAAO,IAAI,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;KACrD;IAED,MAAM,GAAA;AACJ,QAAA,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,IAAI,CAAA;QAE5B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;AAEjC,QAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAW,CAAA;KACvC;AAEF;;;;"}
@@ -3,8 +3,7 @@ import { Ok } from '@hazae41/result';
3
3
  var RpcOkInit;
4
4
  (function (RpcOkInit) {
5
5
  function from(response) {
6
- const { jsonrpc, id, result } = response;
7
- return { jsonrpc, id, result };
6
+ return response.toJSON();
8
7
  }
9
8
  RpcOkInit.from = from;
10
9
  })(RpcOkInit || (RpcOkInit = {}));
@@ -23,6 +22,10 @@ class RpcOk extends Ok {
23
22
  static rewrap(id, result) {
24
23
  return new RpcOk(id, result.inner);
25
24
  }
25
+ toJSON() {
26
+ const { jsonrpc, id, result } = this;
27
+ return { jsonrpc, id, result };
28
+ }
26
29
  }
27
30
 
28
31
  export { RpcOk, RpcOkInit };
@@ -1 +1 @@
1
- {"version":3,"file":"ok.mjs","sources":["../../../../src/mods/rpc/ok.ts"],"sourcesContent":["import { Ok } from \"@hazae41/result\"\nimport { RpcId } from \"./request.js\"\n\nexport interface RpcOkInit<T = unknown> {\n readonly jsonrpc: \"2.0\"\n readonly id: RpcId,\n readonly result: T\n}\n\nexport namespace RpcOkInit {\n\n export function from<T>(response: RpcOk<T>): RpcOkInit<T> {\n const { jsonrpc, id, result } = response\n return { jsonrpc, id, result }\n }\n\n}\n\nexport class RpcOk<T = unknown> extends Ok<T> {\n readonly jsonrpc = \"2.0\"\n\n constructor(\n readonly id: RpcId,\n readonly result: T\n ) {\n super(result)\n }\n\n static from<T>(init: RpcOkInit<T>) {\n return new RpcOk(init.id, init.result)\n }\n\n static rewrap<T extends Ok.Infer<T>>(id: RpcId, result: T) {\n return new RpcOk(id, result.inner)\n }\n\n}\n"],"names":[],"mappings":";;AASM,IAAW,UAOhB;AAPD,CAAA,UAAiB,SAAS,EAAA;IAExB,SAAgB,IAAI,CAAI,QAAkB,EAAA;QACxC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;AACxC,QAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAA;KAC/B;AAHe,IAAA,SAAA,CAAA,IAAI,OAGnB,CAAA;AAEH,CAAC,EAPgB,SAAS,KAAT,SAAS,GAOzB,EAAA,CAAA,CAAA,CAAA;AAEK,MAAO,KAAmB,SAAQ,EAAK,CAAA;AAIhC,IAAA,EAAA,CAAA;AACA,IAAA,MAAA,CAAA;IAJF,OAAO,GAAG,KAAK,CAAA;IAExB,WACW,CAAA,EAAS,EACT,MAAS,EAAA;QAElB,KAAK,CAAC,MAAM,CAAC,CAAA;QAHJ,IAAE,CAAA,EAAA,GAAF,EAAE,CAAO;QACT,IAAM,CAAA,MAAA,GAAN,MAAM,CAAG;KAGnB;IAED,OAAO,IAAI,CAAI,IAAkB,EAAA;QAC/B,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;KACvC;AAED,IAAA,OAAO,MAAM,CAAwB,EAAS,EAAE,MAAS,EAAA;QACvD,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;KACnC;AAEF;;;;"}
1
+ {"version":3,"file":"ok.mjs","sources":["../../../../src/mods/rpc/ok.ts"],"sourcesContent":["import { Ok } from \"@hazae41/result\"\nimport { RpcId } from \"./request.js\"\n\nexport interface RpcOkInit<T = unknown> {\n readonly jsonrpc: \"2.0\"\n readonly id: RpcId,\n readonly result: T\n}\n\nexport namespace RpcOkInit {\n\n export function from<T>(response: RpcOk<T>): RpcOkInit<T> {\n return response.toJSON()\n }\n\n}\n\nexport class RpcOk<T = unknown> extends Ok<T> {\n readonly jsonrpc = \"2.0\"\n\n constructor(\n readonly id: RpcId,\n readonly result: T\n ) {\n super(result)\n }\n\n static from<T>(init: RpcOkInit<T>) {\n return new RpcOk(init.id, init.result)\n }\n\n static rewrap<T extends Ok.Infer<T>>(id: RpcId, result: T) {\n return new RpcOk(id, result.inner)\n }\n\n toJSON() {\n const { jsonrpc, id, result } = this\n return { jsonrpc, id, result } as const\n }\n\n}\n"],"names":[],"mappings":";;AASM,IAAW,UAMhB;AAND,CAAA,UAAiB,SAAS,EAAA;IAExB,SAAgB,IAAI,CAAI,QAAkB,EAAA;AACxC,QAAA,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAA;KACzB;AAFe,IAAA,SAAA,CAAA,IAAI,OAEnB,CAAA;AAEH,CAAC,EANgB,SAAS,KAAT,SAAS,GAMzB,EAAA,CAAA,CAAA,CAAA;AAEK,MAAO,KAAmB,SAAQ,EAAK,CAAA;AAIhC,IAAA,EAAA,CAAA;AACA,IAAA,MAAA,CAAA;IAJF,OAAO,GAAG,KAAK,CAAA;IAExB,WACW,CAAA,EAAS,EACT,MAAS,EAAA;QAElB,KAAK,CAAC,MAAM,CAAC,CAAA;QAHJ,IAAE,CAAA,EAAA,GAAF,EAAE,CAAO;QACT,IAAM,CAAA,MAAA,GAAN,MAAM,CAAG;KAGnB;IAED,OAAO,IAAI,CAAI,IAAkB,EAAA;QAC/B,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;KACvC;AAED,IAAA,OAAO,MAAM,CAAwB,EAAS,EAAE,MAAS,EAAA;QACvD,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;KACnC;IAED,MAAM,GAAA;QACJ,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;AACpC,QAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAW,CAAA;KACxC;AAEF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"request.mjs","sources":["../../../../src/mods/rpc/request.ts"],"sourcesContent":["export type RpcId = number | string | null\n\nexport type RpcRequestPreinit<T = unknown> =\n undefined extends T\n ? RpcParamlessRequestPreinit<T>\n : RpcParamfulRequestPreinit<T>\n\nexport interface RpcParamfulRequestPreinit<T = unknown> {\n readonly id?: RpcId\n readonly method: string,\n readonly params: NonNullable<T>\n}\n\nexport interface RpcParamlessRequestPreinit<T = unknown> {\n readonly id?: RpcId\n readonly method: string\n readonly params?: T\n}\n\nexport type RpcRequestInit<T = unknown> =\n undefined extends T\n ? RpcParamlessRequestInit<T>\n : RpcParamfulRequestInit<T>\n\nexport interface RpcParamfulRequestInit<T = unknown> {\n readonly id: RpcId\n readonly method: string\n readonly params: NonNullable<T>\n}\n\nexport interface RpcParamlessRequestInit<T = unknown> {\n readonly id: RpcId\n readonly method: string\n readonly params?: T\n}\n\nexport class RpcRequest<T> {\n readonly jsonrpc = \"2.0\" as const\n\n constructor(\n readonly id: RpcId,\n readonly method: string,\n readonly params?: T\n ) { }\n\n static from<T>(init: RpcRequestInit<T>) {\n const { id, method, params } = init\n return new RpcRequest(id, method, params)\n }\n\n toJSON() {\n const { jsonrpc, id, method, params } = this\n return { jsonrpc, id, method, params }\n }\n\n}"],"names":[],"mappings":"MAoCa,UAAU,CAAA;AAIV,IAAA,EAAA,CAAA;AACA,IAAA,MAAA,CAAA;AACA,IAAA,MAAA,CAAA;IALF,OAAO,GAAG,KAAc,CAAA;AAEjC,IAAA,WAAA,CACW,EAAS,EACT,MAAc,EACd,MAAU,EAAA;QAFV,IAAE,CAAA,EAAA,GAAF,EAAE,CAAO;QACT,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAI;KAChB;IAEL,OAAO,IAAI,CAAI,IAAuB,EAAA;QACpC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACnC,OAAO,IAAI,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAC1C;IAED,MAAM,GAAA;QACJ,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAC5C,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;KACvC;AAEF;;;;"}
1
+ {"version":3,"file":"request.mjs","sources":["../../../../src/mods/rpc/request.ts"],"sourcesContent":["export type RpcId = number | string | null\n\nexport type RpcRequestPreinit<T = unknown> =\n undefined extends T\n ? RpcParamlessRequestPreinit<T>\n : RpcParamfulRequestPreinit<T>\n\nexport interface RpcParamfulRequestPreinit<T = unknown> {\n readonly id?: RpcId\n readonly method: string,\n readonly params: NonNullable<T>\n}\n\nexport interface RpcParamlessRequestPreinit<T = unknown> {\n readonly id?: RpcId\n readonly method: string\n readonly params?: T\n}\n\nexport type RpcRequestInit<T = unknown> =\n undefined extends T\n ? RpcParamlessRequestInit<T>\n : RpcParamfulRequestInit<T>\n\nexport interface RpcParamfulRequestInit<T = unknown> {\n readonly id: RpcId\n readonly method: string\n readonly params: NonNullable<T>\n}\n\nexport interface RpcParamlessRequestInit<T = unknown> {\n readonly id: RpcId\n readonly method: string\n readonly params?: T\n}\n\nexport class RpcRequest<T> {\n readonly jsonrpc = \"2.0\" as const\n\n constructor(\n readonly id: RpcId,\n readonly method: string,\n readonly params?: T\n ) { }\n\n static from<T>(init: RpcRequestInit<T>) {\n const { id, method, params } = init\n return new RpcRequest(id, method, params)\n }\n\n toJSON() {\n const { jsonrpc, id, method, params } = this\n return { jsonrpc, id, method, params } as const\n }\n\n}"],"names":[],"mappings":"MAoCa,UAAU,CAAA;AAIV,IAAA,EAAA,CAAA;AACA,IAAA,MAAA,CAAA;AACA,IAAA,MAAA,CAAA;IALF,OAAO,GAAG,KAAc,CAAA;AAEjC,IAAA,WAAA,CACW,EAAS,EACT,MAAc,EACd,MAAU,EAAA;QAFV,IAAE,CAAA,EAAA,GAAF,EAAE,CAAO;QACT,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAI;KAChB;IAEL,OAAO,IAAI,CAAI,IAAuB,EAAA;QACpC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACnC,OAAO,IAAI,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAC1C;IAED,MAAM,GAAA;QACJ,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAC5C,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAW,CAAA;KAChD;AAEF;;;;"}
@@ -11,6 +11,9 @@ interface RpcErrInit {
11
11
  readonly id: RpcId;
12
12
  readonly error: RpcErrorInit;
13
13
  }
14
+ declare namespace RpcErrInit {
15
+ function from(response: RpcErr): RpcErrInit;
16
+ }
14
17
  declare class RpcError extends Error {
15
18
  #private;
16
19
  readonly code: number;
@@ -35,9 +38,6 @@ declare class RpcError extends Error {
35
38
  constructor(code: number, message: string, data?: unknown);
36
39
  static from(init: RpcErrorInit): RpcError;
37
40
  static rewrap(error: unknown): RpcError;
38
- /**
39
- * Used by JSON.stringify
40
- */
41
41
  toJSON(): {
42
42
  code: number;
43
43
  message: string;
@@ -86,6 +86,15 @@ declare class RpcErr extends Err<RpcError> {
86
86
  constructor(id: RpcId, error: RpcError);
87
87
  static from(init: RpcErrInit): RpcErr;
88
88
  static rewrap<T extends Err.Infer<T>>(id: RpcId, result: T): RpcErr;
89
+ toJSON(): {
90
+ readonly jsonrpc: "2.0";
91
+ readonly id: RpcId;
92
+ readonly error: {
93
+ code: number;
94
+ message: string;
95
+ data: unknown;
96
+ };
97
+ };
89
98
  }
90
99
 
91
- export { RpcErr, type RpcErrInit, RpcError, type RpcErrorInit, RpcInternalError, RpcInvalidParamsError, RpcInvalidRequestError, RpcMethodNotFoundError, RpcParseError };
100
+ export { RpcErr, RpcErrInit, RpcError, type RpcErrorInit, RpcInternalError, RpcInvalidParamsError, RpcInvalidRequestError, RpcMethodNotFoundError, RpcParseError };
@@ -16,6 +16,11 @@ declare class RpcOk<T = unknown> extends Ok<T> {
16
16
  constructor(id: RpcId, result: T);
17
17
  static from<T>(init: RpcOkInit<T>): RpcOk<T>;
18
18
  static rewrap<T extends Ok.Infer<T>>(id: RpcId, result: T): RpcOk<Ok.Inner<T>>;
19
+ toJSON(): {
20
+ readonly jsonrpc: "2.0";
21
+ readonly id: RpcId;
22
+ readonly result: T;
23
+ };
19
24
  }
20
25
 
21
26
  export { RpcOk, RpcOkInit };
@@ -29,10 +29,10 @@ declare class RpcRequest<T> {
29
29
  constructor(id: RpcId, method: string, params?: T | undefined);
30
30
  static from<T>(init: RpcRequestInit<T>): RpcRequest<T | NonNullable<T>>;
31
31
  toJSON(): {
32
- jsonrpc: "2.0";
33
- id: RpcId;
34
- method: string;
35
- params: T | undefined;
32
+ readonly jsonrpc: "2.0";
33
+ readonly id: RpcId;
34
+ readonly method: string;
35
+ readonly params: T | undefined;
36
36
  };
37
37
  }
38
38
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@hazae41/jsonrpc",
4
- "version": "1.0.5",
4
+ "version": "1.0.7",
5
5
  "description": "Rust-like JSON-RPC for TypeScript",
6
6
  "homepage": "https://github.com/hazae41/jsonrpc",
7
7
  "repository": "github:hazae41/jsonrpc",