viem 2.38.3 → 2.38.5

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 (126) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/_cjs/actions/public/call.js +1 -1
  3. package/_cjs/actions/public/call.js.map +1 -1
  4. package/_cjs/actions/public/createAccessList.js +1 -1
  5. package/_cjs/actions/public/createAccessList.js.map +1 -1
  6. package/_cjs/actions/public/estimateGas.js +15 -6
  7. package/_cjs/actions/public/estimateGas.js.map +1 -1
  8. package/_cjs/actions/public/simulateBlocks.js +1 -0
  9. package/_cjs/actions/public/simulateBlocks.js.map +1 -1
  10. package/_cjs/actions/wallet/prepareTransactionRequest.js +2 -3
  11. package/_cjs/actions/wallet/prepareTransactionRequest.js.map +1 -1
  12. package/_cjs/actions/wallet/sendTransaction.js +1 -1
  13. package/_cjs/actions/wallet/sendTransaction.js.map +1 -1
  14. package/_cjs/actions/wallet/sendTransactionSync.js +1 -1
  15. package/_cjs/actions/wallet/sendTransactionSync.js.map +1 -1
  16. package/_cjs/actions/wallet/signTransaction.js +4 -1
  17. package/_cjs/actions/wallet/signTransaction.js.map +1 -1
  18. package/_cjs/chains/definitions/0gTestnet.js +22 -0
  19. package/_cjs/chains/definitions/0gTestnet.js.map +1 -0
  20. package/_cjs/chains/definitions/gatechain.js +24 -0
  21. package/_cjs/chains/definitions/gatechain.js.map +1 -0
  22. package/_cjs/chains/definitions/hashkeyChainTestnet.js +3 -3
  23. package/_cjs/chains/definitions/hashkeyChainTestnet.js.map +1 -1
  24. package/_cjs/chains/definitions/nomina.js +27 -0
  25. package/_cjs/chains/definitions/nomina.js.map +1 -0
  26. package/_cjs/chains/definitions/pgnTestnet.js +1 -1
  27. package/_cjs/chains/definitions/pgnTestnet.js.map +1 -1
  28. package/_cjs/chains/definitions/quai.js +25 -0
  29. package/_cjs/chains/definitions/quai.js.map +1 -0
  30. package/_cjs/chains/definitions/quaiTestnet.js +25 -0
  31. package/_cjs/chains/definitions/quaiTestnet.js.map +1 -0
  32. package/_cjs/chains/definitions/sepolia.js +1 -1
  33. package/_cjs/chains/definitions/sepolia.js.map +1 -1
  34. package/_cjs/chains/index.js +24 -13
  35. package/_cjs/chains/index.js.map +1 -1
  36. package/_cjs/errors/version.js +1 -1
  37. package/_cjs/linea/actions/estimateGas.js +1 -1
  38. package/_cjs/linea/actions/estimateGas.js.map +1 -1
  39. package/_cjs/utils/formatters/transactionRequest.js +2 -0
  40. package/_cjs/utils/formatters/transactionRequest.js.map +1 -1
  41. package/_esm/accounts/utils/signTypedData.js +2 -2
  42. package/_esm/actions/public/call.js +1 -1
  43. package/_esm/actions/public/call.js.map +1 -1
  44. package/_esm/actions/public/createAccessList.js +1 -1
  45. package/_esm/actions/public/createAccessList.js.map +1 -1
  46. package/_esm/actions/public/estimateGas.js +17 -9
  47. package/_esm/actions/public/estimateGas.js.map +1 -1
  48. package/_esm/actions/public/simulateBlocks.js +1 -0
  49. package/_esm/actions/public/simulateBlocks.js.map +1 -1
  50. package/_esm/actions/wallet/prepareTransactionRequest.js +2 -3
  51. package/_esm/actions/wallet/prepareTransactionRequest.js.map +1 -1
  52. package/_esm/actions/wallet/sendTransaction.js +1 -1
  53. package/_esm/actions/wallet/sendTransaction.js.map +1 -1
  54. package/_esm/actions/wallet/sendTransactionSync.js +1 -1
  55. package/_esm/actions/wallet/sendTransactionSync.js.map +1 -1
  56. package/_esm/actions/wallet/signTransaction.js +4 -1
  57. package/_esm/actions/wallet/signTransaction.js.map +1 -1
  58. package/_esm/chains/definitions/0gTestnet.js +19 -0
  59. package/_esm/chains/definitions/0gTestnet.js.map +1 -0
  60. package/_esm/chains/definitions/gatechain.js +21 -0
  61. package/_esm/chains/definitions/gatechain.js.map +1 -0
  62. package/_esm/chains/definitions/hashkeyChainTestnet.js +3 -3
  63. package/_esm/chains/definitions/hashkeyChainTestnet.js.map +1 -1
  64. package/_esm/chains/definitions/nomina.js +24 -0
  65. package/_esm/chains/definitions/nomina.js.map +1 -0
  66. package/_esm/chains/definitions/pgnTestnet.js +1 -1
  67. package/_esm/chains/definitions/pgnTestnet.js.map +1 -1
  68. package/_esm/chains/definitions/quai.js +22 -0
  69. package/_esm/chains/definitions/quai.js.map +1 -0
  70. package/_esm/chains/definitions/quaiTestnet.js +22 -0
  71. package/_esm/chains/definitions/quaiTestnet.js.map +1 -0
  72. package/_esm/chains/definitions/sepolia.js +1 -1
  73. package/_esm/chains/definitions/sepolia.js.map +1 -1
  74. package/_esm/chains/index.js +6 -0
  75. package/_esm/chains/index.js.map +1 -1
  76. package/_esm/errors/version.js +1 -1
  77. package/_esm/linea/actions/estimateGas.js +1 -1
  78. package/_esm/linea/actions/estimateGas.js.map +1 -1
  79. package/_esm/utils/formatters/transactionRequest.js +2 -0
  80. package/_esm/utils/formatters/transactionRequest.js.map +1 -1
  81. package/_types/accounts/utils/signTypedData.d.ts +2 -2
  82. package/_types/actions/public/estimateGas.d.ts +2 -0
  83. package/_types/actions/public/estimateGas.d.ts.map +1 -1
  84. package/_types/actions/public/simulateBlocks.d.ts.map +1 -1
  85. package/_types/actions/wallet/prepareTransactionRequest.d.ts.map +1 -1
  86. package/_types/actions/wallet/signTransaction.d.ts.map +1 -1
  87. package/_types/chains/definitions/0gTestnet.d.ts +39 -0
  88. package/_types/chains/definitions/0gTestnet.d.ts.map +1 -0
  89. package/_types/chains/definitions/gatechain.d.ts +41 -0
  90. package/_types/chains/definitions/gatechain.d.ts.map +1 -0
  91. package/_types/chains/definitions/hashkeyChainTestnet.d.ts +3 -3
  92. package/_types/chains/definitions/nomina.d.ts +40 -0
  93. package/_types/chains/definitions/nomina.d.ts.map +1 -0
  94. package/_types/chains/definitions/pgnTestnet.d.ts +1 -1
  95. package/_types/chains/definitions/quai.d.ts +40 -0
  96. package/_types/chains/definitions/quai.d.ts.map +1 -0
  97. package/_types/chains/definitions/quaiTestnet.d.ts +40 -0
  98. package/_types/chains/definitions/quaiTestnet.d.ts.map +1 -0
  99. package/_types/chains/definitions/sepolia.d.ts +1 -1
  100. package/_types/chains/index.d.ts +6 -0
  101. package/_types/chains/index.d.ts.map +1 -1
  102. package/_types/errors/version.d.ts +1 -1
  103. package/_types/utils/formatters/transactionRequest.d.ts +5 -2
  104. package/_types/utils/formatters/transactionRequest.d.ts.map +1 -1
  105. package/accounts/utils/signTypedData.ts +2 -2
  106. package/actions/public/call.ts +1 -1
  107. package/actions/public/createAccessList.ts +1 -1
  108. package/actions/public/estimateGas.ts +21 -9
  109. package/actions/public/simulateBlocks.ts +1 -0
  110. package/actions/wallet/prepareTransactionRequest.ts +2 -3
  111. package/actions/wallet/sendTransaction.ts +1 -1
  112. package/actions/wallet/sendTransactionSync.ts +1 -1
  113. package/actions/wallet/signTransaction.ts +4 -1
  114. package/chains/definitions/0gTestnet.ts +19 -0
  115. package/chains/definitions/gatechain.ts +21 -0
  116. package/chains/definitions/hashkeyChainTestnet.ts +3 -3
  117. package/chains/definitions/nomina.ts +24 -0
  118. package/chains/definitions/pgnTestnet.ts +1 -1
  119. package/chains/definitions/quai.ts +22 -0
  120. package/chains/definitions/quaiTestnet.ts +22 -0
  121. package/chains/definitions/sepolia.ts +1 -1
  122. package/chains/index.ts +6 -0
  123. package/errors/version.ts +1 -1
  124. package/linea/actions/estimateGas.ts +1 -1
  125. package/package.json +1 -1
  126. package/utils/formatters/transactionRequest.ts +3 -1
@@ -248,11 +248,11 @@ export async function sendTransactionSync<
248
248
  // Pick out extra data that might exist on the chain's transaction request type.
249
249
  ...extract(rest, { format: chainFormat }),
250
250
  accessList,
251
+ account,
251
252
  authorizationList,
252
253
  blobs,
253
254
  chainId,
254
255
  data,
255
- from: account?.address,
256
256
  gas,
257
257
  gasPrice,
258
258
  maxFeePerBlobGas,
@@ -173,7 +173,10 @@ export async function signTransaction<
173
173
  params: [
174
174
  {
175
175
  ...format(
176
- transaction as unknown as TransactionRequest,
176
+ {
177
+ ...transaction,
178
+ account,
179
+ } as unknown as TransactionRequest,
177
180
  'signTransaction',
178
181
  ),
179
182
  chainId: numberToHex(chainId),
@@ -0,0 +1,19 @@
1
+ import { defineChain } from '../../utils/chain/defineChain.js'
2
+
3
+ export const zeroGTestnet = /*#__PURE__*/ defineChain({
4
+ id: 16_602,
5
+ name: '0G Galileo Testnet',
6
+ nativeCurrency: { name: 'A0GI', symbol: 'A0GI', decimals: 18 },
7
+ rpcUrls: {
8
+ default: {
9
+ http: ['https://evmrpc-testnet.0g.ai'],
10
+ },
11
+ },
12
+ blockExplorers: {
13
+ default: {
14
+ name: '0G BlockChain Explorer',
15
+ url: 'https://chainscan-galileo.0g.ai',
16
+ },
17
+ },
18
+ testnet: true,
19
+ })
@@ -0,0 +1,21 @@
1
+ import { defineChain } from '../../utils/chain/defineChain.js'
2
+
3
+ export const gatechain = /*#__PURE__*/ defineChain({
4
+ id: 86,
5
+ name: 'GateChain Mainnet',
6
+ nativeCurrency: { name: 'GateChainToken', symbol: 'GT', decimals: 18 },
7
+ rpcUrls: {
8
+ default: {
9
+ http: ['https://evm.nodeinfo.cc'],
10
+ webSocket: ['wss://evm-ws.gatenode.cc'],
11
+ },
12
+ },
13
+ blockExplorers: {
14
+ default: {
15
+ name: 'Gate Scan',
16
+ url: 'https://www.gatescan.org',
17
+ apiUrl: 'https://gatescan.org/api',
18
+ },
19
+ },
20
+ testnet: false,
21
+ })
@@ -10,13 +10,13 @@ export const hashkeyTestnet = /*#__PURE__*/ defineChain({
10
10
  },
11
11
  rpcUrls: {
12
12
  default: {
13
- http: ['https://hashkeychain-testnet.alt.technology'],
13
+ http: ['https://testnet.hsk.xyz'],
14
14
  },
15
15
  },
16
16
  blockExplorers: {
17
17
  default: {
18
- name: 'HashKey Chain Explorer',
19
- url: 'https://hashkeychain-testnet-explorer.alt.technology',
18
+ name: 'HashKey Chain Testnet explorer',
19
+ url: 'https://testnet-explorer.hsk.xyz',
20
20
  },
21
21
  },
22
22
  testnet: true,
@@ -0,0 +1,24 @@
1
+ import { defineChain } from '../../utils/chain/defineChain.js'
2
+
3
+ export const nomina = /*#__PURE__*/ defineChain({
4
+ id: 166,
5
+ name: 'Nomina',
6
+ nativeCurrency: {
7
+ name: 'Nomina',
8
+ symbol: 'NOM',
9
+ decimals: 18,
10
+ },
11
+ rpcUrls: {
12
+ default: {
13
+ http: ['https://mainnet.nomina.io'],
14
+ webSocket: ['wss://mainnet.nomina.io'],
15
+ },
16
+ },
17
+ blockExplorers: {
18
+ default: {
19
+ name: 'Nomina Explorer',
20
+ url: 'https://nomscan.io',
21
+ },
22
+ },
23
+ testnet: false,
24
+ })
@@ -6,7 +6,7 @@ const sourceId = 11_155_111 // sepolia
6
6
  export const pgnTestnet = /*#__PURE__*/ defineChain({
7
7
  id: 58008,
8
8
  network: 'pgn-testnet',
9
- name: 'PGN ',
9
+ name: 'PGN',
10
10
  nativeCurrency: { name: 'Ether', symbol: 'ETH', decimals: 18 },
11
11
  rpcUrls: {
12
12
  default: {
@@ -0,0 +1,22 @@
1
+ import { defineChain } from '../../utils/chain/defineChain.js'
2
+
3
+ export const quai = /*#__PURE__*/ defineChain({
4
+ id: 9,
5
+ name: 'Quai Network Mainnet',
6
+ nativeCurrency: {
7
+ decimals: 18,
8
+ name: 'Quai',
9
+ symbol: 'QUAI',
10
+ },
11
+ rpcUrls: {
12
+ default: { http: ['https://rpc.quai.network/cyprus1'] },
13
+ },
14
+ blockExplorers: {
15
+ default: {
16
+ name: 'Quaiscan',
17
+ url: 'https://quaiscan.io',
18
+ apiUrl: 'https://quaiscan.io/api',
19
+ },
20
+ },
21
+ testnet: false,
22
+ })
@@ -0,0 +1,22 @@
1
+ import { defineChain } from '../../utils/chain/defineChain.js'
2
+
3
+ export const quaiTestnet = /*#__PURE__*/ defineChain({
4
+ id: 15000,
5
+ name: 'Quai Network Testnet',
6
+ nativeCurrency: {
7
+ decimals: 18,
8
+ name: 'Quai',
9
+ symbol: 'QUAI',
10
+ },
11
+ rpcUrls: {
12
+ default: { http: ['https://orchard.rpc.quai.network/cyprus1'] },
13
+ },
14
+ blockExplorers: {
15
+ default: {
16
+ name: 'Orchard Quaiscan',
17
+ url: 'https://orchard.quaiscan.io',
18
+ apiUrl: 'https://orchard.quaiscan.io/api',
19
+ },
20
+ },
21
+ testnet: true,
22
+ })
@@ -6,7 +6,7 @@ export const sepolia = /*#__PURE__*/ defineChain({
6
6
  nativeCurrency: { name: 'Sepolia Ether', symbol: 'ETH', decimals: 18 },
7
7
  rpcUrls: {
8
8
  default: {
9
- http: ['https://sepolia.drpc.org'],
9
+ http: ['https://11155111.rpc.thirdweb.com'],
10
10
  },
11
11
  },
12
12
  blockExplorers: {
package/chains/index.ts CHANGED
@@ -4,8 +4,10 @@ export {
4
4
  /** @deprecated Use `zeroGGalileoTestnet` instead. */
5
5
  zeroG,
6
6
  } from './definitions/0g.js'
7
+ /** @deprecated Use `zeroGTestnet` instead. */
7
8
  export { zeroGGalileoTestnet } from './definitions/0gGalileoTestnet.js'
8
9
  export { zeroGMainnet } from './definitions/0gMainnet.js'
10
+ export { zeroGTestnet } from './definitions/0gTestnet.js'
9
11
  export { fireChain } from './definitions/5ireChain.js'
10
12
  export { abey } from './definitions/abey.js'
11
13
  export { abstract } from './definitions/abstract.js'
@@ -220,6 +222,7 @@ export { fuseSparknet } from './definitions/fuseSparknet.js'
220
222
  export { fusion } from './definitions/fusion.js'
221
223
  export { fusionTestnet } from './definitions/fusionTestnet.js'
222
224
  export { garnet } from './definitions/garnet.js'
225
+ export { gatechain } from './definitions/gatechain.js'
223
226
  export { geist } from './definitions/geist.js'
224
227
  export { genesys } from './definitions/genesys.js'
225
228
  export { giwaSepolia } from './definitions/giwaSepolia.js'
@@ -406,6 +409,7 @@ export { nexi } from './definitions/nexi.js'
406
409
  export { nexilix } from './definitions/nexilix.js'
407
410
  export { nibiru } from './definitions/nibiru.js'
408
411
  export { nitrographTestnet } from './definitions/nitrographTestnet.js'
412
+ export { nomina } from './definitions/nomina.js'
409
413
  export { oasisTestnet } from './definitions/oasisTestnet.js'
410
414
  export { oasys } from './definitions/oasys.js'
411
415
  export { odysseyTestnet } from './definitions/odysseyTestnet.js'
@@ -464,6 +468,8 @@ export { pyrope } from './definitions/pyrope.js'
464
468
  export { ql1 } from './definitions/ql1.js'
465
469
  export { qMainnet } from './definitions/qMainnet.js'
466
470
  export { qTestnet } from './definitions/qTestnet.js'
471
+ export { quai } from './definitions/quai.js'
472
+ export { quaiTestnet } from './definitions/quaiTestnet.js'
467
473
  export { real } from './definitions/real.js'
468
474
  export { redbellyMainnet } from './definitions/redbellyMainnet.js'
469
475
  export { redbellyTestnet } from './definitions/redbellyTestnet.js'
package/errors/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = '2.38.3'
1
+ export const version = '2.38.5'
@@ -93,7 +93,7 @@ export async function estimateGas<
93
93
  {
94
94
  // Pick out extra data that might exist on the chain's transaction request type.
95
95
  ...extract(rest, { format: chainFormat }),
96
- from: account?.address,
96
+ account,
97
97
  accessList,
98
98
  data,
99
99
  gas,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "viem",
3
3
  "description": "TypeScript Interface for Ethereum",
4
- "version": "2.38.3",
4
+ "version": "2.38.5",
5
5
  "main": "./_cjs/index.js",
6
6
  "module": "./_esm/index.js",
7
7
  "types": "./_types/index.d.ts",
@@ -1,4 +1,5 @@
1
1
  import type { ErrorType } from '../../errors/utils.js'
2
+ import type { Account } from '../../types/account.js'
2
3
  import type { AuthorizationList } from '../../types/authorization.js'
3
4
  import type {
4
5
  Chain,
@@ -33,7 +34,7 @@ export const rpcTransactionType = {
33
34
  export type FormatTransactionRequestErrorType = ErrorType
34
35
 
35
36
  export function formatTransactionRequest(
36
- request: ExactPartial<TransactionRequest>,
37
+ request: ExactPartial<TransactionRequest> & { account?: Account | undefined },
37
38
  _?: string | undefined,
38
39
  ) {
39
40
  const rpcRequest = {} as RpcTransactionRequest
@@ -54,6 +55,7 @@ export function formatTransactionRequest(
54
55
  else rpcRequest.blobs = request.blobs
55
56
  }
56
57
  if (typeof request.data !== 'undefined') rpcRequest.data = request.data
58
+ if (request.account) rpcRequest.from = request.account.address
57
59
  if (typeof request.from !== 'undefined') rpcRequest.from = request.from
58
60
  if (typeof request.gas !== 'undefined')
59
61
  rpcRequest.gas = numberToHex(request.gas)