viem 1.9.5 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/dist/cjs/actions/wallet/signTypedData.js +1 -13
  2. package/dist/cjs/actions/wallet/signTypedData.js.map +1 -1
  3. package/dist/cjs/chains/definitions/base.js +1 -3
  4. package/dist/cjs/chains/definitions/base.js.map +1 -1
  5. package/dist/cjs/chains/definitions/baseGoerli.js +1 -3
  6. package/dist/cjs/chains/definitions/baseGoerli.js.map +1 -1
  7. package/dist/cjs/chains/definitions/meter.js +22 -0
  8. package/dist/cjs/chains/definitions/meter.js.map +1 -0
  9. package/dist/cjs/chains/definitions/meterTestnet.js +25 -0
  10. package/dist/cjs/chains/definitions/meterTestnet.js.map +1 -0
  11. package/dist/cjs/chains/definitions/opBNB.js +28 -0
  12. package/dist/cjs/chains/definitions/opBNB.js.map +1 -0
  13. package/dist/cjs/chains/definitions/opBNBTestnet.js +29 -0
  14. package/dist/cjs/chains/definitions/opBNBTestnet.js.map +1 -0
  15. package/dist/cjs/chains/definitions/optimism.js +0 -2
  16. package/dist/cjs/chains/definitions/optimism.js.map +1 -1
  17. package/dist/cjs/chains/definitions/optimismGoerli.js +0 -2
  18. package/dist/cjs/chains/definitions/optimismGoerli.js.map +1 -1
  19. package/dist/cjs/chains/definitions/plinga.js +31 -0
  20. package/dist/cjs/chains/definitions/plinga.js.map +1 -0
  21. package/dist/cjs/chains/definitions/scrollSepolia.js +6 -0
  22. package/dist/cjs/chains/definitions/scrollSepolia.js.map +1 -1
  23. package/dist/cjs/chains/definitions/zora.js +0 -2
  24. package/dist/cjs/chains/definitions/zora.js.map +1 -1
  25. package/dist/cjs/chains/definitions/zoraTestnet.js +0 -2
  26. package/dist/cjs/chains/definitions/zoraTestnet.js.map +1 -1
  27. package/dist/cjs/chains/index.js +12 -2
  28. package/dist/cjs/chains/index.js.map +1 -1
  29. package/dist/cjs/errors/node.js +1 -1
  30. package/dist/cjs/errors/node.js.map +1 -1
  31. package/dist/cjs/errors/version.js +1 -1
  32. package/dist/cjs/errors/version.js.map +1 -1
  33. package/dist/cjs/index.js +2 -1
  34. package/dist/cjs/index.js.map +1 -1
  35. package/dist/cjs/utils/buildRequest.js +2 -0
  36. package/dist/cjs/utils/buildRequest.js.map +1 -1
  37. package/dist/cjs/utils/errors/getCallError.js +4 -3
  38. package/dist/cjs/utils/errors/getCallError.js.map +1 -1
  39. package/dist/cjs/utils/errors/getContractError.js +2 -1
  40. package/dist/cjs/utils/errors/getContractError.js.map +1 -1
  41. package/dist/cjs/utils/errors/getEstimateGasError.js +4 -3
  42. package/dist/cjs/utils/errors/getEstimateGasError.js.map +1 -1
  43. package/dist/cjs/utils/errors/getNodeError.js +16 -10
  44. package/dist/cjs/utils/errors/getNodeError.js.map +1 -1
  45. package/dist/cjs/utils/errors/getTransactionError.js +4 -3
  46. package/dist/cjs/utils/errors/getTransactionError.js.map +1 -1
  47. package/dist/cjs/utils/rpc.js +10 -16
  48. package/dist/cjs/utils/rpc.js.map +1 -1
  49. package/dist/cjs/utils/signature/hashTypedData.js +3 -14
  50. package/dist/cjs/utils/signature/hashTypedData.js.map +1 -1
  51. package/dist/cjs/utils/typedData.js +27 -1
  52. package/dist/cjs/utils/typedData.js.map +1 -1
  53. package/dist/esm/actions/wallet/signTypedData.js +2 -14
  54. package/dist/esm/actions/wallet/signTypedData.js.map +1 -1
  55. package/dist/esm/chains/definitions/base.js +1 -3
  56. package/dist/esm/chains/definitions/base.js.map +1 -1
  57. package/dist/esm/chains/definitions/baseGoerli.js +1 -3
  58. package/dist/esm/chains/definitions/baseGoerli.js.map +1 -1
  59. package/dist/esm/chains/definitions/meter.js +19 -0
  60. package/dist/esm/chains/definitions/meter.js.map +1 -0
  61. package/dist/esm/chains/definitions/meterTestnet.js +22 -0
  62. package/dist/esm/chains/definitions/meterTestnet.js.map +1 -0
  63. package/dist/esm/chains/definitions/opBNB.js +25 -0
  64. package/dist/esm/chains/definitions/opBNB.js.map +1 -0
  65. package/dist/esm/chains/definitions/opBNBTestnet.js +26 -0
  66. package/dist/esm/chains/definitions/opBNBTestnet.js.map +1 -0
  67. package/dist/esm/chains/definitions/optimism.js +0 -2
  68. package/dist/esm/chains/definitions/optimism.js.map +1 -1
  69. package/dist/esm/chains/definitions/optimismGoerli.js +0 -2
  70. package/dist/esm/chains/definitions/optimismGoerli.js.map +1 -1
  71. package/dist/esm/chains/definitions/plinga.js +28 -0
  72. package/dist/esm/chains/definitions/plinga.js.map +1 -0
  73. package/dist/esm/chains/definitions/scrollSepolia.js +6 -0
  74. package/dist/esm/chains/definitions/scrollSepolia.js.map +1 -1
  75. package/dist/esm/chains/definitions/zora.js +0 -2
  76. package/dist/esm/chains/definitions/zora.js.map +1 -1
  77. package/dist/esm/chains/definitions/zoraTestnet.js +0 -2
  78. package/dist/esm/chains/definitions/zoraTestnet.js.map +1 -1
  79. package/dist/esm/chains/index.js +5 -0
  80. package/dist/esm/chains/index.js.map +1 -1
  81. package/dist/esm/errors/node.js +1 -1
  82. package/dist/esm/errors/node.js.map +1 -1
  83. package/dist/esm/errors/version.js +1 -1
  84. package/dist/esm/errors/version.js.map +1 -1
  85. package/dist/esm/index.js +1 -1
  86. package/dist/esm/index.js.map +1 -1
  87. package/dist/esm/utils/buildRequest.js +4 -0
  88. package/dist/esm/utils/buildRequest.js.map +1 -1
  89. package/dist/esm/utils/errors/getCallError.js +5 -4
  90. package/dist/esm/utils/errors/getCallError.js.map +1 -1
  91. package/dist/esm/utils/errors/getContractError.js +2 -1
  92. package/dist/esm/utils/errors/getContractError.js.map +1 -1
  93. package/dist/esm/utils/errors/getEstimateGasError.js +5 -4
  94. package/dist/esm/utils/errors/getEstimateGasError.js.map +1 -1
  95. package/dist/esm/utils/errors/getNodeError.js +16 -10
  96. package/dist/esm/utils/errors/getNodeError.js.map +1 -1
  97. package/dist/esm/utils/errors/getTransactionError.js +5 -4
  98. package/dist/esm/utils/errors/getTransactionError.js.map +1 -1
  99. package/dist/esm/utils/rpc.js +7 -16
  100. package/dist/esm/utils/rpc.js.map +1 -1
  101. package/dist/esm/utils/signature/hashTypedData.js +3 -15
  102. package/dist/esm/utils/signature/hashTypedData.js.map +1 -1
  103. package/dist/esm/utils/typedData.js +24 -0
  104. package/dist/esm/utils/typedData.js.map +1 -1
  105. package/dist/types/actions/wallet/signTypedData.d.ts.map +1 -1
  106. package/dist/types/chains/definitions/base.d.ts +1 -1
  107. package/dist/types/chains/definitions/base.d.ts.map +1 -1
  108. package/dist/types/chains/definitions/baseGoerli.d.ts +1 -1
  109. package/dist/types/chains/definitions/baseGoerli.d.ts.map +1 -1
  110. package/dist/types/chains/definitions/meter.d.ts +25 -0
  111. package/dist/types/chains/definitions/meter.d.ts.map +1 -0
  112. package/dist/types/chains/definitions/meterTestnet.d.ts +25 -0
  113. package/dist/types/chains/definitions/meterTestnet.d.ts.map +1 -0
  114. package/dist/types/chains/definitions/opBNB.d.ts +31 -0
  115. package/dist/types/chains/definitions/opBNB.d.ts.map +1 -0
  116. package/dist/types/chains/definitions/opBNBTestnet.d.ts +32 -0
  117. package/dist/types/chains/definitions/opBNBTestnet.d.ts.map +1 -0
  118. package/dist/types/chains/definitions/optimism.d.ts.map +1 -1
  119. package/dist/types/chains/definitions/optimismGoerli.d.ts.map +1 -1
  120. package/dist/types/chains/definitions/plinga.d.ts +31 -0
  121. package/dist/types/chains/definitions/plinga.d.ts.map +1 -0
  122. package/dist/types/chains/definitions/scrollSepolia.d.ts +6 -0
  123. package/dist/types/chains/definitions/scrollSepolia.d.ts.map +1 -1
  124. package/dist/types/chains/definitions/zora.d.ts.map +1 -1
  125. package/dist/types/chains/definitions/zoraTestnet.d.ts.map +1 -1
  126. package/dist/types/chains/index.d.ts +5 -0
  127. package/dist/types/chains/index.d.ts.map +1 -1
  128. package/dist/types/errors/version.d.ts +1 -1
  129. package/dist/types/errors/version.d.ts.map +1 -1
  130. package/dist/types/index.d.ts +1 -1
  131. package/dist/types/index.d.ts.map +1 -1
  132. package/dist/types/types/chain.d.ts +4 -0
  133. package/dist/types/types/chain.d.ts.map +1 -1
  134. package/dist/types/utils/buildRequest.d.ts.map +1 -1
  135. package/dist/types/utils/errors/getCallError.d.ts.map +1 -1
  136. package/dist/types/utils/errors/getContractError.d.ts.map +1 -1
  137. package/dist/types/utils/errors/getEstimateGasError.d.ts.map +1 -1
  138. package/dist/types/utils/errors/getNodeError.d.ts +1 -1
  139. package/dist/types/utils/errors/getNodeError.d.ts.map +1 -1
  140. package/dist/types/utils/errors/getTransactionError.d.ts.map +1 -1
  141. package/dist/types/utils/rpc.d.ts +3 -1
  142. package/dist/types/utils/rpc.d.ts.map +1 -1
  143. package/dist/types/utils/signature/hashTypedData.d.ts +10 -1
  144. package/dist/types/utils/signature/hashTypedData.d.ts.map +1 -1
  145. package/dist/types/utils/signature/verifyMessage.d.ts +2 -2
  146. package/dist/types/utils/signature/verifyMessage.d.ts.map +1 -1
  147. package/dist/types/utils/typedData.d.ts +8 -1
  148. package/dist/types/utils/typedData.d.ts.map +1 -1
  149. package/package.json +1 -1
  150. package/src/actions/wallet/signTypedData.ts +5 -14
  151. package/src/chains/definitions/base.ts +1 -3
  152. package/src/chains/definitions/baseGoerli.ts +1 -3
  153. package/src/chains/definitions/meter.ts +19 -0
  154. package/src/chains/definitions/meterTestnet.ts +22 -0
  155. package/src/chains/definitions/opBNB.ts +26 -0
  156. package/src/chains/definitions/opBNBTestnet.ts +26 -0
  157. package/src/chains/definitions/optimism.ts +0 -2
  158. package/src/chains/definitions/optimismGoerli.ts +0 -2
  159. package/src/chains/definitions/plinga.ts +28 -0
  160. package/src/chains/definitions/scrollSepolia.ts +6 -0
  161. package/src/chains/definitions/zora.ts +0 -2
  162. package/src/chains/definitions/zoraTestnet.ts +0 -2
  163. package/src/chains/index.ts +5 -0
  164. package/src/errors/node.ts +1 -1
  165. package/src/errors/version.ts +1 -1
  166. package/src/index.ts +1 -1
  167. package/src/types/chain.ts +2 -0
  168. package/src/utils/buildRequest.ts +4 -0
  169. package/src/utils/errors/getCallError.ts +4 -8
  170. package/src/utils/errors/getContractError.ts +2 -1
  171. package/src/utils/errors/getEstimateGasError.ts +4 -8
  172. package/src/utils/errors/getNodeError.ts +18 -13
  173. package/src/utils/errors/getTransactionError.ts +4 -8
  174. package/src/utils/rpc.ts +9 -20
  175. package/src/utils/signature/hashTypedData.ts +3 -15
  176. package/src/utils/signature/verifyMessage.ts +2 -2
  177. package/src/utils/typedData.ts +34 -1
  178. package/chains/dist/cjs/celo/formatters.js +0 -57
  179. package/chains/dist/cjs/celo/formatters.js.map +0 -1
  180. package/chains/dist/cjs/celo/parsers.js +0 -72
  181. package/chains/dist/cjs/celo/parsers.js.map +0 -1
  182. package/chains/dist/cjs/celo/serializers.js +0 -75
  183. package/chains/dist/cjs/celo/serializers.js.map +0 -1
  184. package/chains/dist/cjs/celo/types.js +0 -3
  185. package/chains/dist/cjs/celo/types.js.map +0 -1
  186. package/chains/dist/cjs/index.js +0 -135
  187. package/chains/dist/cjs/index.js.map +0 -1
  188. package/chains/dist/cjs/optimism/fees.js +0 -7
  189. package/chains/dist/cjs/optimism/fees.js.map +0 -1
  190. package/chains/dist/cjs/optimism/formatters.js +0 -51
  191. package/chains/dist/cjs/optimism/formatters.js.map +0 -1
  192. package/chains/dist/cjs/optimism/types.js +0 -3
  193. package/chains/dist/cjs/optimism/types.js.map +0 -1
  194. package/chains/dist/cjs/types.js +0 -3
  195. package/chains/dist/cjs/types.js.map +0 -1
  196. package/chains/dist/cjs/utils.js +0 -23
  197. package/chains/dist/cjs/utils.js.map +0 -1
  198. package/chains/dist/tsconfig.build.tsbuildinfo +0 -1
  199. package/chains/tsconfig.tsbuildinfo +0 -1
  200. package/dist/cjs/chains/optimism/fees.js +0 -7
  201. package/dist/cjs/chains/optimism/fees.js.map +0 -1
  202. package/dist/esm/chains/optimism/fees.js +0 -4
  203. package/dist/esm/chains/optimism/fees.js.map +0 -1
  204. package/dist/types/chains/optimism/fees.d.ts +0 -4
  205. package/dist/types/chains/optimism/fees.d.ts.map +0 -1
  206. package/src/chains/optimism/fees.ts +0 -5
@@ -1 +1 @@
1
- {"version":3,"file":"hashTypedData.d.ts","sourceRoot":"","sources":["../../../../src/utils/signature/hashTypedData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAgB,SAAS,EAAmB,MAAM,SAAS,CAAA;AAEvE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAYnE,MAAM,MAAM,uBAAuB,CACjC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAAG,SAAS,EACrE,YAAY,SAAS,MAAM,GAAG,MAAM,IAClC,mBAAmB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;AAEjD,MAAM,MAAM,uBAAuB,GAAG,GAAG,CAAA;AAEzC,wBAAgB,aAAa,CAC3B,KAAK,CAAC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EAC/D,YAAY,SAAS,MAAM,GAAG,MAAM,EACpC,EACA,MAAM,EAAE,OAAO,EACf,OAAO,EACP,WAAW,EACX,KAAK,EAAE,MAAM,GACd,EAAE,uBAAuB,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,uBAAuB,CAgD7E"}
1
+ {"version":3,"file":"hashTypedData.d.ts","sourceRoot":"","sources":["../../../../src/utils/signature/hashTypedData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAgB,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEvE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAOnE,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,uBAAuB,CACjC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAAG,SAAS,EACrE,YAAY,SAAS,MAAM,GAAG,MAAM,IAClC,mBAAmB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;AAEjD,MAAM,MAAM,uBAAuB,GAAG,GAAG,CAAA;AAEzC,wBAAgB,aAAa,CAC3B,KAAK,CAAC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EAC/D,YAAY,SAAS,MAAM,GAAG,MAAM,EACpC,EACA,MAAM,EAAE,OAAO,EACf,OAAO,EACP,WAAW,EACX,KAAK,EAAE,MAAM,GACd,EAAE,uBAAuB,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,uBAAuB,CAoC7E;AAED,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,KAAK,GACN,EAAE;IACD,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAA;CAC7C,iBAMA"}
@@ -1,10 +1,10 @@
1
1
  import type { Address } from 'abitype';
2
- import type { ByteArray, Hex } from '../../types/misc.js';
2
+ import type { ByteArray, Hex, SignableMessage } from '../../types/misc.js';
3
3
  export type VerifyMessageParameters = {
4
4
  /** The address that signed the original message. */
5
5
  address: Address;
6
6
  /** The message to be verified. */
7
- message: string;
7
+ message: SignableMessage;
8
8
  /** The signature that was generated by signing the message with the address's private key. */
9
9
  signature: Hex | ByteArray;
10
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"verifyMessage.d.ts","sourceRoot":"","sources":["../../../../src/utils/signature/verifyMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AAMzD,MAAM,MAAM,uBAAuB,GAAG;IACpC,oDAAoD;IACpD,OAAO,EAAE,OAAO,CAAA;IAChB,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,8FAA8F;IAC9F,SAAS,EAAE,GAAG,GAAG,SAAS,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAA;AAE7C;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,EAClC,OAAO,EACP,OAAO,EACP,SAAS,GACV,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAK5D"}
1
+ {"version":3,"file":"verifyMessage.d.ts","sourceRoot":"","sources":["../../../../src/utils/signature/verifyMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAM1E,MAAM,MAAM,uBAAuB,GAAG;IACpC,oDAAoD;IACpD,OAAO,EAAE,OAAO,CAAA;IAChB,kCAAkC;IAClC,OAAO,EAAE,eAAe,CAAA;IACxB,8FAA8F;IAC9F,SAAS,EAAE,GAAG,GAAG,SAAS,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAA;AAE7C;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,EAClC,OAAO,EACP,OAAO,EACP,SAAS,GACV,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAK5D"}
@@ -1,6 +1,13 @@
1
- import type { TypedData } from 'abitype';
1
+ import type { TypedData, TypedDataDomain, TypedDataParameter } from 'abitype';
2
+ import type { Hex } from '../types/misc.js';
2
3
  import type { TypedDataDefinition } from '../types/typedData.js';
3
4
  export declare function validateTypedData<const TTypedData extends TypedData | {
4
5
  [key: string]: unknown;
5
6
  }, TPrimaryType extends string = string>({ domain, message, primaryType, types: types_, }: TypedDataDefinition<TTypedData, TPrimaryType>): void;
7
+ export declare function getTypesForEIP712Domain({ domain, }: {
8
+ domain?: TypedDataDomain;
9
+ }): TypedDataParameter[];
10
+ export declare function domainSeparator({ domain }: {
11
+ domain: TypedDataDomain;
12
+ }): Hex;
6
13
  //# sourceMappingURL=typedData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typedData.d.ts","sourceRoot":"","sources":["../../../src/utils/typedData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAqC,MAAM,SAAS,CAAA;AAK3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAOhE,wBAAgB,iBAAiB,CAC/B,KAAK,CAAC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EAC/D,YAAY,SAAS,MAAM,GAAG,MAAM,EACpC,EACA,MAAM,EACN,OAAO,EACP,WAAW,EACX,KAAK,EAAE,MAAM,GACd,EAAE,mBAAmB,CAAC,UAAU,EAAE,YAAY,CAAC,QAoD/C"}
1
+ {"version":3,"file":"typedData.d.ts","sourceRoot":"","sources":["../../../src/utils/typedData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,kBAAkB,EAEnB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAQhE,wBAAgB,iBAAiB,CAC/B,KAAK,CAAC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EAC/D,YAAY,SAAS,MAAM,GAAG,MAAM,EACpC,EACA,MAAM,EACN,OAAO,EACP,WAAW,EACX,KAAK,EAAE,MAAM,GACd,EAAE,mBAAmB,CAAC,UAAU,EAAE,YAAY,CAAC,QAoD/C;AAED,wBAAgB,uBAAuB,CAAC,EACtC,MAAM,GACP,EAAE;IAAE,MAAM,CAAC,EAAE,eAAe,CAAA;CAAE,GAAG,kBAAkB,EAAE,CAcrD;AAED,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,eAAe,CAAA;CAAE,GAAG,GAAG,CAO5E"}
package/package.json CHANGED
@@ -20,7 +20,7 @@
20
20
  "optional": true
21
21
  }
22
22
  },
23
- "version": "1.9.5",
23
+ "version": "1.10.0",
24
24
  "files": [
25
25
  "dist",
26
26
  "!dist/**/*.tsbuildinfo",
@@ -11,7 +11,10 @@ import type { Hex } from '../../types/misc.js'
11
11
  import type { TypedDataDefinition } from '../../types/typedData.js'
12
12
  import { isHex } from '../../utils/data/isHex.js'
13
13
  import { stringify } from '../../utils/stringify.js'
14
- import { validateTypedData } from '../../utils/typedData.js'
14
+ import {
15
+ getTypesForEIP712Domain,
16
+ validateTypedData,
17
+ } from '../../utils/typedData.js'
15
18
 
16
19
  export type SignTypedDataParameters<
17
20
  TTypedData extends TypedData | { [key: string]: unknown } = TypedData,
@@ -142,19 +145,7 @@ export async function signTypedData<
142
145
  const account = parseAccount(account_)
143
146
 
144
147
  const types = {
145
- EIP712Domain: [
146
- typeof domain?.name === 'string' && { name: 'name', type: 'string' },
147
- domain?.version && { name: 'version', type: 'string' },
148
- typeof domain?.chainId === 'number' && {
149
- name: 'chainId',
150
- type: 'uint256',
151
- },
152
- domain?.verifyingContract && {
153
- name: 'verifyingContract',
154
- type: 'address',
155
- },
156
- domain?.salt && { name: 'salt', type: 'bytes32' },
157
- ].filter(Boolean),
148
+ EIP712Domain: getTypesForEIP712Domain({ domain }),
158
149
  ...(types_ as TTypedData),
159
150
  }
160
151
 
@@ -1,5 +1,4 @@
1
1
  import { defineChain } from '../../utils/chain.js'
2
- import { feesOptimism } from '../optimism/fees.js'
3
2
  import { formattersOptimism } from '../optimism/formatters.js'
4
3
 
5
4
  export const base = /*#__PURE__*/ defineChain(
@@ -7,7 +6,7 @@ export const base = /*#__PURE__*/ defineChain(
7
6
  id: 8453,
8
7
  network: 'base',
9
8
  name: 'Base',
10
- nativeCurrency: { name: 'Base', symbol: 'ETH', decimals: 18 },
9
+ nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
11
10
  rpcUrls: {
12
11
  default: {
13
12
  http: ['https://mainnet.base.org'],
@@ -38,7 +37,6 @@ export const base = /*#__PURE__*/ defineChain(
38
37
  },
39
38
  },
40
39
  {
41
- fees: feesOptimism,
42
40
  formatters: formattersOptimism,
43
41
  },
44
42
  )
@@ -1,5 +1,4 @@
1
1
  import { defineChain } from '../../utils/chain.js'
2
- import { feesOptimism } from '../optimism/fees.js'
3
2
  import { formattersOptimism } from '../optimism/formatters.js'
4
3
 
5
4
  export const baseGoerli = /*#__PURE__*/ defineChain(
@@ -7,7 +6,7 @@ export const baseGoerli = /*#__PURE__*/ defineChain(
7
6
  id: 84531,
8
7
  network: 'base-goerli',
9
8
  name: 'Base Goerli',
10
- nativeCurrency: { name: 'Base Goerli', symbol: 'ETH', decimals: 18 },
9
+ nativeCurrency: { name: 'Goerli Ether', symbol: 'ETH', decimals: 18 },
11
10
  rpcUrls: {
12
11
  default: {
13
12
  http: ['https://goerli.base.org'],
@@ -36,7 +35,6 @@ export const baseGoerli = /*#__PURE__*/ defineChain(
36
35
  sourceId: 5, // goerli
37
36
  },
38
37
  {
39
- fees: feesOptimism,
40
38
  formatters: formattersOptimism,
41
39
  },
42
40
  )
@@ -0,0 +1,19 @@
1
+ import { defineChain } from '../../utils/chain.js'
2
+
3
+ export const meter = /*#__PURE__*/ defineChain({
4
+ id: 82,
5
+ name: 'Meter',
6
+ network: 'meter',
7
+ nativeCurrency: {
8
+ decimals: 18,
9
+ name: 'MTR',
10
+ symbol: 'MTR',
11
+ },
12
+ rpcUrls: {
13
+ default: { http: ['https://rpc.meter.io'] },
14
+ public: { http: ['https://rpc.meter.io'] },
15
+ },
16
+ blockExplorers: {
17
+ default: { name: 'MeterScan', url: 'https://scan.meter.io' },
18
+ },
19
+ })
@@ -0,0 +1,22 @@
1
+ import { defineChain } from '../../utils/chain.js'
2
+
3
+ export const meterTestnet = /*#__PURE__*/ defineChain({
4
+ id: 83,
5
+ name: 'Meter Testnet',
6
+ network: 'meter-testnet',
7
+ nativeCurrency: {
8
+ decimals: 18,
9
+ name: 'MTR',
10
+ symbol: 'MTR',
11
+ },
12
+ rpcUrls: {
13
+ default: { http: ['https://rpctest.meter.io'] },
14
+ public: { http: ['https://rpctest.meter.io'] },
15
+ },
16
+ blockExplorers: {
17
+ default: {
18
+ name: 'MeterTestnetScan',
19
+ url: 'https://scan-warringstakes.meter.io',
20
+ },
21
+ },
22
+ })
@@ -0,0 +1,26 @@
1
+ import { defineChain } from '../../utils/chain.js'
2
+
3
+ export const opBNB = /*#__PURE__*/ defineChain({
4
+ id: 204,
5
+ name: 'opBNB',
6
+ network: 'opBNB Mainnet',
7
+ nativeCurrency: {
8
+ name: 'BNB',
9
+ symbol: 'BNB',
10
+ decimals: 18,
11
+ },
12
+ rpcUrls: {
13
+ public: { http: ['https://opbnb-mainnet-rpc.bnbchain.org'] },
14
+ default: { http: ['https://opbnb-mainnet-rpc.bnbchain.org'] },
15
+ },
16
+ blockExplorers: {
17
+ default: { name: 'opbnbscan', url: 'https://mainnet.opbnbscan.com' },
18
+ },
19
+
20
+ contracts: {
21
+ multicall3: {
22
+ address: '0xcA11bde05977b3631167028862bE2a173976CA11',
23
+ blockCreated: 512881,
24
+ },
25
+ },
26
+ })
@@ -0,0 +1,26 @@
1
+ import { defineChain } from '../../utils/chain.js'
2
+
3
+ export const opBNBTestnet = /*#__PURE__*/ defineChain({
4
+ id: 5611,
5
+ name: 'opBNB Testnet',
6
+ network: 'opBNB Testnet',
7
+ nativeCurrency: {
8
+ decimals: 18,
9
+ name: 'tBNB',
10
+ symbol: 'tBNB',
11
+ },
12
+ rpcUrls: {
13
+ public: { http: ['https://opbnb-testnet-rpc.bnbchain.org'] },
14
+ default: { http: ['https://opbnb-testnet-rpc.bnbchain.org'] },
15
+ },
16
+ blockExplorers: {
17
+ default: { name: 'opbnbscan', url: 'https://opbnbscan.com' },
18
+ },
19
+ contracts: {
20
+ multicall3: {
21
+ address: '0xcA11bde05977b3631167028862bE2a173976CA11',
22
+ blockCreated: 3705108,
23
+ },
24
+ },
25
+ testnet: true,
26
+ })
@@ -1,5 +1,4 @@
1
1
  import { defineChain } from '../../utils/chain.js'
2
- import { feesOptimism } from '../optimism/fees.js'
3
2
  import { formattersOptimism } from '../optimism/formatters.js'
4
3
 
5
4
  export const optimism = /*#__PURE__*/ defineChain(
@@ -42,7 +41,6 @@ export const optimism = /*#__PURE__*/ defineChain(
42
41
  },
43
42
  },
44
43
  {
45
- fees: feesOptimism,
46
44
  formatters: formattersOptimism,
47
45
  },
48
46
  )
@@ -1,5 +1,4 @@
1
1
  import { defineChain } from '../../utils/chain.js'
2
- import { feesOptimism } from '../optimism/fees.js'
3
2
  import { formattersOptimism } from '../optimism/formatters.js'
4
3
 
5
4
  export const optimismGoerli = /*#__PURE__*/ defineChain(
@@ -43,7 +42,6 @@ export const optimismGoerli = /*#__PURE__*/ defineChain(
43
42
  testnet: true,
44
43
  },
45
44
  {
46
- fees: feesOptimism,
47
45
  formatters: formattersOptimism,
48
46
  },
49
47
  )
@@ -0,0 +1,28 @@
1
+ import { defineChain } from '../../utils/chain.js'
2
+
3
+ export const plinga = /*#__PURE__*/ defineChain({
4
+ id: 242,
5
+ name: 'Plinga',
6
+ network: 'plinga',
7
+ nativeCurrency: { name: 'Plinga', symbol: 'PLINGA', decimals: 18 },
8
+ rpcUrls: {
9
+ default: {
10
+ http: ['https://rpcurl.mainnet.plgchain.com'],
11
+ },
12
+ public: {
13
+ http: ['https://rpcurl.mainnet.plgchain.com'],
14
+ },
15
+ },
16
+ blockExplorers: {
17
+ default: {
18
+ name: 'Plgscan',
19
+ url: 'https://www.plgscan.com',
20
+ },
21
+ },
22
+ contracts: {
23
+ multicall3: {
24
+ address: '0x0989576160f2e7092908BB9479631b901060b6e4',
25
+ blockCreated: 204489,
26
+ },
27
+ },
28
+ })
@@ -21,5 +21,11 @@ export const scrollSepolia = /*#__PURE__*/ defineChain({
21
21
  url: 'https://sepolia-blockscout.scroll.io',
22
22
  },
23
23
  },
24
+ contracts: {
25
+ multicall3: {
26
+ address: '0xca11bde05977b3631167028862be2a173976ca11',
27
+ blockCreated: 9473,
28
+ },
29
+ },
24
30
  testnet: true,
25
31
  })
@@ -1,5 +1,4 @@
1
1
  import { defineChain } from '../../utils/chain.js'
2
- import { feesOptimism } from '../optimism/fees.js'
3
2
  import { formattersOptimism } from '../optimism/formatters.js'
4
3
 
5
4
  export const zora = /*#__PURE__*/ defineChain(
@@ -33,7 +32,6 @@ export const zora = /*#__PURE__*/ defineChain(
33
32
  },
34
33
  },
35
34
  {
36
- fees: feesOptimism,
37
35
  formatters: formattersOptimism,
38
36
  },
39
37
  )
@@ -1,5 +1,4 @@
1
1
  import { defineChain } from '../../utils/chain.js'
2
- import { feesOptimism } from '../optimism/fees.js'
3
2
  import { formattersOptimism } from '../optimism/formatters.js'
4
3
 
5
4
  export const zoraTestnet = /*#__PURE__*/ defineChain(
@@ -37,7 +36,6 @@ export const zoraTestnet = /*#__PURE__*/ defineChain(
37
36
  testnet: true,
38
37
  },
39
38
  {
40
- fees: feesOptimism,
41
39
  formatters: formattersOptimism,
42
40
  },
43
41
  )
@@ -65,6 +65,8 @@ export { localhost } from './definitions/localhost.js'
65
65
  export { mainnet } from './definitions/mainnet.js'
66
66
  export { mantle } from './definitions/mantle.js'
67
67
  export { mantleTestnet } from './definitions/mantleTestnet.js'
68
+ export { meter } from './definitions/meter.js'
69
+ export { meterTestnet } from './definitions/meterTestnet.js'
68
70
  export { metis } from './definitions/metis.js'
69
71
  export { metisGoerli } from './definitions/metisGoerli.js'
70
72
  export { mev } from './definitions/mev.js'
@@ -80,6 +82,9 @@ export { oasys } from './definitions/oasys.js'
80
82
  export { okc } from './definitions/okc.js'
81
83
  export { optimism } from './definitions/optimism.js'
82
84
  export { optimismGoerli } from './definitions/optimismGoerli.js'
85
+ export { opBNB } from './definitions/opBNB.js'
86
+ export { opBNBTestnet } from './definitions/opBNBTestnet.js'
87
+ export { plinga } from './definitions/plinga.js'
83
88
  export { polygon } from './definitions/polygon.js'
84
89
  export { polygonMumbai } from './definitions/polygonMumbai.js'
85
90
  export { polygonZkEvmTestnet } from './definitions/polygonZkEvmTestnet.js'
@@ -216,7 +216,7 @@ export class UnknownNodeError extends BaseError {
216
216
  override name = 'UnknownNodeError'
217
217
 
218
218
  constructor({ cause }: { cause?: BaseError }) {
219
- super(`An error occurred while executing: ${cause?.message}`, {
219
+ super(`An error occurred while executing: ${cause?.shortMessage}`, {
220
220
  cause,
221
221
  })
222
222
  }
@@ -1 +1 @@
1
- export const version = '1.9.5'
1
+ export const version = '1.10.0'
package/src/index.ts CHANGED
@@ -878,4 +878,4 @@ export { size } from './utils/data/size.js'
878
878
  export { slice, sliceBytes, sliceHex } from './utils/data/slice.js'
879
879
  export { stringify } from './utils/stringify.js'
880
880
  export { trim } from './utils/data/trim.js'
881
- export { validateTypedData } from './utils/typedData.js'
881
+ export { validateTypedData, domainSeparator } from './utils/typedData.js'
@@ -34,6 +34,8 @@ export type ChainConstants = {
34
34
  }
35
35
  /** Collection of contracts */
36
36
  contracts?: {
37
+ [key: string]: ChainContract | { [chainId: number]: ChainContract }
38
+ } & {
37
39
  ensRegistry?: ChainContract
38
40
  ensUniversalResolver?: ChainContract
39
41
  multicall3?: ChainContract
@@ -126,6 +126,10 @@ export function buildRequest<TRequest extends (args: any) => Promise<any>>(
126
126
  // 4902
127
127
  case SwitchChainError.code:
128
128
  throw new SwitchChainError(err)
129
+ // CAIP-25: User Rejected Error
130
+ // https://docs.walletconnect.com/2.0/specs/clients/sign/error-codes#rejected-caip-25
131
+ case 5000:
132
+ throw new UserRejectedRequestError(err)
129
133
  default:
130
134
  if (err_ instanceof BaseError) throw err_
131
135
  throw new UnknownRpcError(err as Error)
@@ -1,13 +1,10 @@
1
1
  import type { CallParameters } from '../../actions/public/call.js'
2
2
  import type { BaseError } from '../../errors/base.js'
3
3
  import { CallExecutionError } from '../../errors/contract.js'
4
+ import { UnknownNodeError } from '../../errors/node.js'
4
5
  import type { Chain } from '../../types/chain.js'
5
6
 
6
- import {
7
- type GetNodeErrorParameters,
8
- containsNodeError,
9
- getNodeError,
10
- } from './getNodeError.js'
7
+ import { type GetNodeErrorParameters, getNodeError } from './getNodeError.js'
11
8
 
12
9
  export function getCallError(
13
10
  err: BaseError,
@@ -19,9 +16,8 @@ export function getCallError(
19
16
  docsPath?: string
20
17
  },
21
18
  ) {
22
- let cause = err
23
- if (containsNodeError(err))
24
- cause = getNodeError(err, args as GetNodeErrorParameters)
19
+ let cause = getNodeError(err, args as GetNodeErrorParameters)
20
+ if (cause instanceof UnknownNodeError) cause = err
25
21
  return new CallExecutionError(cause, {
26
22
  docsPath,
27
23
  ...args,
@@ -8,6 +8,7 @@ import {
8
8
  ContractFunctionZeroDataError,
9
9
  RawContractError,
10
10
  } from '../../errors/contract.js'
11
+ import { InternalRpcError } from '../../errors/rpc.js'
11
12
 
12
13
  const EXECUTION_REVERTED_ERROR_CODE = 3
13
14
 
@@ -41,7 +42,7 @@ export function getContractError(
41
42
  if (err instanceof AbiDecodingZeroDataError) {
42
43
  cause = new ContractFunctionZeroDataError({ functionName })
43
44
  } else if (
44
- code === EXECUTION_REVERTED_ERROR_CODE &&
45
+ [EXECUTION_REVERTED_ERROR_CODE, InternalRpcError.code].includes(code) &&
45
46
  (data || message || shortMessage)
46
47
  ) {
47
48
  cause = new ContractFunctionRevertedError({
@@ -2,13 +2,10 @@ import type { Account } from '../../accounts/types.js'
2
2
  import type { EstimateGasParameters } from '../../actions/public/estimateGas.js'
3
3
  import type { BaseError } from '../../errors/base.js'
4
4
  import { EstimateGasExecutionError } from '../../errors/estimateGas.js'
5
+ import { UnknownNodeError } from '../../errors/node.js'
5
6
  import type { Chain } from '../../types/chain.js'
6
7
 
7
- import {
8
- type GetNodeErrorParameters,
9
- containsNodeError,
10
- getNodeError,
11
- } from './getNodeError.js'
8
+ import { type GetNodeErrorParameters, getNodeError } from './getNodeError.js'
12
9
 
13
10
  export function getEstimateGasError(
14
11
  err: BaseError,
@@ -21,9 +18,8 @@ export function getEstimateGasError(
21
18
  docsPath?: string
22
19
  },
23
20
  ) {
24
- let cause = err
25
- if (containsNodeError(err))
26
- cause = getNodeError(err, args as GetNodeErrorParameters)
21
+ let cause = getNodeError(err, args as GetNodeErrorParameters)
22
+ if (cause instanceof UnknownNodeError) cause = err
27
23
  return new EstimateGasExecutionError(cause, {
28
24
  docsPath,
29
25
  ...args,
@@ -1,5 +1,5 @@
1
1
  import type { SendTransactionParameters } from '../../actions/wallet/sendTransaction.js'
2
- import type { BaseError } from '../../errors/base.js'
2
+ import { BaseError } from '../../errors/base.js'
3
3
  import {
4
4
  ExecutionRevertedError,
5
5
  FeeCapTooHighError,
@@ -31,8 +31,22 @@ export function containsNodeError(err: BaseError) {
31
31
  export type GetNodeErrorParameters = Partial<SendTransactionParameters<any>>
32
32
 
33
33
  export function getNodeError(err: BaseError, args: GetNodeErrorParameters) {
34
- const message = err.details.toLowerCase()
35
- if (FeeCapTooHighError.nodeMessage.test(message))
34
+ const message = (err.details || '').toLowerCase()
35
+
36
+ const executionRevertedError = err.walk(
37
+ (e) => (e as { code: number }).code === ExecutionRevertedError.code,
38
+ )
39
+ if (executionRevertedError instanceof BaseError) {
40
+ return new ExecutionRevertedError({
41
+ cause: err,
42
+ message: executionRevertedError.details,
43
+ })
44
+ } else if (ExecutionRevertedError.nodeMessage.test(message))
45
+ return new ExecutionRevertedError({
46
+ cause: err,
47
+ message: err.details,
48
+ })
49
+ else if (FeeCapTooHighError.nodeMessage.test(message))
36
50
  return new FeeCapTooHighError({
37
51
  cause: err,
38
52
  maxFeePerGas: args?.maxFeePerGas,
@@ -62,16 +76,7 @@ export function getNodeError(err: BaseError, args: GetNodeErrorParameters) {
62
76
  maxFeePerGas: args?.maxFeePerGas,
63
77
  maxPriorityFeePerGas: args?.maxPriorityFeePerGas,
64
78
  })
65
- else if (
66
- message.match(ExecutionRevertedError.nodeMessage) ||
67
- ('code' in (err.cause as BaseError) &&
68
- (err.cause as { code: number })?.code === ExecutionRevertedError.code)
69
- )
70
- return new ExecutionRevertedError({
71
- cause: err,
72
- message: (err.cause as BaseError).details || err.details,
73
- })
74
79
  return new UnknownNodeError({
75
- cause: (err.cause as BaseError).cause as BaseError,
80
+ cause: err,
76
81
  })
77
82
  }
@@ -1,14 +1,11 @@
1
1
  import type { Account } from '../../accounts/types.js'
2
2
  import type { SendTransactionParameters } from '../../actions/wallet/sendTransaction.js'
3
3
  import type { BaseError } from '../../errors/base.js'
4
+ import { UnknownNodeError } from '../../errors/node.js'
4
5
  import { TransactionExecutionError } from '../../errors/transaction.js'
5
6
  import type { Chain } from '../../types/chain.js'
6
7
 
7
- import {
8
- type GetNodeErrorParameters,
9
- containsNodeError,
10
- getNodeError,
11
- } from './getNodeError.js'
8
+ import { type GetNodeErrorParameters, getNodeError } from './getNodeError.js'
12
9
 
13
10
  export type GetTransactionErrorParameters = Omit<
14
11
  SendTransactionParameters,
@@ -23,9 +20,8 @@ export function getTransactionError(
23
20
  err: BaseError,
24
21
  { docsPath, ...args }: GetTransactionErrorParameters,
25
22
  ) {
26
- let cause = err
27
- if (containsNodeError(err))
28
- cause = getNodeError(err, args as GetNodeErrorParameters)
23
+ let cause = getNodeError(err, args as GetNodeErrorParameters)
24
+ if (cause instanceof UnknownNodeError) cause = err
29
25
  return new TransactionExecutionError(cause, {
30
26
  docsPath,
31
27
  ...args,
package/src/utils/rpc.ts CHANGED
@@ -1,4 +1,5 @@
1
- import type { MessageEvent, WebSocket } from 'isomorphic-ws'
1
+ import WebSocket from 'isomorphic-ws'
2
+ import type { MessageEvent } from 'isomorphic-ws'
2
3
 
3
4
  import {
4
5
  HttpRequestError,
@@ -40,7 +41,7 @@ type Subscription<TResult, TError> = {
40
41
  )
41
42
  }
42
43
 
43
- export type RpcRequest = { method: string; params?: any }
44
+ export type RpcRequest = { method: string; params?: any; id?: number }
44
45
 
45
46
  export type RpcResponse<TResult = any, TError = any> = {
46
47
  jsonrpc: `${number}`
@@ -82,11 +83,11 @@ async function http<TBody extends RpcRequest | RpcRequest[]>(
82
83
  ? stringify(
83
84
  body.map((body) => ({
84
85
  jsonrpc: '2.0',
85
- id: id++,
86
+ id: body.id ?? id++,
86
87
  ...body,
87
88
  })),
88
89
  )
89
- : stringify({ jsonrpc: '2.0', id: id++, ...body }),
90
+ : stringify({ jsonrpc: '2.0', id: body.id ?? id++, ...body }),
90
91
  headers: {
91
92
  ...headers,
92
93
  'Content-Type': 'application/json',
@@ -144,10 +145,10 @@ export type Socket = WebSocket & {
144
145
  subscriptions: CallbackMap
145
146
  }
146
147
 
147
- const sockets = /*#__PURE__*/ new Map<string, Socket>()
148
+ export const socketsCache = /*#__PURE__*/ new Map<string, Socket>()
148
149
 
149
150
  export async function getSocket(url: string) {
150
- let socket = sockets.get(url)
151
+ let socket = socketsCache.get(url)
151
152
 
152
153
  // If the socket already exists, return it.
153
154
  if (socket) return socket
@@ -155,18 +156,6 @@ export async function getSocket(url: string) {
155
156
  const { schedule } = createBatchScheduler<undefined, [Socket]>({
156
157
  id: url,
157
158
  fn: async () => {
158
- let WebSocket = await import('isomorphic-ws')
159
- // Workaround for Vite.
160
- // https://github.com/vitejs/vite/issues/9703
161
- // TODO: Remove when issue is resolved.
162
- if (
163
- (WebSocket as unknown as { default?: typeof WebSocket }).default
164
- ?.constructor
165
- )
166
- WebSocket = (WebSocket as unknown as { default: typeof WebSocket })
167
- .default
168
- else WebSocket = WebSocket.WebSocket
169
-
170
159
  const webSocket = new WebSocket(url)
171
160
 
172
161
  // Set up a cache for incoming "synchronous" requests.
@@ -185,7 +174,7 @@ export async function getSocket(url: string) {
185
174
  if (!isSubscription) cache.delete(id)
186
175
  }
187
176
  const onClose = () => {
188
- sockets.delete(url)
177
+ socketsCache.delete(url)
189
178
  webSocket.removeEventListener('close', onClose)
190
179
  webSocket.removeEventListener('message', onMessage)
191
180
  }
@@ -208,7 +197,7 @@ export async function getSocket(url: string) {
208
197
  requests,
209
198
  subscriptions,
210
199
  })
211
- sockets.set(url, socket)
200
+ socketsCache.set(url, socket)
212
201
 
213
202
  return [socket]
214
203
  },