viem 2.23.5 → 2.23.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/README.md +6 -0
  3. package/_cjs/actions/public/getTransaction.js.map +1 -1
  4. package/_cjs/actions/public/waitForTransactionReceipt.js.map +1 -1
  5. package/_cjs/actions/wallet/deployContract.js +1 -0
  6. package/_cjs/actions/wallet/deployContract.js.map +1 -1
  7. package/_cjs/actions/wallet/sendTransaction.js +2 -0
  8. package/_cjs/actions/wallet/sendTransaction.js.map +1 -1
  9. package/_cjs/chains/definitions/berachainBepolia.js +30 -0
  10. package/_cjs/chains/definitions/berachainBepolia.js.map +1 -0
  11. package/_cjs/chains/definitions/fluentTestnet.js +26 -0
  12. package/_cjs/chains/definitions/fluentTestnet.js.map +1 -0
  13. package/_cjs/chains/definitions/guruNetwork.js +4 -1
  14. package/_cjs/chains/definitions/guruNetwork.js.map +1 -1
  15. package/_cjs/chains/definitions/guruTestnet.js +4 -1
  16. package/_cjs/chains/definitions/guruTestnet.js.map +1 -1
  17. package/_cjs/chains/definitions/juneo.js +24 -0
  18. package/_cjs/chains/definitions/juneo.js.map +1 -0
  19. package/_cjs/chains/definitions/real.js +1 -1
  20. package/_cjs/chains/definitions/real.js.map +1 -1
  21. package/_cjs/chains/definitions/saga.js +2 -2
  22. package/_cjs/chains/definitions/saga.js.map +1 -1
  23. package/_cjs/chains/definitions/statusNetworkSepolia.js +35 -0
  24. package/_cjs/chains/definitions/statusNetworkSepolia.js.map +1 -0
  25. package/_cjs/chains/definitions/telos.js +1 -1
  26. package/_cjs/chains/definitions/telos.js.map +1 -1
  27. package/_cjs/chains/definitions/telosTestnet.js +1 -1
  28. package/_cjs/chains/index.js +20 -11
  29. package/_cjs/chains/index.js.map +1 -1
  30. package/_cjs/clients/transports/fallback.js +3 -2
  31. package/_cjs/clients/transports/fallback.js.map +1 -1
  32. package/_cjs/clients/transports/http.js +3 -1
  33. package/_cjs/clients/transports/http.js.map +1 -1
  34. package/_cjs/errors/version.js +1 -1
  35. package/_cjs/index.js +10 -9
  36. package/_cjs/index.js.map +1 -1
  37. package/_cjs/types/eip1193.js.map +1 -1
  38. package/_cjs/utils/abi/encodeFunctionResult.js +9 -3
  39. package/_cjs/utils/abi/encodeFunctionResult.js.map +1 -1
  40. package/_cjs/utils/rpc/webSocket.js +7 -1
  41. package/_cjs/utils/rpc/webSocket.js.map +1 -1
  42. package/_esm/actions/public/getTransaction.js +1 -1
  43. package/_esm/actions/public/getTransaction.js.map +1 -1
  44. package/_esm/actions/public/waitForTransactionReceipt.js.map +1 -1
  45. package/_esm/actions/wallet/deployContract.js +1 -0
  46. package/_esm/actions/wallet/deployContract.js.map +1 -1
  47. package/_esm/actions/wallet/sendTransaction.js +3 -0
  48. package/_esm/actions/wallet/sendTransaction.js.map +1 -1
  49. package/_esm/chains/definitions/berachainBepolia.js +27 -0
  50. package/_esm/chains/definitions/berachainBepolia.js.map +1 -0
  51. package/_esm/chains/definitions/fluentTestnet.js +23 -0
  52. package/_esm/chains/definitions/fluentTestnet.js.map +1 -0
  53. package/_esm/chains/definitions/guruNetwork.js +4 -1
  54. package/_esm/chains/definitions/guruNetwork.js.map +1 -1
  55. package/_esm/chains/definitions/guruTestnet.js +4 -1
  56. package/_esm/chains/definitions/guruTestnet.js.map +1 -1
  57. package/_esm/chains/definitions/juneo.js +21 -0
  58. package/_esm/chains/definitions/juneo.js.map +1 -0
  59. package/_esm/chains/definitions/real.js +1 -1
  60. package/_esm/chains/definitions/real.js.map +1 -1
  61. package/_esm/chains/definitions/saga.js +2 -2
  62. package/_esm/chains/definitions/saga.js.map +1 -1
  63. package/_esm/chains/definitions/statusNetworkSepolia.js +32 -0
  64. package/_esm/chains/definitions/statusNetworkSepolia.js.map +1 -0
  65. package/_esm/chains/definitions/telos.js +1 -1
  66. package/_esm/chains/definitions/telos.js.map +1 -1
  67. package/_esm/chains/definitions/telosTestnet.js +1 -1
  68. package/_esm/chains/index.js +4 -0
  69. package/_esm/chains/index.js.map +1 -1
  70. package/_esm/clients/transports/fallback.js +3 -3
  71. package/_esm/clients/transports/fallback.js.map +1 -1
  72. package/_esm/clients/transports/http.js +3 -1
  73. package/_esm/clients/transports/http.js.map +1 -1
  74. package/_esm/errors/version.js +1 -1
  75. package/_esm/index.js +1 -1
  76. package/_esm/index.js.map +1 -1
  77. package/_esm/types/eip1193.js.map +1 -1
  78. package/_esm/utils/abi/encodeFunctionResult.js +10 -4
  79. package/_esm/utils/abi/encodeFunctionResult.js.map +1 -1
  80. package/_esm/utils/rpc/webSocket.js +7 -1
  81. package/_esm/utils/rpc/webSocket.js.map +1 -1
  82. package/_types/actions/public/getTransaction.d.ts +2 -1
  83. package/_types/actions/public/getTransaction.d.ts.map +1 -1
  84. package/_types/actions/public/waitForTransactionReceipt.d.ts +2 -1
  85. package/_types/actions/public/waitForTransactionReceipt.d.ts.map +1 -1
  86. package/_types/actions/wallet/deployContract.d.ts.map +1 -1
  87. package/_types/actions/wallet/sendTransaction.d.ts.map +1 -1
  88. package/_types/chains/definitions/berachainBepolia.d.ts +33 -0
  89. package/_types/chains/definitions/berachainBepolia.d.ts.map +1 -0
  90. package/_types/chains/definitions/fluentTestnet.d.ts +37 -0
  91. package/_types/chains/definitions/fluentTestnet.d.ts.map +1 -0
  92. package/_types/chains/definitions/guruNetwork.d.ts +1 -1
  93. package/_types/chains/definitions/guruNetwork.d.ts.map +1 -1
  94. package/_types/chains/definitions/guruTestnet.d.ts +1 -1
  95. package/_types/chains/definitions/guruTestnet.d.ts.map +1 -1
  96. package/_types/chains/definitions/juneo.d.ts +38 -0
  97. package/_types/chains/definitions/juneo.d.ts.map +1 -0
  98. package/_types/chains/definitions/real.d.ts +1 -1
  99. package/_types/chains/definitions/saga.d.ts +2 -2
  100. package/_types/chains/definitions/statusNetworkSepolia.d.ts +37 -0
  101. package/_types/chains/definitions/statusNetworkSepolia.d.ts.map +1 -0
  102. package/_types/chains/definitions/telos.d.ts +1 -1
  103. package/_types/chains/definitions/telosTestnet.d.ts +1 -1
  104. package/_types/chains/index.d.ts +4 -0
  105. package/_types/chains/index.d.ts.map +1 -1
  106. package/_types/clients/decorators/test.d.ts +2 -2
  107. package/_types/clients/transports/fallback.d.ts +3 -0
  108. package/_types/clients/transports/fallback.d.ts.map +1 -1
  109. package/_types/clients/transports/http.d.ts +10 -5
  110. package/_types/clients/transports/http.d.ts.map +1 -1
  111. package/_types/errors/version.d.ts +1 -1
  112. package/_types/index.d.ts +1 -1
  113. package/_types/index.d.ts.map +1 -1
  114. package/_types/types/eip1193.d.ts +13 -2
  115. package/_types/types/eip1193.d.ts.map +1 -1
  116. package/_types/utils/abi/encodeFunctionResult.d.ts.map +1 -1
  117. package/_types/utils/rpc/webSocket.d.ts.map +1 -1
  118. package/actions/public/getTransaction.ts +5 -1
  119. package/actions/public/waitForTransactionReceipt.ts +2 -0
  120. package/actions/wallet/deployContract.ts +1 -0
  121. package/actions/wallet/sendTransaction.ts +3 -0
  122. package/chains/definitions/berachainBepolia.ts +27 -0
  123. package/chains/definitions/fluentTestnet.ts +23 -0
  124. package/chains/definitions/guruNetwork.ts +4 -1
  125. package/chains/definitions/guruTestnet.ts +4 -1
  126. package/chains/definitions/juneo.ts +21 -0
  127. package/chains/definitions/real.ts +1 -1
  128. package/chains/definitions/saga.ts +2 -2
  129. package/chains/definitions/statusNetworkSepolia.ts +32 -0
  130. package/chains/definitions/telos.ts +1 -1
  131. package/chains/definitions/telosTestnet.ts +1 -1
  132. package/chains/index.ts +7 -0
  133. package/clients/decorators/test.ts +2 -2
  134. package/clients/transports/fallback.ts +5 -2
  135. package/clients/transports/http.ts +24 -6
  136. package/errors/version.ts +1 -1
  137. package/index.ts +1 -0
  138. package/package.json +1 -1
  139. package/types/eip1193.ts +26 -5
  140. package/utils/abi/encodeFunctionResult.ts +7 -2
  141. package/utils/rpc/webSocket.ts +6 -1
@@ -3,6 +3,7 @@ import type { Abi, AbiStateMutability, ExtractAbiFunctions } from 'abitype'
3
3
  import {
4
4
  AbiFunctionNotFoundError,
5
5
  AbiFunctionOutputsNotFoundError,
6
+ InvalidArrayError,
6
7
  } from '../../errors/abi.js'
7
8
  import type {
8
9
  ContractFunctionName,
@@ -86,8 +87,12 @@ export function encodeFunctionResult<
86
87
  if (!abiItem.outputs)
87
88
  throw new AbiFunctionOutputsNotFoundError(abiItem.name, { docsPath })
88
89
 
89
- let values = Array.isArray(result) ? result : [result]
90
- if (abiItem.outputs.length === 0 && !values[0]) values = []
90
+ const values = (() => {
91
+ if (abiItem.outputs.length === 0) return []
92
+ if (abiItem.outputs.length === 1) return [result]
93
+ if (Array.isArray(result)) return result
94
+ throw new InvalidArrayError(result)
95
+ })()
91
96
 
92
97
  return encodeAbiParameters(abiItem.outputs, values)
93
98
  }
@@ -36,7 +36,12 @@ export async function getWebSocketRpcClient(
36
36
  onClose()
37
37
  }
38
38
  function onMessage({ data }: MessageEvent) {
39
- onResponse(JSON.parse(data))
39
+ try {
40
+ const _data = JSON.parse(data)
41
+ onResponse(_data)
42
+ } catch (error) {
43
+ onError(error as Error)
44
+ }
40
45
  }
41
46
 
42
47
  // Setup event listeners for RPC & subscription responses.