ox 0.6.0 → 0.6.2

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/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # ox
2
2
 
3
+ ## 0.6.2
4
+
5
+ ### Patch Changes
6
+
7
+ - [`e541cec`](https://github.com/wevm/ox/commit/e541ceca3c00f0d0b2fbd239696476934dc13ea3) Thanks [@jxom](https://github.com/jxom)! - Modified fallback RPC Errors to `RpcResponse.InternalError`.
8
+
9
+ ## 0.6.1
10
+
11
+ ### Patch Changes
12
+
13
+ - [`5d007ae`](https://github.com/wevm/ox/commit/5d007aebab4a7fe6acc8eb3cfecbce59fe79a00b) Thanks [@jxom](https://github.com/jxom)! - Added `RpcResponse.parseErrorObject` and `Provider.parseErrorObject`.
14
+
3
15
  ## 0.6.0
4
16
 
5
17
  ### Minor Changes
package/README.md CHANGED
@@ -90,3 +90,4 @@ Check out the following places for more Ox-related content:
90
90
  - [GitHub Sponsors](https://github.com/sponsors/wevm?metadata_campaign=docs_support)
91
91
  - [Gitcoin Grant](https://wagmi.sh/gitcoin)
92
92
  - [wevm.eth](https://etherscan.io/enslookup-search?search=wevm.eth)
93
+
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IsUndefinedError = exports.ChainDisconnectedError = exports.DisconnectedError = exports.UnsupportedMethodError = exports.UnauthorizedError = exports.UserRejectedRequestError = exports.ProviderRpcError = void 0;
4
4
  exports.createEmitter = createEmitter;
5
5
  exports.from = from;
6
+ exports.parseErrorObject = parseErrorObject;
6
7
  const eventemitter3_1 = require("eventemitter3");
7
8
  const Errors = require("./Errors.js");
8
9
  const RpcResponse = require("./RpcResponse.js");
@@ -35,6 +36,12 @@ exports.ProviderRpcError = ProviderRpcError;
35
36
  class UserRejectedRequestError extends ProviderRpcError {
36
37
  constructor({ message = 'The user rejected the request.', } = {}) {
37
38
  super(4001, message);
39
+ Object.defineProperty(this, "code", {
40
+ enumerable: true,
41
+ configurable: true,
42
+ writable: true,
43
+ value: 4001
44
+ });
38
45
  Object.defineProperty(this, "name", {
39
46
  enumerable: true,
40
47
  configurable: true,
@@ -53,6 +60,12 @@ Object.defineProperty(UserRejectedRequestError, "code", {
53
60
  class UnauthorizedError extends ProviderRpcError {
54
61
  constructor({ message = 'The requested method and/or account has not been authorized by the user.', } = {}) {
55
62
  super(4100, message);
63
+ Object.defineProperty(this, "code", {
64
+ enumerable: true,
65
+ configurable: true,
66
+ writable: true,
67
+ value: 4100
68
+ });
56
69
  Object.defineProperty(this, "name", {
57
70
  enumerable: true,
58
71
  configurable: true,
@@ -71,6 +84,12 @@ Object.defineProperty(UnauthorizedError, "code", {
71
84
  class UnsupportedMethodError extends ProviderRpcError {
72
85
  constructor({ message = 'The provider does not support the requested method.', } = {}) {
73
86
  super(4200, message);
87
+ Object.defineProperty(this, "code", {
88
+ enumerable: true,
89
+ configurable: true,
90
+ writable: true,
91
+ value: 4200
92
+ });
74
93
  Object.defineProperty(this, "name", {
75
94
  enumerable: true,
76
95
  configurable: true,
@@ -89,6 +108,12 @@ Object.defineProperty(UnsupportedMethodError, "code", {
89
108
  class DisconnectedError extends ProviderRpcError {
90
109
  constructor({ message = 'The provider is disconnected from all chains.', } = {}) {
91
110
  super(4900, message);
111
+ Object.defineProperty(this, "code", {
112
+ enumerable: true,
113
+ configurable: true,
114
+ writable: true,
115
+ value: 4900
116
+ });
92
117
  Object.defineProperty(this, "name", {
93
118
  enumerable: true,
94
119
  configurable: true,
@@ -107,6 +132,12 @@ Object.defineProperty(DisconnectedError, "code", {
107
132
  class ChainDisconnectedError extends ProviderRpcError {
108
133
  constructor({ message = 'The provider is not connected to the requested chain.', } = {}) {
109
134
  super(4901, message);
135
+ Object.defineProperty(this, "code", {
136
+ enumerable: true,
137
+ configurable: true,
138
+ writable: true,
139
+ value: 4901
140
+ });
110
141
  Object.defineProperty(this, "name", {
111
142
  enumerable: true,
112
143
  configurable: true,
@@ -155,15 +186,42 @@ function from(provider, options = {}) {
155
186
  }
156
187
  : {}),
157
188
  async request(args) {
158
- const result = await provider.request(args);
159
- if (result &&
160
- typeof result === 'object' &&
161
- 'jsonrpc' in result)
162
- return RpcResponse.parse(result);
163
- return result;
189
+ try {
190
+ const result = await provider.request(args);
191
+ if (result &&
192
+ typeof result === 'object' &&
193
+ 'jsonrpc' in result)
194
+ return RpcResponse.parse(result);
195
+ return result;
196
+ }
197
+ catch (error) {
198
+ throw parseErrorObject(error);
199
+ }
164
200
  },
165
201
  };
166
202
  }
203
+ function parseErrorObject(errorObject) {
204
+ const errorObject_ = errorObject;
205
+ const error = RpcResponse.parseErrorObject(errorObject_);
206
+ if (error instanceof RpcResponse.InternalError) {
207
+ const { code } = error.data;
208
+ if (code === DisconnectedError.code)
209
+ return new DisconnectedError(errorObject_);
210
+ if (code === ChainDisconnectedError.code)
211
+ return new ChainDisconnectedError(errorObject_);
212
+ if (code === UserRejectedRequestError.code)
213
+ return new UserRejectedRequestError(errorObject_);
214
+ if (code === UnauthorizedError.code)
215
+ return new UnauthorizedError(errorObject_);
216
+ if (code === UnsupportedMethodError.code)
217
+ return new UnsupportedMethodError(errorObject_);
218
+ return new RpcResponse.InternalError({
219
+ data: errorObject_,
220
+ message: errorObject_.message,
221
+ });
222
+ }
223
+ return error;
224
+ }
167
225
  class IsUndefinedError extends Errors.BaseError {
168
226
  constructor() {
169
227
  super('`provider` is undefined.');
@@ -1 +1 @@
1
- {"version":3,"file":"Provider.js","sourceRoot":"","sources":["../../core/Provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Provider.js","sourceRoot":"","sources":["../../core/Provider.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ParseError = exports.InternalError = exports.InvalidParamsError = exports.MethodNotFoundError = exports.InvalidRequestError = exports.VersionNotSupportedError = exports.LimitExceededError = exports.MethodNotSupportedError = exports.TransactionRejectedError = exports.ResourceUnavailableError = exports.ResourceNotFoundError = exports.InvalidInputError = exports.BaseError = void 0;
4
4
  exports.from = from;
5
5
  exports.parse = parse;
6
+ exports.parseErrorObject = parseErrorObject;
6
7
  function from(response, options = {}) {
7
8
  const { request } = options;
8
9
  return {
@@ -16,39 +17,42 @@ function parse(response, options = {}) {
16
17
  const response_ = response;
17
18
  if (raw)
18
19
  return response;
19
- if (response_.error) {
20
- const { code } = response_.error;
21
- const JsonRpcError = (() => {
22
- if (code === InternalError.code)
23
- return InternalError;
24
- if (code === InvalidInputError.code)
25
- return InvalidInputError;
26
- if (code === InvalidParamsError.code)
27
- return InvalidParamsError;
28
- if (code === InvalidRequestError.code)
29
- return InvalidRequestError;
30
- if (code === LimitExceededError.code)
31
- return LimitExceededError;
32
- if (code === MethodNotFoundError.code)
33
- return MethodNotFoundError;
34
- if (code === MethodNotSupportedError.code)
35
- return MethodNotSupportedError;
36
- if (code === ParseError.code)
37
- return ParseError;
38
- if (code === ResourceNotFoundError.code)
39
- return ResourceNotFoundError;
40
- if (code === ResourceUnavailableError.code)
41
- return ResourceUnavailableError;
42
- if (code === TransactionRejectedError.code)
43
- return TransactionRejectedError;
44
- if (code === VersionNotSupportedError.code)
45
- return VersionNotSupportedError;
46
- return BaseError;
47
- })();
48
- throw new JsonRpcError(response_.error);
49
- }
20
+ if (response_.error)
21
+ throw parseErrorObject(response_.error);
50
22
  return response_.result;
51
23
  }
24
+ function parseErrorObject(errorObject) {
25
+ const errorObject_ = errorObject;
26
+ const { code } = errorObject_;
27
+ if (code === InternalError.code)
28
+ return new InternalError(errorObject_);
29
+ if (code === InvalidInputError.code)
30
+ return new InvalidInputError(errorObject_);
31
+ if (code === InvalidParamsError.code)
32
+ return new InvalidParamsError(errorObject_);
33
+ if (code === InvalidRequestError.code)
34
+ return new InvalidRequestError(errorObject_);
35
+ if (code === LimitExceededError.code)
36
+ return new LimitExceededError(errorObject_);
37
+ if (code === MethodNotFoundError.code)
38
+ return new MethodNotFoundError(errorObject_);
39
+ if (code === MethodNotSupportedError.code)
40
+ return new MethodNotSupportedError(errorObject_);
41
+ if (code === ParseError.code)
42
+ return new ParseError(errorObject_);
43
+ if (code === ResourceNotFoundError.code)
44
+ return new ResourceNotFoundError(errorObject_);
45
+ if (code === ResourceUnavailableError.code)
46
+ return new ResourceUnavailableError(errorObject_);
47
+ if (code === TransactionRejectedError.code)
48
+ return new TransactionRejectedError(errorObject_);
49
+ if (code === VersionNotSupportedError.code)
50
+ return new VersionNotSupportedError(errorObject_);
51
+ return new InternalError({
52
+ data: errorObject_,
53
+ message: errorObject_.message,
54
+ });
55
+ }
52
56
  class BaseError extends Error {
53
57
  constructor(errorObject) {
54
58
  const { code, message, data } = errorObject;
@@ -373,7 +377,7 @@ class InternalError extends BaseError {
373
377
  enumerable: true,
374
378
  configurable: true,
375
379
  writable: true,
376
- value: 'RpcResponse.InternalErrorError'
380
+ value: 'RpcResponse.InternalError'
377
381
  });
378
382
  }
379
383
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RpcResponse.js","sourceRoot":"","sources":["../../core/RpcResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RpcResponse.js","sourceRoot":"","sources":["../../core/RpcResponse.ts"],"names":[],"mappings":"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"}
package/_cjs/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
- exports.version = '0.6.0';
4
+ exports.version = '0.6.2';
5
5
  //# sourceMappingURL=version.js.map
@@ -30,6 +30,12 @@ export class ProviderRpcError extends Error {
30
30
  export class UserRejectedRequestError extends ProviderRpcError {
31
31
  constructor({ message = 'The user rejected the request.', } = {}) {
32
32
  super(4001, message);
33
+ Object.defineProperty(this, "code", {
34
+ enumerable: true,
35
+ configurable: true,
36
+ writable: true,
37
+ value: 4001
38
+ });
33
39
  Object.defineProperty(this, "name", {
34
40
  enumerable: true,
35
41
  configurable: true,
@@ -48,6 +54,12 @@ Object.defineProperty(UserRejectedRequestError, "code", {
48
54
  export class UnauthorizedError extends ProviderRpcError {
49
55
  constructor({ message = 'The requested method and/or account has not been authorized by the user.', } = {}) {
50
56
  super(4100, message);
57
+ Object.defineProperty(this, "code", {
58
+ enumerable: true,
59
+ configurable: true,
60
+ writable: true,
61
+ value: 4100
62
+ });
51
63
  Object.defineProperty(this, "name", {
52
64
  enumerable: true,
53
65
  configurable: true,
@@ -66,6 +78,12 @@ Object.defineProperty(UnauthorizedError, "code", {
66
78
  export class UnsupportedMethodError extends ProviderRpcError {
67
79
  constructor({ message = 'The provider does not support the requested method.', } = {}) {
68
80
  super(4200, message);
81
+ Object.defineProperty(this, "code", {
82
+ enumerable: true,
83
+ configurable: true,
84
+ writable: true,
85
+ value: 4200
86
+ });
69
87
  Object.defineProperty(this, "name", {
70
88
  enumerable: true,
71
89
  configurable: true,
@@ -84,6 +102,12 @@ Object.defineProperty(UnsupportedMethodError, "code", {
84
102
  export class DisconnectedError extends ProviderRpcError {
85
103
  constructor({ message = 'The provider is disconnected from all chains.', } = {}) {
86
104
  super(4900, message);
105
+ Object.defineProperty(this, "code", {
106
+ enumerable: true,
107
+ configurable: true,
108
+ writable: true,
109
+ value: 4900
110
+ });
87
111
  Object.defineProperty(this, "name", {
88
112
  enumerable: true,
89
113
  configurable: true,
@@ -102,6 +126,12 @@ Object.defineProperty(DisconnectedError, "code", {
102
126
  export class ChainDisconnectedError extends ProviderRpcError {
103
127
  constructor({ message = 'The provider is not connected to the requested chain.', } = {}) {
104
128
  super(4901, message);
129
+ Object.defineProperty(this, "code", {
130
+ enumerable: true,
131
+ configurable: true,
132
+ writable: true,
133
+ value: 4901
134
+ });
105
135
  Object.defineProperty(this, "name", {
106
136
  enumerable: true,
107
137
  configurable: true,
@@ -185,15 +215,59 @@ export function from(provider, options = {}) {
185
215
  }
186
216
  : {}),
187
217
  async request(args) {
188
- const result = await provider.request(args);
189
- if (result &&
190
- typeof result === 'object' &&
191
- 'jsonrpc' in result)
192
- return RpcResponse.parse(result);
193
- return result;
218
+ try {
219
+ const result = await provider.request(args);
220
+ if (result &&
221
+ typeof result === 'object' &&
222
+ 'jsonrpc' in result)
223
+ return RpcResponse.parse(result);
224
+ return result;
225
+ }
226
+ catch (error) {
227
+ throw parseErrorObject(error);
228
+ }
194
229
  },
195
230
  };
196
231
  }
232
+ /**
233
+ * Parses an error object into an error instance.
234
+ *
235
+ * @example
236
+ * ```ts twoslash
237
+ * import { Provider } from 'ox'
238
+ *
239
+ * const error = Provider.parseErrorObject({ code: 4200, message: 'foo' })
240
+ *
241
+ * error
242
+ * // ^?
243
+ *
244
+ * ```
245
+ *
246
+ * @param errorObject - The error object to parse.
247
+ * @returns An error instance.
248
+ */
249
+ export function parseErrorObject(errorObject) {
250
+ const errorObject_ = errorObject;
251
+ const error = RpcResponse.parseErrorObject(errorObject_);
252
+ if (error instanceof RpcResponse.InternalError) {
253
+ const { code } = error.data;
254
+ if (code === DisconnectedError.code)
255
+ return new DisconnectedError(errorObject_);
256
+ if (code === ChainDisconnectedError.code)
257
+ return new ChainDisconnectedError(errorObject_);
258
+ if (code === UserRejectedRequestError.code)
259
+ return new UserRejectedRequestError(errorObject_);
260
+ if (code === UnauthorizedError.code)
261
+ return new UnauthorizedError(errorObject_);
262
+ if (code === UnsupportedMethodError.code)
263
+ return new UnsupportedMethodError(errorObject_);
264
+ return new RpcResponse.InternalError({
265
+ data: errorObject_,
266
+ message: errorObject_.message,
267
+ });
268
+ }
269
+ return error;
270
+ }
197
271
  /** Thrown when the provider is undefined. */
198
272
  export class IsUndefinedError extends Errors.BaseError {
199
273
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"Provider.js","sourceRoot":"","sources":["../../core/Provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Provider.js","sourceRoot":"","sources":["../../core/Provider.ts"],"names":[],"mappings":"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"}
@@ -103,39 +103,59 @@ export function parse(response, options = {}) {
103
103
  const response_ = response;
104
104
  if (raw)
105
105
  return response;
106
- if (response_.error) {
107
- const { code } = response_.error;
108
- const JsonRpcError = (() => {
109
- if (code === InternalError.code)
110
- return InternalError;
111
- if (code === InvalidInputError.code)
112
- return InvalidInputError;
113
- if (code === InvalidParamsError.code)
114
- return InvalidParamsError;
115
- if (code === InvalidRequestError.code)
116
- return InvalidRequestError;
117
- if (code === LimitExceededError.code)
118
- return LimitExceededError;
119
- if (code === MethodNotFoundError.code)
120
- return MethodNotFoundError;
121
- if (code === MethodNotSupportedError.code)
122
- return MethodNotSupportedError;
123
- if (code === ParseError.code)
124
- return ParseError;
125
- if (code === ResourceNotFoundError.code)
126
- return ResourceNotFoundError;
127
- if (code === ResourceUnavailableError.code)
128
- return ResourceUnavailableError;
129
- if (code === TransactionRejectedError.code)
130
- return TransactionRejectedError;
131
- if (code === VersionNotSupportedError.code)
132
- return VersionNotSupportedError;
133
- return BaseError;
134
- })();
135
- throw new JsonRpcError(response_.error);
136
- }
106
+ if (response_.error)
107
+ throw parseErrorObject(response_.error);
137
108
  return response_.result;
138
109
  }
110
+ /**
111
+ * Parses a JSON-RPC error object into an error instance.
112
+ *
113
+ * @example
114
+ * ```ts twoslash
115
+ * import { RpcResponse } from 'ox'
116
+ *
117
+ * const error = RpcResponse.parseError({ code: -32000, message: 'unsupported method' })
118
+ *
119
+ * error
120
+ * // ^?
121
+ *
122
+ * ```
123
+ *
124
+ * @param errorObject - JSON-RPC error object.
125
+ * @returns Error instance.
126
+ */
127
+ export function parseErrorObject(errorObject) {
128
+ const errorObject_ = errorObject;
129
+ const { code } = errorObject_;
130
+ if (code === InternalError.code)
131
+ return new InternalError(errorObject_);
132
+ if (code === InvalidInputError.code)
133
+ return new InvalidInputError(errorObject_);
134
+ if (code === InvalidParamsError.code)
135
+ return new InvalidParamsError(errorObject_);
136
+ if (code === InvalidRequestError.code)
137
+ return new InvalidRequestError(errorObject_);
138
+ if (code === LimitExceededError.code)
139
+ return new LimitExceededError(errorObject_);
140
+ if (code === MethodNotFoundError.code)
141
+ return new MethodNotFoundError(errorObject_);
142
+ if (code === MethodNotSupportedError.code)
143
+ return new MethodNotSupportedError(errorObject_);
144
+ if (code === ParseError.code)
145
+ return new ParseError(errorObject_);
146
+ if (code === ResourceNotFoundError.code)
147
+ return new ResourceNotFoundError(errorObject_);
148
+ if (code === ResourceUnavailableError.code)
149
+ return new ResourceUnavailableError(errorObject_);
150
+ if (code === TransactionRejectedError.code)
151
+ return new TransactionRejectedError(errorObject_);
152
+ if (code === VersionNotSupportedError.code)
153
+ return new VersionNotSupportedError(errorObject_);
154
+ return new InternalError({
155
+ data: errorObject_,
156
+ message: errorObject_.message,
157
+ });
158
+ }
139
159
  /** Thrown when a JSON-RPC error has occurred. */
140
160
  export class BaseError extends Error {
141
161
  constructor(errorObject) {
@@ -461,7 +481,7 @@ export class InternalError extends BaseError {
461
481
  enumerable: true,
462
482
  configurable: true,
463
483
  writable: true,
464
- value: 'RpcResponse.InternalErrorError'
484
+ value: 'RpcResponse.InternalError'
465
485
  });
466
486
  }
467
487
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RpcResponse.js","sourceRoot":"","sources":["../../core/RpcResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RpcResponse.js","sourceRoot":"","sources":["../../core/RpcResponse.ts"],"names":[],"mappings":"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"}
package/_esm/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  /** @internal */
2
- export const version = '0.6.0';
2
+ export const version = '0.6.2';
3
3
  //# sourceMappingURL=version.js.map
@@ -1,9 +1,10 @@
1
1
  import { EventEmitter } from 'eventemitter3';
2
2
  import type * as Address from './Address.js';
3
3
  import * as Errors from './Errors.js';
4
+ import * as RpcResponse from './RpcResponse.js';
4
5
  import type * as RpcSchema from './RpcSchema.js';
5
6
  import type * as RpcSchema_internal from './internal/rpcSchema.js';
6
- import type { Compute } from './internal/types.js';
7
+ import type { Compute, IsNarrowable, IsNever } from './internal/types.js';
7
8
  /** Options for a {@link ox#Provider.Provider}. */
8
9
  export type Options = {
9
10
  /**
@@ -60,6 +61,7 @@ export type EventMap = {
60
61
  /** The user rejected the request. */
61
62
  export declare class UserRejectedRequestError extends ProviderRpcError {
62
63
  static readonly code = 4001;
64
+ readonly code = 4001;
63
65
  readonly name = "Provider.UserRejectedRequestError";
64
66
  constructor({ message, }?: {
65
67
  message?: string | undefined;
@@ -68,6 +70,7 @@ export declare class UserRejectedRequestError extends ProviderRpcError {
68
70
  /** The requested method and/or account has not been authorized by the user. */
69
71
  export declare class UnauthorizedError extends ProviderRpcError {
70
72
  static readonly code = 4100;
73
+ readonly code = 4100;
71
74
  readonly name = "Provider.UnauthorizedError";
72
75
  constructor({ message, }?: {
73
76
  message?: string | undefined;
@@ -76,6 +79,7 @@ export declare class UnauthorizedError extends ProviderRpcError {
76
79
  /** The provider does not support the requested method. */
77
80
  export declare class UnsupportedMethodError extends ProviderRpcError {
78
81
  static readonly code = 4200;
82
+ readonly code = 4200;
79
83
  readonly name = "Provider.UnsupportedMethodError";
80
84
  constructor({ message, }?: {
81
85
  message?: string | undefined;
@@ -84,6 +88,7 @@ export declare class UnsupportedMethodError extends ProviderRpcError {
84
88
  /** The provider is disconnected from all chains. */
85
89
  export declare class DisconnectedError extends ProviderRpcError {
86
90
  static readonly code = 4900;
91
+ readonly code = 4900;
87
92
  readonly name = "Provider.DisconnectedError";
88
93
  constructor({ message, }?: {
89
94
  message?: string | undefined;
@@ -92,6 +97,7 @@ export declare class DisconnectedError extends ProviderRpcError {
92
97
  /** The provider is not connected to the requested chain. */
93
98
  export declare class ChainDisconnectedError extends ProviderRpcError {
94
99
  static readonly code = 4901;
100
+ readonly code = 4901;
95
101
  readonly name = "Provider.ChainDisconnectedError";
96
102
  constructor({ message, }?: {
97
103
  message?: string | undefined;
@@ -297,6 +303,27 @@ export declare function from<const provider extends Provider | unknown, options
297
303
  export declare namespace from {
298
304
  type ErrorType = IsUndefinedError | Errors.GlobalErrorType;
299
305
  }
306
+ /**
307
+ * Parses an error object into an error instance.
308
+ *
309
+ * @example
310
+ * ```ts twoslash
311
+ * import { Provider } from 'ox'
312
+ *
313
+ * const error = Provider.parseErrorObject({ code: 4200, message: 'foo' })
314
+ *
315
+ * error
316
+ * // ^?
317
+ *
318
+ * ```
319
+ *
320
+ * @param errorObject - The error object to parse.
321
+ * @returns An error instance.
322
+ */
323
+ export declare function parseErrorObject<const errorObject extends RpcResponse.ErrorObject | unknown>(errorObject: errorObject | RpcResponse.ErrorObject): parseErrorObject.ReturnType<errorObject>;
324
+ export declare namespace parseErrorObject {
325
+ type ReturnType<errorObject extends RpcResponse.ErrorObject | unknown, error = errorObject extends RpcResponse.ErrorObject ? (errorObject['code'] extends DisconnectedError['code'] ? DisconnectedError : never) | (IsNarrowable<errorObject['code'], number> extends false ? DisconnectedError : never) | (errorObject['code'] extends ChainDisconnectedError['code'] ? ChainDisconnectedError : never) | (IsNarrowable<errorObject['code'], number> extends false ? ChainDisconnectedError : never) | (errorObject['code'] extends UserRejectedRequestError['code'] ? UserRejectedRequestError : never) | (IsNarrowable<errorObject['code'], number> extends false ? UserRejectedRequestError : never) | (errorObject['code'] extends UnauthorizedError['code'] ? UnauthorizedError : never) | (IsNarrowable<errorObject['code'], number> extends false ? UnauthorizedError : never) | (errorObject['code'] extends UnsupportedMethodError['code'] ? UnsupportedMethodError : never) | (IsNarrowable<errorObject['code'], number> extends false ? UnsupportedMethodError : never) : RpcResponse.parseErrorObject.ReturnType<RpcResponse.ErrorObject>> = IsNever<error> extends true ? RpcResponse.parseErrorObject.ReturnType<errorObject> : error;
326
+ }
300
327
  /** Thrown when the provider is undefined. */
301
328
  export declare class IsUndefinedError extends Errors.BaseError {
302
329
  readonly name = "Provider.IsUndefinedError";
@@ -1 +1 @@
1
- {"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../core/Provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../core/Provider.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Errors, RpcRequest } from '../index.js';
2
- import type { Compute, IsNarrowable, OneOf, UnionPartialBy } from './internal/types.js';
2
+ import type { Compute, IsNarrowable, IsNever, OneOf, UnionPartialBy } from './internal/types.js';
3
3
  /** A JSON-RPC response object as per the [JSON-RPC 2.0 specification](https://www.jsonrpc.org/specification#request_object). */
4
4
  export type RpcResponse<result = unknown, error extends ErrorObject = ErrorObject> = Compute<{
5
5
  id: number;
@@ -178,6 +178,27 @@ export declare namespace parse {
178
178
  type ReturnType<returnType, raw extends boolean = false> = Compute<raw extends true ? RpcResponse<returnType> : returnType>;
179
179
  type ErrorType = ParseError | InvalidInputError | ResourceNotFoundError | ResourceUnavailableError | TransactionRejectedError | MethodNotSupportedError | LimitExceededError | VersionNotSupportedError | InvalidRequestError | MethodNotFoundError | InvalidParamsError | InternalError | BaseErrorType | Errors.GlobalErrorType;
180
180
  }
181
+ /**
182
+ * Parses a JSON-RPC error object into an error instance.
183
+ *
184
+ * @example
185
+ * ```ts twoslash
186
+ * import { RpcResponse } from 'ox'
187
+ *
188
+ * const error = RpcResponse.parseError({ code: -32000, message: 'unsupported method' })
189
+ *
190
+ * error
191
+ * // ^?
192
+ *
193
+ * ```
194
+ *
195
+ * @param errorObject - JSON-RPC error object.
196
+ * @returns Error instance.
197
+ */
198
+ export declare function parseErrorObject<const errorObject extends ErrorObject | unknown>(errorObject: errorObject | ErrorObject): parseErrorObject.ReturnType<errorObject>;
199
+ export declare namespace parseErrorObject {
200
+ type ReturnType<errorObject extends ErrorObject | unknown, error = errorObject extends ErrorObject ? (errorObject['code'] extends InternalError['code'] ? InternalError : never) | (IsNarrowable<errorObject['code'], number> extends false ? InternalError : never) | (errorObject['code'] extends InvalidInputError['code'] ? InvalidInputError : never) | (IsNarrowable<errorObject['code'], number> extends false ? InvalidInputError : never) | (errorObject['code'] extends ResourceNotFoundError['code'] ? ResourceNotFoundError : never) | (IsNarrowable<errorObject['code'], number> extends false ? ResourceNotFoundError : never) | (errorObject['code'] extends ResourceUnavailableError['code'] ? ResourceUnavailableError : never) | (IsNarrowable<errorObject['code'], number> extends false ? ResourceUnavailableError : never) | (errorObject['code'] extends TransactionRejectedError['code'] ? TransactionRejectedError : never) | (IsNarrowable<errorObject['code'], number> extends false ? TransactionRejectedError : never) | (errorObject['code'] extends ParseError['code'] ? ParseError : never) | (IsNarrowable<errorObject['code'], number> extends false ? ParseError : never) | (errorObject['code'] extends MethodNotSupportedError['code'] ? MethodNotSupportedError : never) | (IsNarrowable<errorObject['code'], number> extends false ? MethodNotSupportedError : never) | (errorObject['code'] extends LimitExceededError['code'] ? LimitExceededError : never) | (IsNarrowable<errorObject['code'], number> extends false ? LimitExceededError : never) | (errorObject['code'] extends VersionNotSupportedError['code'] ? VersionNotSupportedError : never) | (IsNarrowable<errorObject['code'], number> extends false ? VersionNotSupportedError : never) | (errorObject['code'] extends InvalidRequestError['code'] ? InvalidRequestError : never) | (IsNarrowable<errorObject['code'], number> extends false ? InvalidRequestError : never) | (errorObject['code'] extends MethodNotFoundError['code'] ? MethodNotFoundError : never) | (IsNarrowable<errorObject['code'], number> extends false ? MethodNotFoundError : never) | (errorObject['code'] extends InvalidParamsError['code'] ? InvalidParamsError : never) | (IsNarrowable<errorObject['code'], number> extends false ? InvalidParamsError : never) | (IsNarrowable<errorObject['code'], number> extends false ? BaseError : never) : parseErrorObject.ReturnType<ErrorObject>> = IsNever<error> extends true ? BaseError : error;
201
+ }
181
202
  export type BaseErrorType = BaseError & {
182
203
  name: 'BaseError';
183
204
  };
@@ -262,7 +283,7 @@ export declare class InvalidParamsError extends BaseError {
262
283
  export declare class InternalError extends BaseError {
263
284
  static readonly code = -32603;
264
285
  readonly code = -32603;
265
- readonly name = "RpcResponse.InternalErrorError";
286
+ readonly name = "RpcResponse.InternalError";
266
287
  constructor(parameters?: Partial<Omit<ErrorObject, 'code'>>);
267
288
  }
268
289
  /** Thrown when a JSON-RPC response is invalid. */
@@ -1 +1 @@
1
- {"version":3,"file":"RpcResponse.d.ts","sourceRoot":"","sources":["../../core/RpcResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RpcResponse.d.ts","sourceRoot":"","sources":["../../core/RpcResponse.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  /** @internal */
2
- export declare const version = "0.6.0";
2
+ export declare const version = "0.6.2";
3
3
  //# sourceMappingURL=version.d.ts.map
package/core/Provider.ts CHANGED
@@ -4,7 +4,7 @@ import * as Errors from './Errors.js'
4
4
  import * as RpcResponse from './RpcResponse.js'
5
5
  import type * as RpcSchema from './RpcSchema.js'
6
6
  import type * as RpcSchema_internal from './internal/rpcSchema.js'
7
- import type { Compute } from './internal/types.js'
7
+ import type { Compute, IsNarrowable, IsNever } from './internal/types.js'
8
8
 
9
9
  /** Options for a {@link ox#Provider.Provider}. */
10
10
  export type Options = {
@@ -92,6 +92,7 @@ export type EventMap = {
92
92
  /** The user rejected the request. */
93
93
  export class UserRejectedRequestError extends ProviderRpcError {
94
94
  static readonly code = 4001
95
+ override readonly code = 4001
95
96
  override readonly name = 'Provider.UserRejectedRequestError'
96
97
 
97
98
  constructor({
@@ -104,6 +105,7 @@ export class UserRejectedRequestError extends ProviderRpcError {
104
105
  /** The requested method and/or account has not been authorized by the user. */
105
106
  export class UnauthorizedError extends ProviderRpcError {
106
107
  static readonly code = 4100
108
+ override readonly code = 4100
107
109
  override readonly name = 'Provider.UnauthorizedError'
108
110
 
109
111
  constructor({
@@ -116,6 +118,7 @@ export class UnauthorizedError extends ProviderRpcError {
116
118
  /** The provider does not support the requested method. */
117
119
  export class UnsupportedMethodError extends ProviderRpcError {
118
120
  static readonly code = 4200
121
+ override readonly code = 4200
119
122
  override readonly name = 'Provider.UnsupportedMethodError'
120
123
 
121
124
  constructor({
@@ -128,6 +131,7 @@ export class UnsupportedMethodError extends ProviderRpcError {
128
131
  /** The provider is disconnected from all chains. */
129
132
  export class DisconnectedError extends ProviderRpcError {
130
133
  static readonly code = 4900
134
+ override readonly code = 4900
131
135
  override readonly name = 'Provider.DisconnectedError'
132
136
 
133
137
  constructor({
@@ -140,6 +144,7 @@ export class DisconnectedError extends ProviderRpcError {
140
144
  /** The provider is not connected to the requested chain. */
141
145
  export class ChainDisconnectedError extends ProviderRpcError {
142
146
  static readonly code = 4901
147
+ override readonly code = 4901
143
148
  override readonly name = 'Provider.ChainDisconnectedError'
144
149
 
145
150
  constructor({
@@ -385,14 +390,18 @@ export function from(provider: any, options: Options = {}): Provider<Options> {
385
390
  }
386
391
  : {}),
387
392
  async request(args) {
388
- const result = await provider.request(args)
389
- if (
390
- result &&
391
- typeof result === 'object' &&
392
- 'jsonrpc' in (result as { jsonrpc?: unknown })
393
- )
394
- return RpcResponse.parse(result) as never
395
- return result
393
+ try {
394
+ const result = await provider.request(args)
395
+ if (
396
+ result &&
397
+ typeof result === 'object' &&
398
+ 'jsonrpc' in (result as { jsonrpc?: unknown })
399
+ )
400
+ return RpcResponse.parse(result) as never
401
+ return result
402
+ } catch (error) {
403
+ throw parseErrorObject(error)
404
+ }
396
405
  },
397
406
  }
398
407
  }
@@ -401,6 +410,92 @@ export declare namespace from {
401
410
  type ErrorType = IsUndefinedError | Errors.GlobalErrorType
402
411
  }
403
412
 
413
+ /**
414
+ * Parses an error object into an error instance.
415
+ *
416
+ * @example
417
+ * ```ts twoslash
418
+ * import { Provider } from 'ox'
419
+ *
420
+ * const error = Provider.parseErrorObject({ code: 4200, message: 'foo' })
421
+ *
422
+ * error
423
+ * // ^?
424
+ *
425
+ * ```
426
+ *
427
+ * @param errorObject - The error object to parse.
428
+ * @returns An error instance.
429
+ */
430
+ export function parseErrorObject<
431
+ const errorObject extends RpcResponse.ErrorObject | unknown,
432
+ >(
433
+ errorObject: errorObject | RpcResponse.ErrorObject,
434
+ ): parseErrorObject.ReturnType<errorObject> {
435
+ const errorObject_ = errorObject as RpcResponse.ErrorObject
436
+ const error = RpcResponse.parseErrorObject(errorObject_)
437
+ if (error instanceof RpcResponse.InternalError) {
438
+ const { code } = error.data as RpcResponse.ErrorObject
439
+ if (code === DisconnectedError.code)
440
+ return new DisconnectedError(errorObject_) as never
441
+ if (code === ChainDisconnectedError.code)
442
+ return new ChainDisconnectedError(errorObject_) as never
443
+ if (code === UserRejectedRequestError.code)
444
+ return new UserRejectedRequestError(errorObject_) as never
445
+ if (code === UnauthorizedError.code)
446
+ return new UnauthorizedError(errorObject_) as never
447
+ if (code === UnsupportedMethodError.code)
448
+ return new UnsupportedMethodError(errorObject_) as never
449
+ return new RpcResponse.InternalError({
450
+ data: errorObject_,
451
+ message: errorObject_.message,
452
+ }) as never
453
+ }
454
+ return error as never
455
+ }
456
+
457
+ export declare namespace parseErrorObject {
458
+ type ReturnType<
459
+ errorObject extends RpcResponse.ErrorObject | unknown,
460
+ //
461
+ error = errorObject extends RpcResponse.ErrorObject
462
+ ?
463
+ | (errorObject['code'] extends DisconnectedError['code']
464
+ ? DisconnectedError
465
+ : never)
466
+ | (IsNarrowable<errorObject['code'], number> extends false
467
+ ? DisconnectedError
468
+ : never)
469
+ | (errorObject['code'] extends ChainDisconnectedError['code']
470
+ ? ChainDisconnectedError
471
+ : never)
472
+ | (IsNarrowable<errorObject['code'], number> extends false
473
+ ? ChainDisconnectedError
474
+ : never)
475
+ | (errorObject['code'] extends UserRejectedRequestError['code']
476
+ ? UserRejectedRequestError
477
+ : never)
478
+ | (IsNarrowable<errorObject['code'], number> extends false
479
+ ? UserRejectedRequestError
480
+ : never)
481
+ | (errorObject['code'] extends UnauthorizedError['code']
482
+ ? UnauthorizedError
483
+ : never)
484
+ | (IsNarrowable<errorObject['code'], number> extends false
485
+ ? UnauthorizedError
486
+ : never)
487
+ | (errorObject['code'] extends UnsupportedMethodError['code']
488
+ ? UnsupportedMethodError
489
+ : never)
490
+ | (IsNarrowable<errorObject['code'], number> extends false
491
+ ? UnsupportedMethodError
492
+ : never)
493
+ : RpcResponse.parseErrorObject.ReturnType<RpcResponse.ErrorObject>,
494
+ > = IsNever<error> extends true
495
+ ? RpcResponse.parseErrorObject.ReturnType<errorObject>
496
+ : error
497
+ }
498
+
404
499
  /** Thrown when the provider is undefined. */
405
500
  export class IsUndefinedError extends Errors.BaseError {
406
501
  override readonly name = 'Provider.IsUndefinedError'
@@ -2,6 +2,7 @@ import type { Errors, RpcRequest } from '../index.js'
2
2
  import type {
3
3
  Compute,
4
4
  IsNarrowable,
5
+ IsNever,
5
6
  OneOf,
6
7
  UnionPartialBy,
7
8
  } from './internal/types.js'
@@ -215,28 +216,7 @@ export function parse<
215
216
  const { raw = false } = options
216
217
  const response_ = response as RpcResponse
217
218
  if (raw) return response as never
218
- if (response_.error) {
219
- const { code } = response_.error
220
- const JsonRpcError = (() => {
221
- if (code === InternalError.code) return InternalError
222
- if (code === InvalidInputError.code) return InvalidInputError
223
- if (code === InvalidParamsError.code) return InvalidParamsError
224
- if (code === InvalidRequestError.code) return InvalidRequestError
225
- if (code === LimitExceededError.code) return LimitExceededError
226
- if (code === MethodNotFoundError.code) return MethodNotFoundError
227
- if (code === MethodNotSupportedError.code) return MethodNotSupportedError
228
- if (code === ParseError.code) return ParseError
229
- if (code === ResourceNotFoundError.code) return ResourceNotFoundError
230
- if (code === ResourceUnavailableError.code)
231
- return ResourceUnavailableError
232
- if (code === TransactionRejectedError.code)
233
- return TransactionRejectedError
234
- if (code === VersionNotSupportedError.code)
235
- return VersionNotSupportedError
236
- return BaseError
237
- })()
238
- throw new JsonRpcError(response_.error)
239
- }
219
+ if (response_.error) throw parseErrorObject(response_.error)
240
220
  return response_.result as never
241
221
  }
242
222
 
@@ -283,6 +263,144 @@ export declare namespace parse {
283
263
  | Errors.GlobalErrorType
284
264
  }
285
265
 
266
+ /**
267
+ * Parses a JSON-RPC error object into an error instance.
268
+ *
269
+ * @example
270
+ * ```ts twoslash
271
+ * import { RpcResponse } from 'ox'
272
+ *
273
+ * const error = RpcResponse.parseError({ code: -32000, message: 'unsupported method' })
274
+ *
275
+ * error
276
+ * // ^?
277
+ *
278
+ * ```
279
+ *
280
+ * @param errorObject - JSON-RPC error object.
281
+ * @returns Error instance.
282
+ */
283
+ export function parseErrorObject<
284
+ const errorObject extends ErrorObject | unknown,
285
+ >(
286
+ errorObject: errorObject | ErrorObject,
287
+ ): parseErrorObject.ReturnType<errorObject> {
288
+ const errorObject_ = errorObject as ErrorObject
289
+ const { code } = errorObject_
290
+ if (code === InternalError.code)
291
+ return new InternalError(errorObject_) as never
292
+ if (code === InvalidInputError.code)
293
+ return new InvalidInputError(errorObject_) as never
294
+ if (code === InvalidParamsError.code)
295
+ return new InvalidParamsError(errorObject_) as never
296
+ if (code === InvalidRequestError.code)
297
+ return new InvalidRequestError(errorObject_) as never
298
+ if (code === LimitExceededError.code)
299
+ return new LimitExceededError(errorObject_) as never
300
+ if (code === MethodNotFoundError.code)
301
+ return new MethodNotFoundError(errorObject_) as never
302
+ if (code === MethodNotSupportedError.code)
303
+ return new MethodNotSupportedError(errorObject_) as never
304
+ if (code === ParseError.code) return new ParseError(errorObject_) as never
305
+ if (code === ResourceNotFoundError.code)
306
+ return new ResourceNotFoundError(errorObject_) as never
307
+ if (code === ResourceUnavailableError.code)
308
+ return new ResourceUnavailableError(errorObject_) as never
309
+ if (code === TransactionRejectedError.code)
310
+ return new TransactionRejectedError(errorObject_) as never
311
+ if (code === VersionNotSupportedError.code)
312
+ return new VersionNotSupportedError(errorObject_) as never
313
+ return new InternalError({
314
+ data: errorObject_,
315
+ message: errorObject_.message,
316
+ }) as never
317
+ }
318
+
319
+ export declare namespace parseErrorObject {
320
+ type ReturnType<
321
+ errorObject extends ErrorObject | unknown,
322
+ //
323
+ error = errorObject extends ErrorObject
324
+ ?
325
+ | (errorObject['code'] extends InternalError['code']
326
+ ? InternalError
327
+ : never)
328
+ | (IsNarrowable<errorObject['code'], number> extends false
329
+ ? InternalError
330
+ : never)
331
+ | (errorObject['code'] extends InvalidInputError['code']
332
+ ? InvalidInputError
333
+ : never)
334
+ | (IsNarrowable<errorObject['code'], number> extends false
335
+ ? InvalidInputError
336
+ : never)
337
+ | (errorObject['code'] extends ResourceNotFoundError['code']
338
+ ? ResourceNotFoundError
339
+ : never)
340
+ | (IsNarrowable<errorObject['code'], number> extends false
341
+ ? ResourceNotFoundError
342
+ : never)
343
+ | (errorObject['code'] extends ResourceUnavailableError['code']
344
+ ? ResourceUnavailableError
345
+ : never)
346
+ | (IsNarrowable<errorObject['code'], number> extends false
347
+ ? ResourceUnavailableError
348
+ : never)
349
+ | (errorObject['code'] extends TransactionRejectedError['code']
350
+ ? TransactionRejectedError
351
+ : never)
352
+ | (IsNarrowable<errorObject['code'], number> extends false
353
+ ? TransactionRejectedError
354
+ : never)
355
+ | (errorObject['code'] extends ParseError['code']
356
+ ? ParseError
357
+ : never)
358
+ | (IsNarrowable<errorObject['code'], number> extends false
359
+ ? ParseError
360
+ : never)
361
+ | (errorObject['code'] extends MethodNotSupportedError['code']
362
+ ? MethodNotSupportedError
363
+ : never)
364
+ | (IsNarrowable<errorObject['code'], number> extends false
365
+ ? MethodNotSupportedError
366
+ : never)
367
+ | (errorObject['code'] extends LimitExceededError['code']
368
+ ? LimitExceededError
369
+ : never)
370
+ | (IsNarrowable<errorObject['code'], number> extends false
371
+ ? LimitExceededError
372
+ : never)
373
+ | (errorObject['code'] extends VersionNotSupportedError['code']
374
+ ? VersionNotSupportedError
375
+ : never)
376
+ | (IsNarrowable<errorObject['code'], number> extends false
377
+ ? VersionNotSupportedError
378
+ : never)
379
+ | (errorObject['code'] extends InvalidRequestError['code']
380
+ ? InvalidRequestError
381
+ : never)
382
+ | (IsNarrowable<errorObject['code'], number> extends false
383
+ ? InvalidRequestError
384
+ : never)
385
+ | (errorObject['code'] extends MethodNotFoundError['code']
386
+ ? MethodNotFoundError
387
+ : never)
388
+ | (IsNarrowable<errorObject['code'], number> extends false
389
+ ? MethodNotFoundError
390
+ : never)
391
+ | (errorObject['code'] extends InvalidParamsError['code']
392
+ ? InvalidParamsError
393
+ : never)
394
+ | (IsNarrowable<errorObject['code'], number> extends false
395
+ ? InvalidParamsError
396
+ : never)
397
+ | (IsNarrowable<errorObject['code'], number> extends false
398
+ ? BaseError
399
+ : never)
400
+ : parseErrorObject.ReturnType<ErrorObject>,
401
+ > = IsNever<error> extends true ? BaseError : error
402
+ }
403
+
286
404
  export type BaseErrorType = BaseError & { name: 'BaseError' }
287
405
 
288
406
  /** Thrown when a JSON-RPC error has occurred. */
@@ -454,7 +572,7 @@ export class InvalidParamsError extends BaseError {
454
572
  export class InternalError extends BaseError {
455
573
  static readonly code = -32603
456
574
  override readonly code = -32603
457
- override readonly name = 'RpcResponse.InternalErrorError'
575
+ override readonly name = 'RpcResponse.InternalError'
458
576
 
459
577
  constructor(parameters: Partial<Omit<ErrorObject, 'code'>> = {}) {
460
578
  super({
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ox",
3
3
  "description": "Ethereum Standard Library",
4
- "version": "0.6.0",
4
+ "version": "0.6.2",
5
5
  "main": "./_cjs/index.js",
6
6
  "module": "./_esm/index.js",
7
7
  "types": "./_types/index.d.ts",
package/version.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  /** @internal */
2
- export const version = '0.6.0'
2
+ export const version = '0.6.2'