viem 0.0.0-main.20240331T211425 → 0.0.0-main.20240331T214129

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.
@@ -7,7 +7,7 @@ const createBatchScheduler_js_1 = require("../../utils/promise/createBatchSchedu
7
7
  const http_js_1 = require("../../utils/rpc/http.js");
8
8
  const createTransport_js_1 = require("./createTransport.js");
9
9
  function http(url, config = {}) {
10
- const { batch, fetchOptions, key = 'http', name = 'HTTP JSON-RPC', onFetchResponse, retryDelay, } = config;
10
+ const { batch, fetchOptions, key = 'http', name = 'HTTP JSON-RPC', onFetchRequest, onFetchResponse, retryDelay, } = config;
11
11
  return ({ chain, retryCount: retryCount_, timeout: timeout_ }) => {
12
12
  const { batchSize = 1000, wait = 0 } = typeof batch === 'object' ? batch : {};
13
13
  const retryCount = config.retryCount ?? retryCount_;
@@ -17,6 +17,7 @@ function http(url, config = {}) {
17
17
  throw new transport_js_1.UrlRequiredError();
18
18
  const rpcClient = (0, http_js_1.getHttpRpcClient)(url_, {
19
19
  fetchOptions,
20
+ onRequest: onFetchRequest,
20
21
  onResponse: onFetchResponse,
21
22
  timeout,
22
23
  });
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../clients/transports/http.ts"],"names":[],"mappings":";;;AAAA,wDAAyD;AACzD,4DAGkC;AAGlC,yFAAkF;AAClF,qDAGgC;AAEhC,6DAK6B;AAoD7B,SAAgB,IAAI,CAElB,GAAwB,EACxB,SAA8B,EAAE;IAEhC,MAAM,EACJ,KAAK,EACL,YAAY,EACZ,GAAG,GAAG,MAAM,EACZ,IAAI,GAAG,eAAe,EACtB,eAAe,EACf,UAAU,GACX,GAAG,MAAM,CAAA;IACV,OAAO,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC/D,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,GAClC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,WAAW,CAAA;QACnD,MAAM,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAA;QACpD,MAAM,IAAI,GAAG,GAAG,IAAI,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,+BAAgB,EAAE,CAAA;QAEvC,MAAM,SAAS,GAAG,IAAA,0BAAgB,EAAC,IAAI,EAAE;YACvC,YAAY;YACZ,UAAU,EAAE,eAAe;YAC3B,OAAO;SACR,CAAC,CAAA;QAEF,OAAO,IAAA,oCAAe,EACpB;YACE,GAAG;YACH,IAAI;YACJ,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;gBAC9B,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;gBAE/B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,8CAAoB,EAAC;oBACxC,EAAE,EAAE,GAAG,GAAG,EAAE;oBACZ,IAAI;oBACJ,gBAAgB,CAAC,QAAQ;wBACvB,OAAO,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAA;oBACpC,CAAC;oBACD,EAAE,EAAE,CAAC,IAAkB,EAAE,EAAE,CACzB,SAAS,CAAC,OAAO,CAAC;wBAChB,IAAI;qBACL,CAAC;oBACJ,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;iBAC5B,CAAC,CAAA;gBAEF,MAAM,EAAE,GAAG,KAAK,EAAE,IAAgB,EAAE,EAAE,CACpC,KAAK;oBACH,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAChB,CAAC,CAAC;wBACE,MAAM,SAAS,CAAC,OAAO,CAAC;4BACtB,IAAI;yBACL,CAAC;qBACH,CAAA;gBAEP,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAA;gBAC1C,IAAI,KAAK;oBACP,MAAM,IAAI,4BAAe,CAAC;wBACxB,IAAI;wBACJ,KAAK;wBACL,GAAG,EAAE,IAAI;qBACV,CAAC,CAAA;gBACJ,OAAO,MAAM,CAAA;YACf,CAAC;YACD,UAAU;YACV,UAAU;YACV,OAAO;YACP,IAAI,EAAE,MAAM;SACb,EACD;YACE,YAAY;YACZ,GAAG,EAAE,IAAI;SACV,CACF,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AA5ED,oBA4EC"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../clients/transports/http.ts"],"names":[],"mappings":";;;AAAA,wDAAyD;AACzD,4DAGkC;AAGlC,yFAAkF;AAClF,qDAGgC;AAEhC,6DAK6B;AAoD7B,SAAgB,IAAI,CAElB,GAAwB,EACxB,SAA8B,EAAE;IAEhC,MAAM,EACJ,KAAK,EACL,YAAY,EACZ,GAAG,GAAG,MAAM,EACZ,IAAI,GAAG,eAAe,EACtB,cAAc,EACd,eAAe,EACf,UAAU,GACX,GAAG,MAAM,CAAA;IACV,OAAO,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC/D,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,GAClC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,WAAW,CAAA;QACnD,MAAM,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAA;QACpD,MAAM,IAAI,GAAG,GAAG,IAAI,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,+BAAgB,EAAE,CAAA;QAEvC,MAAM,SAAS,GAAG,IAAA,0BAAgB,EAAC,IAAI,EAAE;YACvC,YAAY;YACZ,SAAS,EAAE,cAAc;YACzB,UAAU,EAAE,eAAe;YAC3B,OAAO;SACR,CAAC,CAAA;QAEF,OAAO,IAAA,oCAAe,EACpB;YACE,GAAG;YACH,IAAI;YACJ,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;gBAC9B,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;gBAE/B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,8CAAoB,EAAC;oBACxC,EAAE,EAAE,GAAG,GAAG,EAAE;oBACZ,IAAI;oBACJ,gBAAgB,CAAC,QAAQ;wBACvB,OAAO,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAA;oBACpC,CAAC;oBACD,EAAE,EAAE,CAAC,IAAkB,EAAE,EAAE,CACzB,SAAS,CAAC,OAAO,CAAC;wBAChB,IAAI;qBACL,CAAC;oBACJ,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;iBAC5B,CAAC,CAAA;gBAEF,MAAM,EAAE,GAAG,KAAK,EAAE,IAAgB,EAAE,EAAE,CACpC,KAAK;oBACH,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAChB,CAAC,CAAC;wBACE,MAAM,SAAS,CAAC,OAAO,CAAC;4BACtB,IAAI;yBACL,CAAC;qBACH,CAAA;gBAEP,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAA;gBAC1C,IAAI,KAAK;oBACP,MAAM,IAAI,4BAAe,CAAC;wBACxB,IAAI;wBACJ,KAAK;wBACL,GAAG,EAAE,IAAI;qBACV,CAAC,CAAA;gBACJ,OAAO,MAAM,CAAA;YACf,CAAC;YACD,UAAU;YACV,UAAU;YACV,OAAO;YACP,IAAI,EAAE,MAAM;SACb,EACD;YACE,YAAY;YACZ,GAAG,EAAE,IAAI;SACV,CACF,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AA9ED,oBA8EC"}
@@ -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.0.0-main.20240331T211425';
4
+ exports.version = '0.0.0-main.20240331T214129';
5
5
  //# sourceMappingURL=version.js.map
@@ -23,7 +23,7 @@ function checksumAddress(address_, chainId) {
23
23
  }
24
24
  exports.checksumAddress = checksumAddress;
25
25
  function getAddress(address, chainId) {
26
- if (!(0, isAddress_js_1.isAddress)(address))
26
+ if (!(0, isAddress_js_1.isAddress)(address, { strict: false }))
27
27
  throw new address_js_1.InvalidAddressError({ address });
28
28
  return checksumAddress(address, chainId);
29
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getAddress.js","sourceRoot":"","sources":["../../../utils/address/getAddress.ts"],"names":[],"mappings":";;;AAEA,wDAA6D;AAE7D,uDAG+B;AAC/B,uDAAyE;AACzE,iDAAmE;AAOnE,SAAgB,eAAe,CAC7B,QAAiB,EACjB,OAA4B;IAE5B,MAAM,UAAU,GAAG,OAAO;QACxB,CAAC,CAAC,GAAG,OAAO,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE;QACvC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;IACvC,MAAM,IAAI,GAAG,IAAA,wBAAS,EAAC,IAAA,0BAAa,EAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAA;IAE1D,MAAM,OAAO,GAAG,CACd,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CACnE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACvC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACjD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAA;AAChC,CAAC;AAtBD,0CAsBC;AAOD,SAAgB,UAAU,CAAC,OAAe,EAAE,OAAgB;IAC1D,IAAI,CAAC,IAAA,wBAAS,EAAC,OAAO,CAAC;QAAE,MAAM,IAAI,gCAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IACnE,OAAO,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AAC1C,CAAC;AAHD,gCAGC"}
1
+ {"version":3,"file":"getAddress.js","sourceRoot":"","sources":["../../../utils/address/getAddress.ts"],"names":[],"mappings":";;;AAEA,wDAA6D;AAE7D,uDAG+B;AAC/B,uDAAyE;AACzE,iDAAmE;AAOnE,SAAgB,eAAe,CAC7B,QAAiB,EACjB,OAA4B;IAE5B,MAAM,UAAU,GAAG,OAAO;QACxB,CAAC,CAAC,GAAG,OAAO,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE;QACvC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;IACvC,MAAM,IAAI,GAAG,IAAA,wBAAS,EAAC,IAAA,0BAAa,EAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAA;IAE1D,MAAM,OAAO,GAAG,CACd,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CACnE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACvC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACjD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAA;AAChC,CAAC;AAtBD,0CAsBC;AAOD,SAAgB,UAAU,CAAC,OAAe,EAAE,OAAgB;IAC1D,IAAI,CAAC,IAAA,wBAAS,EAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QACxC,MAAM,IAAI,gCAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAC5C,OAAO,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AAC1C,CAAC;AAJD,gCAIC"}
@@ -5,7 +5,8 @@ const lru_js_1 = require("../lru.js");
5
5
  const getAddress_js_1 = require("./getAddress.js");
6
6
  const addressRegex = /^0x[a-fA-F0-9]{40}$/;
7
7
  exports.isAddressCache = new lru_js_1.LruMap(8192);
8
- function isAddress(address, { strict = true } = {}) {
8
+ function isAddress(address, options) {
9
+ const { strict = true } = options ?? {};
9
10
  if (exports.isAddressCache.has(address))
10
11
  return exports.isAddressCache.get(address);
11
12
  const result = (() => {
@@ -1 +1 @@
1
- {"version":3,"file":"isAddress.js","sourceRoot":"","sources":["../../../utils/address/isAddress.ts"],"names":[],"mappings":";;;AAEA,sCAAkC;AAClC,mDAAiD;AAEjD,MAAM,YAAY,GAAG,qBAAqB,CAAA;AAE7B,QAAA,cAAc,GAAiB,IAAI,eAAM,CAAU,IAAI,CAAC,CAAA;AAarE,SAAgB,SAAS,CACvB,OAAe,EACf,EAAE,MAAM,GAAG,IAAI,KAAuB,EAAE;IAExC,IAAI,sBAAc,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,sBAAc,CAAC,GAAG,CAAC,OAAO,CAAE,CAAA;IAEpE,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAA;QAC7C,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO;YAAE,OAAO,IAAI,CAAA;QAClD,IAAI,MAAM;YAAE,OAAO,IAAA,+BAAe,EAAC,OAAkB,CAAC,KAAK,OAAO,CAAA;QAClE,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,EAAE,CAAA;IACJ,sBAAc,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACnC,OAAO,MAAM,CAAA;AACf,CAAC;AAdD,8BAcC"}
1
+ {"version":3,"file":"isAddress.js","sourceRoot":"","sources":["../../../utils/address/isAddress.ts"],"names":[],"mappings":";;;AAEA,sCAAkC;AAClC,mDAAiD;AAEjD,MAAM,YAAY,GAAG,qBAAqB,CAAA;AAE7B,QAAA,cAAc,GAAiB,IAAI,eAAM,CAAU,IAAI,CAAC,CAAA;AAarE,SAAgB,SAAS,CACvB,OAAe,EACf,OAAsC;IAEtC,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;IAEvC,IAAI,sBAAc,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,sBAAc,CAAC,GAAG,CAAC,OAAO,CAAE,CAAA;IAEpE,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAA;QAC7C,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO;YAAE,OAAO,IAAI,CAAA;QAClD,IAAI,MAAM;YAAE,OAAO,IAAA,+BAAe,EAAC,OAAkB,CAAC,KAAK,OAAO,CAAA;QAClE,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,EAAE,CAAA;IACJ,sBAAc,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACnC,OAAO,MAAM,CAAA;AACf,CAAC;AAhBD,8BAgBC"}
@@ -8,11 +8,11 @@ const id_js_1 = require("./id.js");
8
8
  function getHttpRpcClient(url, options = {}) {
9
9
  return {
10
10
  async request(params) {
11
- const { body, fetchOptions = {}, onResponse = options.onResponse, timeout = options.timeout ?? 10_000, } = params;
11
+ const { body, fetchOptions = {}, onRequest = options.onRequest, onResponse = options.onResponse, timeout = options.timeout ?? 10_000, } = params;
12
12
  const { headers, method, signal: signal_, } = { ...options.fetchOptions, ...fetchOptions };
13
13
  try {
14
14
  const response = await (0, withTimeout_js_1.withTimeout)(async ({ signal }) => {
15
- const response = await fetch(url, {
15
+ const request = new Request(url, {
16
16
  ...fetchOptions,
17
17
  body: Array.isArray(body)
18
18
  ? (0, stringify_js_1.stringify)(body.map((body) => ({
@@ -32,6 +32,9 @@ function getHttpRpcClient(url, options = {}) {
32
32
  method: method || 'POST',
33
33
  signal: signal_ || (timeout > 0 ? signal : null),
34
34
  });
35
+ if (onRequest)
36
+ await onRequest(request);
37
+ const response = await fetch(request);
35
38
  return response;
36
39
  }, {
37
40
  errorInstance: new request_js_1.TimeoutError({ body, url }),
@@ -41,12 +44,10 @@ function getHttpRpcClient(url, options = {}) {
41
44
  if (onResponse)
42
45
  await onResponse(response);
43
46
  let data;
44
- if (response.headers.get('Content-Type')?.startsWith('application/json')) {
47
+ if (response.headers.get('Content-Type')?.startsWith('application/json'))
45
48
  data = await response.json();
46
- }
47
- else {
49
+ else
48
50
  data = await response.text();
49
- }
50
51
  if (!response.ok) {
51
52
  throw new request_js_1.HttpRequestError({
52
53
  body,
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../utils/rpc/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../utils/rpc/http.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import { createTransport, } from './createTransport.js';
9
9
  export function http(
10
10
  /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */
11
11
  url, config = {}) {
12
- const { batch, fetchOptions, key = 'http', name = 'HTTP JSON-RPC', onFetchResponse, retryDelay, } = config;
12
+ const { batch, fetchOptions, key = 'http', name = 'HTTP JSON-RPC', onFetchRequest, onFetchResponse, retryDelay, } = config;
13
13
  return ({ chain, retryCount: retryCount_, timeout: timeout_ }) => {
14
14
  const { batchSize = 1000, wait = 0 } = typeof batch === 'object' ? batch : {};
15
15
  const retryCount = config.retryCount ?? retryCount_;
@@ -19,6 +19,7 @@ url, config = {}) {
19
19
  throw new UrlRequiredError();
20
20
  const rpcClient = getHttpRpcClient(url_, {
21
21
  fetchOptions,
22
+ onRequest: onFetchRequest,
22
23
  onResponse: onFetchResponse,
23
24
  timeout,
24
25
  });
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../clients/transports/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EACL,gBAAgB,GAEjB,MAAM,2BAA2B,CAAA;AAGlC,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAA;AAClF,OAAO,EAEL,gBAAgB,GACjB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EAIL,eAAe,GAChB,MAAM,sBAAsB,CAAA;AAiD7B;;GAEG;AACH,MAAM,UAAU,IAAI;AAClB,uEAAuE;AACvE,GAAwB,EACxB,SAA8B,EAAE;IAEhC,MAAM,EACJ,KAAK,EACL,YAAY,EACZ,GAAG,GAAG,MAAM,EACZ,IAAI,GAAG,eAAe,EACtB,eAAe,EACf,UAAU,GACX,GAAG,MAAM,CAAA;IACV,OAAO,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC/D,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,GAClC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,WAAW,CAAA;QACnD,MAAM,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAA;QACpD,MAAM,IAAI,GAAG,GAAG,IAAI,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,gBAAgB,EAAE,CAAA;QAEvC,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,EAAE;YACvC,YAAY;YACZ,UAAU,EAAE,eAAe;YAC3B,OAAO;SACR,CAAC,CAAA;QAEF,OAAO,eAAe,CACpB;YACE,GAAG;YACH,IAAI;YACJ,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;gBAC9B,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;gBAE/B,MAAM,EAAE,QAAQ,EAAE,GAAG,oBAAoB,CAAC;oBACxC,EAAE,EAAE,GAAG,GAAG,EAAE;oBACZ,IAAI;oBACJ,gBAAgB,CAAC,QAAQ;wBACvB,OAAO,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAA;oBACpC,CAAC;oBACD,EAAE,EAAE,CAAC,IAAkB,EAAE,EAAE,CACzB,SAAS,CAAC,OAAO,CAAC;wBAChB,IAAI;qBACL,CAAC;oBACJ,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;iBAC5B,CAAC,CAAA;gBAEF,MAAM,EAAE,GAAG,KAAK,EAAE,IAAgB,EAAE,EAAE,CACpC,KAAK;oBACH,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAChB,CAAC,CAAC;wBACE,MAAM,SAAS,CAAC,OAAO,CAAC;4BACtB,IAAI;yBACL,CAAC;qBACH,CAAA;gBAEP,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAA;gBAC1C,IAAI,KAAK;oBACP,MAAM,IAAI,eAAe,CAAC;wBACxB,IAAI;wBACJ,KAAK;wBACL,GAAG,EAAE,IAAI;qBACV,CAAC,CAAA;gBACJ,OAAO,MAAM,CAAA;YACf,CAAC;YACD,UAAU;YACV,UAAU;YACV,OAAO;YACP,IAAI,EAAE,MAAM;SACb,EACD;YACE,YAAY;YACZ,GAAG,EAAE,IAAI;SACV,CACF,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../clients/transports/http.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export const version = '0.0.0-main.20240331T211425';
1
+ export const version = '0.0.0-main.20240331T214129';
2
2
  //# sourceMappingURL=version.js.map
@@ -19,7 +19,7 @@ export function checksumAddress(address_, chainId) {
19
19
  return `0x${address.join('')}`;
20
20
  }
21
21
  export function getAddress(address, chainId) {
22
- if (!isAddress(address))
22
+ if (!isAddress(address, { strict: false }))
23
23
  throw new InvalidAddressError({ address });
24
24
  return checksumAddress(address, chainId);
25
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getAddress.js","sourceRoot":"","sources":["../../../utils/address/getAddress.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAE7D,OAAO,EAEL,aAAa,GACd,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAA2B,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACzE,OAAO,EAA2B,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAOnE,MAAM,UAAU,eAAe,CAC7B,QAAiB,EACjB,OAA4B;IAE5B,MAAM,UAAU,GAAG,OAAO;QACxB,CAAC,CAAC,GAAG,OAAO,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE;QACvC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;IACvC,MAAM,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAA;IAE1D,MAAM,OAAO,GAAG,CACd,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CACnE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACvC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACjD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAA;AAChC,CAAC;AAOD,MAAM,UAAU,UAAU,CAAC,OAAe,EAAE,OAAgB;IAC1D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IACnE,OAAO,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AAC1C,CAAC"}
1
+ {"version":3,"file":"getAddress.js","sourceRoot":"","sources":["../../../utils/address/getAddress.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAE7D,OAAO,EAEL,aAAa,GACd,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAA2B,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACzE,OAAO,EAA2B,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAOnE,MAAM,UAAU,eAAe,CAC7B,QAAiB,EACjB,OAA4B;IAE5B,MAAM,UAAU,GAAG,OAAO;QACxB,CAAC,CAAC,GAAG,OAAO,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE;QACvC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;IACvC,MAAM,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAA;IAE1D,MAAM,OAAO,GAAG,CACd,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CACnE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACvC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACjD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAA;AAChC,CAAC;AAOD,MAAM,UAAU,UAAU,CAAC,OAAe,EAAE,OAAgB;IAC1D,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QACxC,MAAM,IAAI,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAC5C,OAAO,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AAC1C,CAAC"}
@@ -2,7 +2,8 @@ import { LruMap } from '../lru.js';
2
2
  import { checksumAddress } from './getAddress.js';
3
3
  const addressRegex = /^0x[a-fA-F0-9]{40}$/;
4
4
  export const isAddressCache = /*#__PURE__*/ new LruMap(8192);
5
- export function isAddress(address, { strict = true } = {}) {
5
+ export function isAddress(address, options) {
6
+ const { strict = true } = options ?? {};
6
7
  if (isAddressCache.has(address))
7
8
  return isAddressCache.get(address);
8
9
  const result = (() => {
@@ -1 +1 @@
1
- {"version":3,"file":"isAddress.js","sourceRoot":"","sources":["../../../utils/address/isAddress.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,MAAM,YAAY,GAAG,qBAAqB,CAAA;AAE1C,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,MAAM,CAAU,IAAI,CAAC,CAAA;AAarE,MAAM,UAAU,SAAS,CACvB,OAAe,EACf,EAAE,MAAM,GAAG,IAAI,KAAuB,EAAE;IAExC,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,cAAc,CAAC,GAAG,CAAC,OAAO,CAAE,CAAA;IAEpE,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAA;QAC7C,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO;YAAE,OAAO,IAAI,CAAA;QAClD,IAAI,MAAM;YAAE,OAAO,eAAe,CAAC,OAAkB,CAAC,KAAK,OAAO,CAAA;QAClE,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,EAAE,CAAA;IACJ,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACnC,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"isAddress.js","sourceRoot":"","sources":["../../../utils/address/isAddress.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,MAAM,YAAY,GAAG,qBAAqB,CAAA;AAE1C,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,MAAM,CAAU,IAAI,CAAC,CAAA;AAarE,MAAM,UAAU,SAAS,CACvB,OAAe,EACf,OAAsC;IAEtC,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;IAEvC,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,cAAc,CAAC,GAAG,CAAC,OAAO,CAAE,CAAA;IAEpE,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAA;QAC7C,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO;YAAE,OAAO,IAAI,CAAA;QAClD,IAAI,MAAM;YAAE,OAAO,eAAe,CAAC,OAAkB,CAAC,KAAK,OAAO,CAAA;QAClE,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,EAAE,CAAA;IACJ,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACnC,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -5,11 +5,11 @@ import { idCache } from './id.js';
5
5
  export function getHttpRpcClient(url, options = {}) {
6
6
  return {
7
7
  async request(params) {
8
- const { body, fetchOptions = {}, onResponse = options.onResponse, timeout = options.timeout ?? 10_000, } = params;
8
+ const { body, fetchOptions = {}, onRequest = options.onRequest, onResponse = options.onResponse, timeout = options.timeout ?? 10_000, } = params;
9
9
  const { headers, method, signal: signal_, } = { ...options.fetchOptions, ...fetchOptions };
10
10
  try {
11
11
  const response = await withTimeout(async ({ signal }) => {
12
- const response = await fetch(url, {
12
+ const request = new Request(url, {
13
13
  ...fetchOptions,
14
14
  body: Array.isArray(body)
15
15
  ? stringify(body.map((body) => ({
@@ -29,6 +29,9 @@ export function getHttpRpcClient(url, options = {}) {
29
29
  method: method || 'POST',
30
30
  signal: signal_ || (timeout > 0 ? signal : null),
31
31
  });
32
+ if (onRequest)
33
+ await onRequest(request);
34
+ const response = await fetch(request);
32
35
  return response;
33
36
  }, {
34
37
  errorInstance: new TimeoutError({ body, url }),
@@ -38,12 +41,10 @@ export function getHttpRpcClient(url, options = {}) {
38
41
  if (onResponse)
39
42
  await onResponse(response);
40
43
  let data;
41
- if (response.headers.get('Content-Type')?.startsWith('application/json')) {
44
+ if (response.headers.get('Content-Type')?.startsWith('application/json'))
42
45
  data = await response.json();
43
- }
44
- else {
46
+ else
45
47
  data = await response.text();
46
- }
47
48
  if (!response.ok) {
48
49
  throw new HttpRequestError({
49
50
  body,
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../utils/rpc/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../utils/rpc/http.ts"],"names":[],"mappings":"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"}
@@ -19,9 +19,9 @@ export type HttpTransportConfig = {
19
19
  * @link https://developer.mozilla.org/en-US/docs/Web/API/fetch
20
20
  */
21
21
  fetchOptions?: HttpRpcClientOptions['fetchOptions'] | undefined;
22
- /**
23
- * A callback to handle the response from `fetch`.
24
- */
22
+ /** A callback to handle the response from `fetch`. */
23
+ onFetchRequest?: HttpRpcClientOptions['onRequest'] | undefined;
24
+ /** A callback to handle the response from `fetch`. */
25
25
  onFetchResponse?: HttpRpcClientOptions['onResponse'] | undefined;
26
26
  /** The key of the HTTP transport. */
27
27
  key?: TransportConfig['key'] | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../clients/transports/http.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGtD,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,SAAS,EACd,KAAK,eAAe,EAErB,MAAM,sBAAsB,CAAA;AAE7B,MAAM,MAAM,YAAY,GAAG;IACzB,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,oFAAoF;IACpF,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,SAAS,CAAA;IAC1C;;;OAGG;IACH,YAAY,CAAC,EAAE,oBAAoB,CAAC,cAAc,CAAC,GAAG,SAAS,CAAA;IAC/D;;OAEG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IAChE,qCAAqC;IACrC,GAAG,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,SAAS,CAAA;IACxC,sCAAsC;IACtC,IAAI,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAC1C,wCAAwC;IACxC,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACtD,8CAA8C;IAC9C,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACtD,gEAAgE;IAChE,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,GAAG,SAAS,CAAA;CACjD,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,SAAS,CACnC,MAAM,EACN;IACE,YAAY,CAAC,EAAE,mBAAmB,CAAC,cAAc,CAAC,GAAG,SAAS,CAAA;IAC9D,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB,CACF,CAAA;AAED,MAAM,MAAM,sBAAsB,GAC9B,wBAAwB,GACxB,oBAAoB,GACpB,SAAS,CAAA;AAEb;;GAEG;AACH,wBAAgB,IAAI;AAClB,uEAAuE;AACvE,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,GAAE,mBAAwB,GAC/B,aAAa,CAwEf"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../clients/transports/http.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGtD,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,SAAS,EACd,KAAK,eAAe,EAErB,MAAM,sBAAsB,CAAA;AAE7B,MAAM,MAAM,YAAY,GAAG;IACzB,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,oFAAoF;IACpF,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,SAAS,CAAA;IAC1C;;;OAGG;IACH,YAAY,CAAC,EAAE,oBAAoB,CAAC,cAAc,CAAC,GAAG,SAAS,CAAA;IAC/D,sDAAsD;IACtD,cAAc,CAAC,EAAE,oBAAoB,CAAC,WAAW,CAAC,GAAG,SAAS,CAAA;IAC9D,sDAAsD;IACtD,eAAe,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IAChE,qCAAqC;IACrC,GAAG,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,SAAS,CAAA;IACxC,sCAAsC;IACtC,IAAI,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAC1C,wCAAwC;IACxC,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACtD,8CAA8C;IAC9C,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACtD,gEAAgE;IAChE,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,GAAG,SAAS,CAAA;CACjD,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,SAAS,CACnC,MAAM,EACN;IACE,YAAY,CAAC,EAAE,mBAAmB,CAAC,cAAc,CAAC,GAAG,SAAS,CAAA;IAC9D,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB,CACF,CAAA;AAED,MAAM,MAAM,sBAAsB,GAC9B,wBAAwB,GACxB,oBAAoB,GACpB,SAAS,CAAA;AAEb;;GAEG;AACH,wBAAgB,IAAI;AAClB,uEAAuE;AACvE,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,GAAE,mBAAwB,GAC/B,aAAa,CA0Ef"}
@@ -1,2 +1,2 @@
1
- export declare const version = "0.0.0-main.20240331T211425";
1
+ export declare const version = "0.0.0-main.20240331T214129";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getAddress.d.ts","sourceRoot":"","sources":["../../../utils/address/getAddress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAGtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,sBAAsB,CAAA;AACzE,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,gBAAgB,CAAA;AAEnE,MAAM,MAAM,wBAAwB,GAChC,kBAAkB,GAClB,sBAAsB,GACtB,SAAS,CAAA;AAEb,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAmBT;AAED,MAAM,MAAM,mBAAmB,GAC3B,wBAAwB,GACxB,kBAAkB,GAClB,SAAS,CAAA;AAEb,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAGrE"}
1
+ {"version":3,"file":"getAddress.d.ts","sourceRoot":"","sources":["../../../utils/address/getAddress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAGtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,sBAAsB,CAAA;AACzE,OAAO,EAAE,KAAK,kBAAkB,EAAa,MAAM,gBAAgB,CAAA;AAEnE,MAAM,MAAM,wBAAwB,GAChC,kBAAkB,GAClB,sBAAsB,GACtB,SAAS,CAAA;AAEb,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAmBT;AAED,MAAM,MAAM,mBAAmB,GAC3B,wBAAwB,GACxB,kBAAkB,GAClB,SAAS,CAAA;AAEb,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAIrE"}
@@ -11,5 +11,5 @@ export type IsAddressOptions = {
11
11
  strict?: boolean | undefined;
12
12
  };
13
13
  export type IsAddressErrorType = ErrorType;
14
- export declare function isAddress(address: string, { strict }?: IsAddressOptions): address is Address;
14
+ export declare function isAddress(address: string, options?: IsAddressOptions | undefined): address is Address;
15
15
  //# sourceMappingURL=isAddress.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"isAddress.d.ts","sourceRoot":"","sources":["../../../utils/address/isAddress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAKlC,eAAO,MAAM,cAAc,iBAA0C,CAAA;AAErE,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,CAAA;AAE1C,wBAAgB,SAAS,CACvB,OAAO,EAAE,MAAM,EACf,EAAE,MAAa,EAAE,GAAE,gBAAqB,GACvC,OAAO,IAAI,OAAO,CAWpB"}
1
+ {"version":3,"file":"isAddress.d.ts","sourceRoot":"","sources":["../../../utils/address/isAddress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAKlC,eAAO,MAAM,cAAc,iBAA0C,CAAA;AAErE,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,CAAA;AAE1C,wBAAgB,SAAS,CACvB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,gBAAgB,GAAG,SAAS,GACrC,OAAO,IAAI,OAAO,CAapB"}
@@ -3,14 +3,25 @@ import type { ErrorType } from '../../errors/utils.js';
3
3
  import type { RpcRequest, RpcResponse } from '../../types/rpc.js';
4
4
  import { type WithTimeoutErrorType } from '../promise/withTimeout.js';
5
5
  export type HttpRpcClientOptions = {
6
+ /** Request configuration to pass to `fetch`. */
6
7
  fetchOptions?: Omit<RequestInit, 'body'> | undefined;
8
+ /** A callback to handle the request. */
9
+ onRequest?: ((request: Request) => Promise<void> | void) | undefined;
10
+ /** A callback to handle the response. */
7
11
  onResponse?: ((response: Response) => Promise<void> | void) | undefined;
12
+ /** The timeout (in ms) for the request. */
8
13
  timeout?: number | undefined;
9
14
  };
10
15
  export type HttpRequestParameters<TBody extends RpcRequest | RpcRequest[] = RpcRequest> = {
16
+ /** The RPC request body. */
11
17
  body: TBody;
18
+ /** Request configuration to pass to `fetch`. */
12
19
  fetchOptions?: HttpRpcClientOptions['fetchOptions'] | undefined;
20
+ /** A callback to handle the response. */
21
+ onRequest?: ((request: Request) => Promise<void> | void) | undefined;
22
+ /** A callback to handle the response. */
13
23
  onResponse?: ((response: Response) => Promise<void> | void) | undefined;
24
+ /** The timeout (in ms) for the request. */
14
25
  timeout?: HttpRpcClientOptions['timeout'] | undefined;
15
26
  };
16
27
  export type HttpRequestReturnType<TBody extends RpcRequest | RpcRequest[] = RpcRequest> = TBody extends RpcRequest[] ? RpcResponse[] : RpcResponse;
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../utils/rpc/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,IAAI,qBAAqB,EAElD,KAAK,gBAAgB,EACtB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACjE,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,2BAA2B,CAAA;AAIlC,MAAM,MAAM,oBAAoB,GAAG;IAEjC,YAAY,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;IAEpD,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,SAAS,CAAA;IAEvE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,qBAAqB,CAC/B,KAAK,SAAS,UAAU,GAAG,UAAU,EAAE,GAAG,UAAU,IAClD;IAEF,IAAI,EAAE,KAAK,CAAA;IAEX,YAAY,CAAC,EAAE,oBAAoB,CAAC,cAAc,CAAC,GAAG,SAAS,CAAA;IAE/D,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,SAAS,CAAA;IAEvE,OAAO,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,GAAG,SAAS,CAAA;CACtD,CAAA;AAED,MAAM,MAAM,qBAAqB,CAC/B,KAAK,SAAS,UAAU,GAAG,UAAU,EAAE,GAAG,UAAU,IAClD,KAAK,SAAS,UAAU,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,CAAA;AAE5D,MAAM,MAAM,oBAAoB,GAC5B,qBAAqB,GACrB,gBAAgB,GAChB,oBAAoB,GACpB,SAAS,CAAA;AAEb,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,KAAK,SAAS,UAAU,GAAG,UAAU,EAAE,EAC7C,MAAM,EAAE,qBAAqB,CAAC,KAAK,CAAC,GACnC,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAA;CACzC,CAAA;AAED,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAkFf"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../utils/rpc/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,IAAI,qBAAqB,EAElD,KAAK,gBAAgB,EACtB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACjE,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,2BAA2B,CAAA;AAIlC,MAAM,MAAM,oBAAoB,GAAG;IACjC,gDAAgD;IAChD,YAAY,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;IACpD,wCAAwC;IACxC,SAAS,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,SAAS,CAAA;IACpE,yCAAyC;IACzC,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,SAAS,CAAA;IACvE,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,qBAAqB,CAC/B,KAAK,SAAS,UAAU,GAAG,UAAU,EAAE,GAAG,UAAU,IAClD;IACF,4BAA4B;IAC5B,IAAI,EAAE,KAAK,CAAA;IACX,gDAAgD;IAChD,YAAY,CAAC,EAAE,oBAAoB,CAAC,cAAc,CAAC,GAAG,SAAS,CAAA;IAC/D,yCAAyC;IACzC,SAAS,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,SAAS,CAAA;IACpE,yCAAyC;IACzC,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,SAAS,CAAA;IACvE,2CAA2C;IAC3C,OAAO,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,GAAG,SAAS,CAAA;CACtD,CAAA;AAED,MAAM,MAAM,qBAAqB,CAC/B,KAAK,SAAS,UAAU,GAAG,UAAU,EAAE,GAAG,UAAU,IAClD,KAAK,SAAS,UAAU,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,CAAA;AAE5D,MAAM,MAAM,oBAAoB,GAC5B,qBAAqB,GACrB,gBAAgB,GAChB,oBAAoB,GACpB,SAAS,CAAA;AAEb,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,KAAK,SAAS,UAAU,GAAG,UAAU,EAAE,EAC7C,MAAM,EAAE,qBAAqB,CAAC,KAAK,CAAC,GACnC,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAA;CACzC,CAAA;AAED,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAmFf"}
@@ -36,9 +36,9 @@ export type HttpTransportConfig = {
36
36
  * @link https://developer.mozilla.org/en-US/docs/Web/API/fetch
37
37
  */
38
38
  fetchOptions?: HttpRpcClientOptions['fetchOptions'] | undefined
39
- /**
40
- * A callback to handle the response from `fetch`.
41
- */
39
+ /** A callback to handle the response from `fetch`. */
40
+ onFetchRequest?: HttpRpcClientOptions['onRequest'] | undefined
41
+ /** A callback to handle the response from `fetch`. */
42
42
  onFetchResponse?: HttpRpcClientOptions['onResponse'] | undefined
43
43
  /** The key of the HTTP transport. */
44
44
  key?: TransportConfig['key'] | undefined
@@ -78,6 +78,7 @@ export function http(
78
78
  fetchOptions,
79
79
  key = 'http',
80
80
  name = 'HTTP JSON-RPC',
81
+ onFetchRequest,
81
82
  onFetchResponse,
82
83
  retryDelay,
83
84
  } = config
@@ -91,6 +92,7 @@ export function http(
91
92
 
92
93
  const rpcClient = getHttpRpcClient(url_, {
93
94
  fetchOptions,
95
+ onRequest: onFetchRequest,
94
96
  onResponse: onFetchResponse,
95
97
  timeout,
96
98
  })
package/errors/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = '0.0.0-main.20240331T211425'
1
+ export const version = '0.0.0-main.20240331T214129'
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "viem",
3
3
  "description": "TypeScript Interface for Ethereum",
4
- "version": "0.0.0-main.20240331T211425",
4
+ "version": "0.0.0-main.20240331T214129",
5
5
  "type": "module",
6
6
  "main": "./_cjs/index.js",
7
7
  "module": "./_esm/index.js",
@@ -44,6 +44,7 @@ export type GetAddressErrorType =
44
44
  | ErrorType
45
45
 
46
46
  export function getAddress(address: string, chainId?: number): Address {
47
- if (!isAddress(address)) throw new InvalidAddressError({ address })
47
+ if (!isAddress(address, { strict: false }))
48
+ throw new InvalidAddressError({ address })
48
49
  return checksumAddress(address, chainId)
49
50
  }
@@ -20,8 +20,10 @@ export type IsAddressErrorType = ErrorType
20
20
 
21
21
  export function isAddress(
22
22
  address: string,
23
- { strict = true }: IsAddressOptions = {},
23
+ options?: IsAddressOptions | undefined,
24
24
  ): address is Address {
25
+ const { strict = true } = options ?? {}
26
+
25
27
  if (isAddressCache.has(address)) return isAddressCache.get(address)!
26
28
 
27
29
  const result = (() => {
package/utils/rpc/http.ts CHANGED
@@ -14,24 +14,28 @@ import { stringify } from '../stringify.js'
14
14
  import { idCache } from './id.js'
15
15
 
16
16
  export type HttpRpcClientOptions = {
17
- // Request configuration to pass to `fetch`.
17
+ /** Request configuration to pass to `fetch`. */
18
18
  fetchOptions?: Omit<RequestInit, 'body'> | undefined
19
- // A callback to handle the response.
19
+ /** A callback to handle the request. */
20
+ onRequest?: ((request: Request) => Promise<void> | void) | undefined
21
+ /** A callback to handle the response. */
20
22
  onResponse?: ((response: Response) => Promise<void> | void) | undefined
21
- // The timeout (in ms) for the request.
23
+ /** The timeout (in ms) for the request. */
22
24
  timeout?: number | undefined
23
25
  }
24
26
 
25
27
  export type HttpRequestParameters<
26
28
  TBody extends RpcRequest | RpcRequest[] = RpcRequest,
27
29
  > = {
28
- // The RPC request body.
30
+ /** The RPC request body. */
29
31
  body: TBody
30
- // Request configuration to pass to `fetch`.
32
+ /** Request configuration to pass to `fetch`. */
31
33
  fetchOptions?: HttpRpcClientOptions['fetchOptions'] | undefined
32
- // A callback to handle the response.
34
+ /** A callback to handle the response. */
35
+ onRequest?: ((request: Request) => Promise<void> | void) | undefined
36
+ /** A callback to handle the response. */
33
37
  onResponse?: ((response: Response) => Promise<void> | void) | undefined
34
- // The timeout (in ms) for the request.
38
+ /** The timeout (in ms) for the request. */
35
39
  timeout?: HttpRpcClientOptions['timeout'] | undefined
36
40
  }
37
41
 
@@ -60,6 +64,7 @@ export function getHttpRpcClient(
60
64
  const {
61
65
  body,
62
66
  fetchOptions = {},
67
+ onRequest = options.onRequest,
63
68
  onResponse = options.onResponse,
64
69
  timeout = options.timeout ?? 10_000,
65
70
  } = params
@@ -72,7 +77,7 @@ export function getHttpRpcClient(
72
77
  try {
73
78
  const response = await withTimeout(
74
79
  async ({ signal }) => {
75
- const response = await fetch(url, {
80
+ const request = new Request(url, {
76
81
  ...fetchOptions,
77
82
  body: Array.isArray(body)
78
83
  ? stringify(
@@ -94,6 +99,8 @@ export function getHttpRpcClient(
94
99
  method: method || 'POST',
95
100
  signal: signal_ || (timeout > 0 ? signal : null),
96
101
  })
102
+ if (onRequest) await onRequest(request)
103
+ const response = await fetch(request)
97
104
  return response
98
105
  },
99
106
  {
@@ -108,11 +115,9 @@ export function getHttpRpcClient(
108
115
  let data: any
109
116
  if (
110
117
  response.headers.get('Content-Type')?.startsWith('application/json')
111
- ) {
118
+ )
112
119
  data = await response.json()
113
- } else {
114
- data = await response.text()
115
- }
120
+ else data = await response.text()
116
121
 
117
122
  if (!response.ok) {
118
123
  throw new HttpRequestError({