viem 2.9.8 → 2.9.11

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 (123) hide show
  1. package/CHANGELOG.md +35 -1
  2. package/_cjs/actions/public/call.js +6 -10
  3. package/_cjs/actions/public/call.js.map +1 -1
  4. package/_cjs/chains/definitions/dfk.js +6 -0
  5. package/_cjs/chains/definitions/dfk.js.map +1 -1
  6. package/_cjs/chains/definitions/lineaGoerli.js +30 -0
  7. package/_cjs/chains/definitions/lineaGoerli.js.map +1 -0
  8. package/_cjs/chains/definitions/lineaSepolia.js +30 -0
  9. package/_cjs/chains/definitions/lineaSepolia.js.map +1 -0
  10. package/_cjs/chains/definitions/mode.js +2 -0
  11. package/_cjs/chains/definitions/mode.js.map +1 -1
  12. package/_cjs/chains/definitions/modeTestnet.js +2 -0
  13. package/_cjs/chains/definitions/modeTestnet.js.map +1 -1
  14. package/_cjs/chains/definitions/polygonAmoy.js +6 -0
  15. package/_cjs/chains/definitions/polygonAmoy.js.map +1 -1
  16. package/_cjs/chains/definitions/polygonZkEvmCardona.js +29 -0
  17. package/_cjs/chains/definitions/polygonZkEvmCardona.js.map +1 -0
  18. package/_cjs/chains/index.js +11 -5
  19. package/_cjs/chains/index.js.map +1 -1
  20. package/_cjs/errors/version.js +1 -1
  21. package/_cjs/errors/version.js.map +1 -1
  22. package/_cjs/experimental/actions/getCallsStatus.js +1 -1
  23. package/_cjs/experimental/actions/getCallsStatus.js.map +1 -1
  24. package/_cjs/experimental/actions/getCapabilities.js +9 -1
  25. package/_cjs/experimental/actions/getCapabilities.js.map +1 -1
  26. package/_cjs/experimental/actions/sendCalls.js +12 -10
  27. package/_cjs/experimental/actions/sendCalls.js.map +1 -1
  28. package/_cjs/experimental/actions/showCallsStatus.js +13 -0
  29. package/_cjs/experimental/actions/showCallsStatus.js.map +1 -0
  30. package/_cjs/experimental/decorators/eip5792.js +3 -1
  31. package/_cjs/experimental/decorators/eip5792.js.map +1 -1
  32. package/_cjs/experimental/index.js +3 -1
  33. package/_cjs/experimental/index.js.map +1 -1
  34. package/_cjs/utils/formatters/transactionRequest.js +15 -4
  35. package/_cjs/utils/formatters/transactionRequest.js.map +1 -1
  36. package/_esm/actions/public/call.js +6 -10
  37. package/_esm/actions/public/call.js.map +1 -1
  38. package/_esm/chains/definitions/dfk.js +6 -0
  39. package/_esm/chains/definitions/dfk.js.map +1 -1
  40. package/_esm/chains/definitions/lineaGoerli.js +27 -0
  41. package/_esm/chains/definitions/lineaGoerli.js.map +1 -0
  42. package/_esm/chains/definitions/lineaSepolia.js +27 -0
  43. package/_esm/chains/definitions/lineaSepolia.js.map +1 -0
  44. package/_esm/chains/definitions/mode.js +2 -0
  45. package/_esm/chains/definitions/mode.js.map +1 -1
  46. package/_esm/chains/definitions/modeTestnet.js +2 -0
  47. package/_esm/chains/definitions/modeTestnet.js.map +1 -1
  48. package/_esm/chains/definitions/polygonAmoy.js +6 -0
  49. package/_esm/chains/definitions/polygonAmoy.js.map +1 -1
  50. package/_esm/chains/definitions/polygonZkEvmCardona.js +26 -0
  51. package/_esm/chains/definitions/polygonZkEvmCardona.js.map +1 -0
  52. package/_esm/chains/index.js +6 -1
  53. package/_esm/chains/index.js.map +1 -1
  54. package/_esm/errors/version.js +1 -1
  55. package/_esm/errors/version.js.map +1 -1
  56. package/_esm/experimental/actions/getCallsStatus.js +1 -1
  57. package/_esm/experimental/actions/getCallsStatus.js.map +1 -1
  58. package/_esm/experimental/actions/getCapabilities.js +9 -1
  59. package/_esm/experimental/actions/getCapabilities.js.map +1 -1
  60. package/_esm/experimental/actions/sendCalls.js +12 -10
  61. package/_esm/experimental/actions/sendCalls.js.map +1 -1
  62. package/_esm/experimental/actions/showCallsStatus.js +30 -0
  63. package/_esm/experimental/actions/showCallsStatus.js.map +1 -0
  64. package/_esm/experimental/decorators/eip5792.js +3 -1
  65. package/_esm/experimental/decorators/eip5792.js.map +1 -1
  66. package/_esm/experimental/index.js +1 -0
  67. package/_esm/experimental/index.js.map +1 -1
  68. package/_esm/utils/formatters/transactionRequest.js +15 -4
  69. package/_esm/utils/formatters/transactionRequest.js.map +1 -1
  70. package/_types/actions/public/call.d.ts.map +1 -1
  71. package/_types/chains/definitions/dfk.d.ts +6 -8
  72. package/_types/chains/definitions/dfk.d.ts.map +1 -1
  73. package/_types/chains/definitions/lineaGoerli.d.ts +35 -0
  74. package/_types/chains/definitions/lineaGoerli.d.ts.map +1 -0
  75. package/_types/chains/definitions/lineaSepolia.d.ts +35 -0
  76. package/_types/chains/definitions/lineaSepolia.d.ts.map +1 -0
  77. package/_types/chains/definitions/mode.d.ts +1 -1
  78. package/_types/chains/definitions/mode.d.ts.map +1 -1
  79. package/_types/chains/definitions/modeTestnet.d.ts +1 -1
  80. package/_types/chains/definitions/modeTestnet.d.ts.map +1 -1
  81. package/_types/chains/definitions/polygonAmoy.d.ts +6 -8
  82. package/_types/chains/definitions/polygonAmoy.d.ts.map +1 -1
  83. package/_types/chains/definitions/polygonZkEvmCardona.d.ts +34 -0
  84. package/_types/chains/definitions/polygonZkEvmCardona.d.ts.map +1 -0
  85. package/_types/chains/index.d.ts +6 -1
  86. package/_types/chains/index.d.ts.map +1 -1
  87. package/_types/errors/version.d.ts +1 -1
  88. package/_types/errors/version.d.ts.map +1 -1
  89. package/_types/experimental/actions/getCapabilities.d.ts +9 -2
  90. package/_types/experimental/actions/getCapabilities.d.ts.map +1 -1
  91. package/_types/experimental/actions/sendCalls.d.ts +2 -2
  92. package/_types/experimental/actions/sendCalls.d.ts.map +1 -1
  93. package/_types/experimental/actions/showCallsStatus.d.ts +34 -0
  94. package/_types/experimental/actions/showCallsStatus.d.ts.map +1 -0
  95. package/_types/experimental/decorators/eip5792.d.ts +30 -4
  96. package/_types/experimental/decorators/eip5792.d.ts.map +1 -1
  97. package/_types/experimental/index.d.ts +1 -0
  98. package/_types/experimental/index.d.ts.map +1 -1
  99. package/_types/index.d.ts +1 -1
  100. package/_types/index.d.ts.map +1 -1
  101. package/_types/types/eip1193.d.ts +29 -15
  102. package/_types/types/eip1193.d.ts.map +1 -1
  103. package/_types/utils/formatters/transactionRequest.d.ts.map +1 -1
  104. package/actions/public/call.ts +5 -11
  105. package/chains/definitions/dfk.ts +6 -0
  106. package/chains/definitions/lineaGoerli.ts +27 -0
  107. package/chains/definitions/lineaSepolia.ts +27 -0
  108. package/chains/definitions/mode.ts +3 -0
  109. package/chains/definitions/modeTestnet.ts +3 -0
  110. package/chains/definitions/polygonAmoy.ts +6 -0
  111. package/chains/definitions/polygonZkEvmCardona.ts +26 -0
  112. package/chains/index.ts +6 -1
  113. package/errors/version.ts +1 -1
  114. package/experimental/actions/getCallsStatus.ts +1 -1
  115. package/experimental/actions/getCapabilities.ts +29 -3
  116. package/experimental/actions/sendCalls.ts +14 -12
  117. package/experimental/actions/showCallsStatus.ts +48 -0
  118. package/experimental/decorators/eip5792.ts +43 -4
  119. package/experimental/index.ts +6 -0
  120. package/index.ts +1 -1
  121. package/package.json +1 -1
  122. package/types/eip1193.ts +29 -15
  123. package/utils/formatters/transactionRequest.ts +13 -6
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "viem",
3
3
  "description": "TypeScript Interface for Ethereum",
4
- "version": "2.9.8",
4
+ "version": "2.9.11",
5
5
  "main": "./_cjs/index.js",
6
6
  "module": "./_esm/index.js",
7
7
  "types": "./_types/index.d.ts",
package/types/eip1193.ts CHANGED
@@ -118,7 +118,7 @@ export type WalletCapabilitiesRecord<
118
118
  [chainId in id]: capabilities
119
119
  }
120
120
 
121
- export type WalletGetCallsStatusReceipt<quantity = Hex, status = Hex> = {
121
+ export type WalletCallReceipt<quantity = Hex, status = Hex> = {
122
122
  logs: {
123
123
  address: Hex
124
124
  data: Hex
@@ -133,7 +133,7 @@ export type WalletGetCallsStatusReceipt<quantity = Hex, status = Hex> = {
133
133
 
134
134
  export type WalletGetCallsStatusReturnType<quantity = Hex, status = Hex> = {
135
135
  status: 'PENDING' | 'CONFIRMED'
136
- receipts?: WalletGetCallsStatusReceipt<quantity, status>[] | undefined
136
+ receipts?: WalletCallReceipt<quantity, status>[] | undefined
137
137
  }
138
138
 
139
139
  export type WalletPermissionCaveat = {
@@ -153,17 +153,19 @@ export type WalletSendCallsParameters<
153
153
  capabilities extends WalletCapabilities = WalletCapabilities,
154
154
  chainId extends Hex | number = Hex,
155
155
  quantity extends Quantity | bigint = Quantity,
156
- > = {
157
- version: string
158
- chainId: chainId
159
- from: Address
160
- calls: {
161
- to: Address
162
- data: Hex
163
- value: quantity
164
- }[]
165
- capabilities?: capabilities | undefined
166
- }
156
+ > = [
157
+ {
158
+ version: string
159
+ chainId: chainId
160
+ from: Address
161
+ calls: {
162
+ to: Address
163
+ data: Hex
164
+ value: quantity
165
+ }[]
166
+ capabilities?: capabilities | undefined
167
+ },
168
+ ]
167
169
 
168
170
  export type WatchAssetParams = {
169
171
  /** Token type. */
@@ -1324,7 +1326,7 @@ export type WalletRpcSchema = [
1324
1326
  */
1325
1327
  {
1326
1328
  Method: 'wallet_getCallsStatus'
1327
- Parameters?: string
1329
+ Parameters?: [string]
1328
1330
  ReturnType: WalletGetCallsStatusReturnType
1329
1331
  },
1330
1332
  /**
@@ -1336,7 +1338,7 @@ export type WalletRpcSchema = [
1336
1338
  */
1337
1339
  {
1338
1340
  Method: 'wallet_getCapabilities'
1339
- Parameters?: undefined
1341
+ Parameters?: [Address]
1340
1342
  ReturnType: Prettify<WalletCapabilitiesRecord>
1341
1343
  },
1342
1344
  /**
@@ -1375,6 +1377,18 @@ export type WalletRpcSchema = [
1375
1377
  Parameters?: WalletSendCallsParameters
1376
1378
  ReturnType: string
1377
1379
  },
1380
+ /**
1381
+ * @description Requests for the wallet to show information about a call batch
1382
+ * that was sent via `wallet_sendCalls`.
1383
+ * @link https://eips.ethereum.org/EIPS/eip-5792
1384
+ * @example
1385
+ * provider.request({ method: 'wallet_showCallsStatus', params: ['...'] })
1386
+ */
1387
+ {
1388
+ Method: 'wallet_showCallsStatus'
1389
+ Parameters?: [string]
1390
+ ReturnType: void
1391
+ },
1378
1392
  /**
1379
1393
  * @description Switch the wallet to the given Ethereum chain.
1380
1394
  * @link https://eips.ethereum.org/EIPS/eip-3326
@@ -30,13 +30,19 @@ export type FormatTransactionRequestErrorType = ErrorType
30
30
  export function formatTransactionRequest(
31
31
  request: ExactPartial<TransactionRequest>,
32
32
  ) {
33
- const rpcRequest = { ...request } as RpcTransactionRequest
33
+ const rpcRequest = {} as RpcTransactionRequest
34
34
 
35
- if (
36
- typeof request.blobs !== 'undefined' &&
37
- typeof request.blobs[0] !== 'string'
38
- )
39
- rpcRequest.blobs = (request.blobs as ByteArray[]).map((x) => bytesToHex(x))
35
+ if (typeof request.accessList !== 'undefined')
36
+ rpcRequest.accessList = request.accessList
37
+ if (typeof request.blobs !== 'undefined') {
38
+ if (typeof request.blobs[0] !== 'string')
39
+ rpcRequest.blobs = (request.blobs as ByteArray[]).map((x) =>
40
+ bytesToHex(x),
41
+ )
42
+ else rpcRequest.blobs = request.blobs
43
+ }
44
+ if (typeof request.data !== 'undefined') rpcRequest.data = request.data
45
+ if (typeof request.from !== 'undefined') rpcRequest.from = request.from
40
46
  if (typeof request.gas !== 'undefined')
41
47
  rpcRequest.gas = numberToHex(request.gas)
42
48
  if (typeof request.gasPrice !== 'undefined')
@@ -49,6 +55,7 @@ export function formatTransactionRequest(
49
55
  rpcRequest.maxPriorityFeePerGas = numberToHex(request.maxPriorityFeePerGas)
50
56
  if (typeof request.nonce !== 'undefined')
51
57
  rpcRequest.nonce = numberToHex(request.nonce)
58
+ if (typeof request.to !== 'undefined') rpcRequest.to = request.to
52
59
  if (typeof request.type !== 'undefined')
53
60
  rpcRequest.type = rpcTransactionType[request.type]
54
61
  if (typeof request.value !== 'undefined')