viem 2.0.0-alpha.1 → 2.0.0-alpha.10

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 (215) hide show
  1. package/_cjs/{abi.js → abi/index.js} +9 -9
  2. package/_cjs/abi/index.js.map +1 -0
  3. package/_cjs/actions/public/estimateFeesPerGas.js +3 -2
  4. package/_cjs/actions/public/estimateFeesPerGas.js.map +1 -1
  5. package/_cjs/actions/public/multicall.js.map +1 -1
  6. package/_cjs/actions/public/readContract.js.map +1 -1
  7. package/_cjs/actions/public/waitForTransactionReceipt.js +9 -4
  8. package/_cjs/actions/public/waitForTransactionReceipt.js.map +1 -1
  9. package/_cjs/actions/wallet/signTypedData.js.map +1 -1
  10. package/_cjs/actions/wallet/writeContract.js.map +1 -1
  11. package/_cjs/chains/definitions/holesky.js +21 -0
  12. package/_cjs/chains/definitions/holesky.js.map +1 -0
  13. package/_cjs/chains/definitions/kroma.js +26 -0
  14. package/_cjs/chains/definitions/kroma.js.map +1 -0
  15. package/_cjs/chains/definitions/kromaSepolia.js +26 -0
  16. package/_cjs/chains/definitions/kromaSepolia.js.map +1 -0
  17. package/_cjs/chains/index.js +8 -2
  18. package/_cjs/chains/index.js.map +1 -1
  19. package/_cjs/clients/decorators/wallet.js.map +1 -1
  20. package/_cjs/{contract.js → contract/index.js} +25 -25
  21. package/_cjs/contract/index.js.map +1 -0
  22. package/_cjs/{ens.js → ens/index.js} +9 -9
  23. package/_cjs/ens/index.js.map +1 -0
  24. package/_cjs/errors/version.js +1 -1
  25. package/_cjs/errors/version.js.map +1 -1
  26. package/_cjs/index.js.map +1 -1
  27. package/_cjs/{public.js → public/index.js} +29 -29
  28. package/_cjs/public/index.js.map +1 -0
  29. package/_cjs/{test.js → test/index.js} +29 -29
  30. package/_cjs/test/index.js.map +1 -0
  31. package/_cjs/types/eip1193.js.map +1 -1
  32. package/_cjs/utils/rpc.js +6 -3
  33. package/_cjs/utils/rpc.js.map +1 -1
  34. package/_cjs/{wallet.js → wallet/index.js} +11 -11
  35. package/_cjs/wallet/index.js.map +1 -0
  36. package/_cjs/{window.js → window/index.js} +2 -2
  37. package/_cjs/window/index.js.map +1 -0
  38. package/_esm/abi/index.js +7 -0
  39. package/_esm/abi/index.js.map +1 -0
  40. package/_esm/actions/public/estimateFeesPerGas.js +3 -2
  41. package/_esm/actions/public/estimateFeesPerGas.js.map +1 -1
  42. package/_esm/actions/public/multicall.js.map +1 -1
  43. package/_esm/actions/public/readContract.js.map +1 -1
  44. package/_esm/actions/public/waitForTransactionReceipt.js +9 -4
  45. package/_esm/actions/public/waitForTransactionReceipt.js.map +1 -1
  46. package/_esm/actions/wallet/signTypedData.js.map +1 -1
  47. package/_esm/actions/wallet/writeContract.js.map +1 -1
  48. package/_esm/chains/definitions/holesky.js +18 -0
  49. package/_esm/chains/definitions/holesky.js.map +1 -0
  50. package/_esm/chains/definitions/kroma.js +23 -0
  51. package/_esm/chains/definitions/kroma.js.map +1 -0
  52. package/_esm/chains/definitions/kromaSepolia.js +23 -0
  53. package/_esm/chains/definitions/kromaSepolia.js.map +1 -0
  54. package/_esm/chains/index.js +3 -0
  55. package/_esm/chains/index.js.map +1 -1
  56. package/_esm/clients/decorators/wallet.js.map +1 -1
  57. package/_esm/contract/index.js +26 -0
  58. package/_esm/contract/index.js.map +1 -0
  59. package/_esm/ens/index.js +9 -0
  60. package/_esm/ens/index.js.map +1 -0
  61. package/_esm/errors/version.js +1 -1
  62. package/_esm/errors/version.js.map +1 -1
  63. package/_esm/index.js.map +1 -1
  64. package/_esm/public/index.js +30 -0
  65. package/_esm/public/index.js.map +1 -0
  66. package/_esm/test/index.js +30 -0
  67. package/_esm/test/index.js.map +1 -0
  68. package/_esm/types/eip1193.js.map +1 -1
  69. package/_esm/utils/rpc.js +6 -2
  70. package/_esm/utils/rpc.js.map +1 -1
  71. package/_esm/wallet/index.js +12 -0
  72. package/_esm/wallet/index.js.map +1 -0
  73. package/_esm/window/index.js +2 -0
  74. package/_esm/window/index.js.map +1 -0
  75. package/_types/{abi.d.ts → abi/index.d.ts} +5 -5
  76. package/_types/abi/index.d.ts.map +1 -0
  77. package/_types/actions/public/estimateFeesPerGas.d.ts.map +1 -1
  78. package/_types/actions/public/multicall.d.ts +1 -1
  79. package/_types/actions/public/multicall.d.ts.map +1 -1
  80. package/_types/actions/public/readContract.d.ts +2 -1
  81. package/_types/actions/public/readContract.d.ts.map +1 -1
  82. package/_types/actions/public/waitForTransactionReceipt.d.ts.map +1 -1
  83. package/_types/actions/wallet/signTypedData.d.ts +1 -1
  84. package/_types/actions/wallet/signTypedData.d.ts.map +1 -1
  85. package/_types/actions/wallet/writeContract.d.ts +3 -3
  86. package/_types/actions/wallet/writeContract.d.ts.map +1 -1
  87. package/_types/chains/celo/formatters.d.ts +57 -57
  88. package/_types/chains/definitions/base.d.ts +171 -171
  89. package/_types/chains/definitions/baseGoerli.d.ts +171 -171
  90. package/_types/chains/definitions/celo.d.ts +171 -171
  91. package/_types/chains/definitions/celoAlfajores.d.ts +171 -171
  92. package/_types/chains/definitions/celoCannoli.d.ts +171 -171
  93. package/_types/chains/definitions/holesky.d.ts +24 -0
  94. package/_types/chains/definitions/holesky.d.ts.map +1 -0
  95. package/_types/chains/definitions/kroma.d.ts +29 -0
  96. package/_types/chains/definitions/kroma.d.ts.map +1 -0
  97. package/_types/chains/definitions/kromaSepolia.d.ts +29 -0
  98. package/_types/chains/definitions/kromaSepolia.d.ts.map +1 -0
  99. package/_types/chains/definitions/optimism.d.ts +171 -171
  100. package/_types/chains/definitions/optimismGoerli.d.ts +171 -171
  101. package/_types/chains/definitions/zora.d.ts +171 -171
  102. package/_types/chains/definitions/zoraTestnet.d.ts +171 -171
  103. package/_types/chains/index.d.ts +4 -1
  104. package/_types/chains/index.d.ts.map +1 -1
  105. package/_types/chains/optimism/formatters.d.ts +57 -57
  106. package/_types/clients/transports/webSocket.d.ts +2 -1
  107. package/_types/clients/transports/webSocket.d.ts.map +1 -1
  108. package/_types/{contract.d.ts → contract/index.d.ts} +26 -26
  109. package/_types/contract/index.d.ts.map +1 -0
  110. package/_types/ens/index.d.ts +9 -0
  111. package/_types/ens/index.d.ts.map +1 -0
  112. package/_types/errors/version.d.ts +1 -1
  113. package/_types/errors/version.d.ts.map +1 -1
  114. package/_types/index.d.ts +1 -1
  115. package/_types/index.d.ts.map +1 -1
  116. package/_types/public/index.d.ts +33 -0
  117. package/_types/public/index.d.ts.map +1 -0
  118. package/_types/test/index.d.ts +29 -0
  119. package/_types/test/index.d.ts.map +1 -0
  120. package/_types/types/contract.d.ts +1 -1
  121. package/_types/types/contract.d.ts.map +1 -1
  122. package/_types/types/eip1193.d.ts +2 -2
  123. package/_types/types/eip1193.d.ts.map +1 -1
  124. package/_types/types/multicall.d.ts +10 -4
  125. package/_types/types/multicall.d.ts.map +1 -1
  126. package/_types/types/typedData.d.ts +2 -2
  127. package/_types/types/typedData.d.ts.map +1 -1
  128. package/_types/types/utils.d.ts +12 -8
  129. package/_types/types/utils.d.ts.map +1 -1
  130. package/_types/utils/formatters/transaction.d.ts +3 -3
  131. package/_types/utils/formatters/transaction.d.ts.map +1 -1
  132. package/_types/utils/formatters/transactionRequest.d.ts +1 -1
  133. package/_types/utils/rpc.d.ts +3 -3
  134. package/_types/utils/rpc.d.ts.map +1 -1
  135. package/_types/wallet/index.d.ts +11 -0
  136. package/_types/wallet/index.d.ts.map +1 -0
  137. package/_types/window/index.d.ts +2 -0
  138. package/_types/window/index.d.ts.map +1 -0
  139. package/{abi.ts → abi/index.ts} +15 -13
  140. package/abi/package.json +6 -0
  141. package/accounts/package.json +6 -0
  142. package/actions/package.json +6 -0
  143. package/actions/public/estimateFeesPerGas.ts +3 -2
  144. package/actions/public/multicall.ts +2 -2
  145. package/actions/public/readContract.ts +4 -1
  146. package/actions/public/waitForTransactionReceipt.ts +13 -4
  147. package/actions/wallet/signTypedData.ts +4 -2
  148. package/actions/wallet/writeContract.ts +30 -23
  149. package/chains/definitions/holesky.ts +18 -0
  150. package/chains/definitions/kroma.ts +23 -0
  151. package/chains/definitions/kromaSepolia.ts +23 -0
  152. package/chains/index.ts +4 -1
  153. package/chains/package.json +6 -0
  154. package/chains/utils/package.json +6 -0
  155. package/clients/decorators/wallet.ts +1 -1
  156. package/clients/package.json +6 -0
  157. package/clients/transports/webSocket.ts +1 -1
  158. package/{contract.ts → contract/index.ts} +27 -25
  159. package/contract/package.json +6 -0
  160. package/{ens.ts → ens/index.ts} +8 -8
  161. package/ens/package.json +6 -0
  162. package/errors/version.ts +1 -1
  163. package/index.ts +2 -0
  164. package/package.json +32 -31
  165. package/{public.ts → public/index.ts} +30 -28
  166. package/public/package.json +6 -0
  167. package/test/index.ts +85 -0
  168. package/test/package.json +6 -0
  169. package/types/contract.ts +1 -1
  170. package/types/eip1193.ts +5 -3
  171. package/types/multicall.ts +41 -22
  172. package/types/typedData.ts +3 -2
  173. package/types/utils.ts +32 -11
  174. package/utils/formatters/transaction.ts +2 -2
  175. package/utils/package.json +6 -0
  176. package/utils/rpc.ts +6 -3
  177. package/{wallet.ts → wallet/index.ts} +15 -10
  178. package/wallet/package.json +6 -0
  179. package/window/index.ts +1 -0
  180. package/window/package.json +6 -0
  181. package/_cjs/abi.js.map +0 -1
  182. package/_cjs/contract.js.map +0 -1
  183. package/_cjs/ens.js.map +0 -1
  184. package/_cjs/public.js.map +0 -1
  185. package/_cjs/test.js.map +0 -1
  186. package/_cjs/wallet.js.map +0 -1
  187. package/_cjs/window.js.map +0 -1
  188. package/_esm/abi.js +0 -6
  189. package/_esm/abi.js.map +0 -1
  190. package/_esm/contract.js +0 -25
  191. package/_esm/contract.js.map +0 -1
  192. package/_esm/ens.js +0 -9
  193. package/_esm/ens.js.map +0 -1
  194. package/_esm/public.js +0 -29
  195. package/_esm/public.js.map +0 -1
  196. package/_esm/test.js +0 -29
  197. package/_esm/test.js.map +0 -1
  198. package/_esm/wallet.js +0 -11
  199. package/_esm/wallet.js.map +0 -1
  200. package/_esm/window.js +0 -2
  201. package/_esm/window.js.map +0 -1
  202. package/_types/abi.d.ts.map +0 -1
  203. package/_types/contract.d.ts.map +0 -1
  204. package/_types/ens.d.ts +0 -9
  205. package/_types/ens.d.ts.map +0 -1
  206. package/_types/public.d.ts +0 -33
  207. package/_types/public.d.ts.map +0 -1
  208. package/_types/test.d.ts +0 -29
  209. package/_types/test.d.ts.map +0 -1
  210. package/_types/wallet.d.ts +0 -11
  211. package/_types/wallet.d.ts.map +0 -1
  212. package/_types/window.d.ts +0 -2
  213. package/_types/window.d.ts.map +0 -1
  214. package/test.ts +0 -83
  215. package/window.ts +0 -1
@@ -1,127 +1,129 @@
1
+ // TODO(v2): Remove this entrypoint. Favor importing from actions entrypoint (`viem/actions`).
2
+
1
3
  export {
2
4
  call,
3
5
  type CallParameters,
4
6
  type CallReturnType,
5
- } from './actions/public/call.js'
7
+ } from '../actions/public/call.js'
6
8
  export {
7
9
  createBlockFilter,
8
10
  type CreateBlockFilterReturnType,
9
- } from './actions/public/createBlockFilter.js'
11
+ } from '../actions/public/createBlockFilter.js'
10
12
  export {
11
13
  createEventFilter,
12
14
  type CreateEventFilterParameters,
13
15
  type CreateEventFilterReturnType,
14
- } from './actions/public/createEventFilter.js'
16
+ } from '../actions/public/createEventFilter.js'
15
17
  export {
16
18
  createPendingTransactionFilter,
17
19
  type CreatePendingTransactionFilterReturnType,
18
- } from './actions/public/createPendingTransactionFilter.js'
20
+ } from '../actions/public/createPendingTransactionFilter.js'
19
21
  export {
20
22
  estimateGas,
21
23
  type EstimateGasParameters,
22
24
  type EstimateGasReturnType,
23
- } from './actions/public/estimateGas.js'
25
+ } from '../actions/public/estimateGas.js'
24
26
  export {
25
27
  getBalance,
26
28
  type GetBalanceParameters,
27
29
  type GetBalanceReturnType,
28
- } from './actions/public/getBalance.js'
30
+ } from '../actions/public/getBalance.js'
29
31
  export {
30
32
  getBlock,
31
33
  type GetBlockParameters,
32
34
  type GetBlockReturnType,
33
- } from './actions/public/getBlock.js'
35
+ } from '../actions/public/getBlock.js'
34
36
  export {
35
37
  getBlockNumber,
36
38
  getBlockNumberCache,
37
39
  type GetBlockNumberParameters,
38
40
  type GetBlockNumberReturnType,
39
- } from './actions/public/getBlockNumber.js'
41
+ } from '../actions/public/getBlockNumber.js'
40
42
  export {
41
43
  getBlockTransactionCount,
42
44
  type GetBlockTransactionCountParameters,
43
45
  type GetBlockTransactionCountReturnType,
44
- } from './actions/public/getBlockTransactionCount.js'
46
+ } from '../actions/public/getBlockTransactionCount.js'
45
47
  export {
46
48
  getBytecode,
47
49
  type GetBytecodeParameters,
48
50
  type GetBytecodeReturnType,
49
- } from './actions/public/getBytecode.js'
50
- export { getChainId } from './actions/public/getChainId.js'
51
+ } from '../actions/public/getBytecode.js'
52
+ export { getChainId } from '../actions/public/getChainId.js'
51
53
  export {
52
54
  getFeeHistory,
53
55
  type GetFeeHistoryParameters,
54
56
  type GetFeeHistoryReturnType,
55
- } from './actions/public/getFeeHistory.js'
57
+ } from '../actions/public/getFeeHistory.js'
56
58
  export {
57
59
  estimateFeesPerGas,
58
60
  type EstimateFeesPerGasParameters,
59
61
  type EstimateFeesPerGasReturnType,
60
- } from './actions/public/estimateFeesPerGas.js'
62
+ } from '../actions/public/estimateFeesPerGas.js'
61
63
  export {
62
64
  getFilterChanges,
63
65
  type GetFilterChangesParameters,
64
66
  type GetFilterChangesReturnType,
65
- } from './actions/public/getFilterChanges.js'
67
+ } from '../actions/public/getFilterChanges.js'
66
68
  export {
67
69
  getFilterLogs,
68
70
  type GetFilterLogsParameters,
69
71
  type GetFilterLogsReturnType,
70
- } from './actions/public/getFilterLogs.js'
71
- export { getLogs } from './actions/public/getLogs.js'
72
+ } from '../actions/public/getFilterLogs.js'
73
+ export { getLogs } from '../actions/public/getLogs.js'
72
74
  export {
73
75
  getGasPrice,
74
76
  type GetGasPriceReturnType,
75
- } from './actions/public/getGasPrice.js'
77
+ } from '../actions/public/getGasPrice.js'
76
78
  export {
77
79
  estimateMaxPriorityFeePerGas,
78
80
  type EstimateMaxPriorityFeePerGasParameters,
79
81
  type EstimateMaxPriorityFeePerGasReturnType,
80
- } from './actions/public/estimateMaxPriorityFeePerGas.js'
82
+ } from '../actions/public/estimateMaxPriorityFeePerGas.js'
81
83
  export {
82
84
  getTransaction,
83
85
  type GetTransactionParameters,
84
86
  type GetTransactionReturnType,
85
- } from './actions/public/getTransaction.js'
87
+ } from '../actions/public/getTransaction.js'
86
88
  export {
87
89
  getTransactionConfirmations,
88
90
  type GetTransactionConfirmationsParameters,
89
91
  type GetTransactionConfirmationsReturnType,
90
- } from './actions/public/getTransactionConfirmations.js'
92
+ } from '../actions/public/getTransactionConfirmations.js'
91
93
  export {
92
94
  getTransactionCount,
93
95
  type GetTransactionCountParameters,
94
96
  type GetTransactionCountReturnType,
95
- } from './actions/public/getTransactionCount.js'
97
+ } from '../actions/public/getTransactionCount.js'
96
98
  export {
97
99
  getTransactionReceipt,
98
100
  type GetTransactionReceiptParameters,
99
101
  type GetTransactionReceiptReturnType,
100
- } from './actions/public/getTransactionReceipt.js'
102
+ } from '../actions/public/getTransactionReceipt.js'
101
103
  export {
102
104
  uninstallFilter,
103
105
  type UninstallFilterParameters,
104
106
  type UninstallFilterReturnType,
105
- } from './actions/public/uninstallFilter.js'
107
+ } from '../actions/public/uninstallFilter.js'
106
108
  export {
107
109
  waitForTransactionReceipt,
108
110
  type ReplacementReason,
109
111
  type ReplacementReturnType,
110
112
  type WaitForTransactionReceiptParameters,
111
113
  type WaitForTransactionReceiptReturnType,
112
- } from './actions/public/waitForTransactionReceipt.js'
114
+ } from '../actions/public/waitForTransactionReceipt.js'
113
115
  export {
114
116
  watchBlockNumber,
115
117
  type OnBlockNumberFn,
116
118
  type OnBlockNumberParameter,
117
119
  type WatchBlockNumberParameters,
118
- } from './actions/public/watchBlockNumber.js'
120
+ } from '../actions/public/watchBlockNumber.js'
119
121
  export {
120
122
  watchBlocks,
121
123
  type OnBlock,
122
124
  type OnBlockParameter,
123
125
  type WatchBlocksParameters,
124
- } from './actions/public/watchBlocks.js'
126
+ } from '../actions/public/watchBlocks.js'
125
127
  export {
126
128
  watchEvent,
127
129
  type WatchEventOnLogsFn,
@@ -130,10 +132,10 @@ export {
130
132
  type WatchEventOnLogsParameter,
131
133
  /** @deprecated - use `WatchEventOnLogsParameter` instead. */
132
134
  type WatchEventOnLogsParameter as OnLogsParameter,
133
- } from './actions/public/watchEvent.js'
135
+ } from '../actions/public/watchEvent.js'
134
136
  export {
135
137
  watchPendingTransactions,
136
138
  type OnTransactionsFn,
137
139
  type OnTransactionsParameter,
138
140
  type WatchPendingTransactionsParameters,
139
- } from './actions/public/watchPendingTransactions.js'
141
+ } from '../actions/public/watchPendingTransactions.js'
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/public/index.d.ts",
4
+ "module": "../_esm/public/index.js",
5
+ "main": "../_cjs/public/index.js"
6
+ }
package/test/index.ts ADDED
@@ -0,0 +1,85 @@
1
+ // TODO(v2): Remove this entrypoint. Favor importing from actions entrypoint (`viem/actions`).
2
+
3
+ export {
4
+ dropTransaction,
5
+ type DropTransactionParameters,
6
+ } from '../actions/test/dropTransaction.js'
7
+ export {
8
+ getAutomine,
9
+ type GetAutomineReturnType,
10
+ } from '../actions/test/getAutomine.js'
11
+ export {
12
+ getTxpoolContent,
13
+ type GetTxpoolContentReturnType,
14
+ } from '../actions/test/getTxpoolContent.js'
15
+ export {
16
+ getTxpoolStatus,
17
+ type GetTxpoolStatusReturnType,
18
+ } from '../actions/test/getTxpoolStatus.js'
19
+ export {
20
+ impersonateAccount,
21
+ type ImpersonateAccountParameters,
22
+ } from '../actions/test/impersonateAccount.js'
23
+ export {
24
+ increaseTime,
25
+ type IncreaseTimeParameters,
26
+ } from '../actions/test/increaseTime.js'
27
+ export {
28
+ inspectTxpool,
29
+ type InspectTxpoolReturnType,
30
+ } from '../actions/test/inspectTxpool.js'
31
+ export { mine, type MineParameters } from '../actions/test/mine.js'
32
+ export { removeBlockTimestampInterval } from '../actions/test/removeBlockTimestampInterval.js'
33
+ export { reset, type ResetParameters } from '../actions/test/reset.js'
34
+ export { revert, type RevertParameters } from '../actions/test/revert.js'
35
+ export {
36
+ sendUnsignedTransaction,
37
+ type SendUnsignedTransactionParameters,
38
+ type SendUnsignedTransactionReturnType,
39
+ } from '../actions/test/sendUnsignedTransaction.js'
40
+ export { setAutomine } from '../actions/test/setAutomine.js'
41
+ export {
42
+ setBalance,
43
+ type SetBalanceParameters,
44
+ } from '../actions/test/setBalance.js'
45
+ export {
46
+ setBlockGasLimit,
47
+ type SetBlockGasLimitParameters,
48
+ } from '../actions/test/setBlockGasLimit.js'
49
+ export {
50
+ setBlockTimestampInterval,
51
+ type SetBlockTimestampIntervalParameters,
52
+ } from '../actions/test/setBlockTimestampInterval.js'
53
+ export { setCode, type SetCodeParameters } from '../actions/test/setCode.js'
54
+ export {
55
+ setCoinbase,
56
+ type SetCoinbaseParameters,
57
+ } from '../actions/test/setCoinbase.js'
58
+ export {
59
+ setIntervalMining,
60
+ type SetIntervalMiningParameters,
61
+ } from '../actions/test/setIntervalMining.js'
62
+ export { setLoggingEnabled } from '../actions/test/setLoggingEnabled.js'
63
+ export {
64
+ setMinGasPrice,
65
+ type SetMinGasPriceParameters,
66
+ } from '../actions/test/setMinGasPrice.js'
67
+ export {
68
+ setNextBlockBaseFeePerGas,
69
+ type SetNextBlockBaseFeePerGasParameters,
70
+ } from '../actions/test/setNextBlockBaseFeePerGas.js'
71
+ export {
72
+ setNextBlockTimestamp,
73
+ type SetNextBlockTimestampParameters,
74
+ } from '../actions/test/setNextBlockTimestamp.js'
75
+ export { setNonce, type SetNonceParameters } from '../actions/test/setNonce.js'
76
+ export {
77
+ setStorageAt,
78
+ type SetStorageAtParameters,
79
+ } from '../actions/test/setStorageAt.js'
80
+ export { snapshot } from '../actions/test/snapshot.js'
81
+ export { setRpcUrl } from '../actions/test/setRpcUrl.js'
82
+ export {
83
+ stopImpersonatingAccount,
84
+ type StopImpersonatingAccountParameters,
85
+ } from '../actions/test/stopImpersonatingAccount.js'
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/test/index.d.ts",
4
+ "module": "../_esm/test/index.js",
5
+ "main": "../_cjs/test/index.js"
6
+ }
package/types/contract.ts CHANGED
@@ -195,8 +195,8 @@ export type ContractFunctionParameters<
195
195
  functionName
196
196
  > = ContractFunctionArgs<abi, mutability, functionName>,
197
197
  ///
198
- allArgs = ContractFunctionArgs<abi, mutability, functionName>,
199
198
  allFunctionNames = ContractFunctionName<abi, mutability>,
199
+ allArgs = ContractFunctionArgs<abi, mutability, functionName>,
200
200
  // when `args` is inferred to `readonly []` ("inputs": []) or `never` (`abi` declared as `Abi` or not inferrable), allow `args` to be optional.
201
201
  // important that both branches return same structural type
202
202
  > = {
package/types/eip1193.ts CHANGED
@@ -21,9 +21,11 @@ import type { Prettify } from './utils.js'
21
21
 
22
22
  export type EIP1474Methods = [...PublicRpcSchema, ...WalletRpcSchema]
23
23
 
24
- export type EIP1193Provider = EIP1193Events & {
25
- request: EIP1193RequestFn<EIP1474Methods>
26
- }
24
+ export type EIP1193Provider = Prettify<
25
+ EIP1193Events & {
26
+ request: EIP1193RequestFn<EIP1474Methods>
27
+ }
28
+ >
27
29
 
28
30
  //////////////////////////////////////////////////
29
31
  // Errors
@@ -49,22 +49,9 @@ export type MulticallContracts<
49
49
  ? contracts
50
50
  : // If `contracts` is *some* array but we couldn't assign `unknown[]` to it, then it must hold some known/homogenous type!
51
51
  // use this to infer the param types in the case of Array.map() argument
52
- contracts extends readonly ContractFunctionParameters<
53
- infer abi,
54
- infer _,
55
- infer functionName,
56
- infer args
57
- >[]
52
+ contracts extends readonly (infer contract extends ContractFunctionParameters)[]
58
53
  ? readonly MaybePartial<
59
- Prettify<
60
- ContractFunctionParameters<
61
- abi,
62
- options['mutability'],
63
- functionName,
64
- args
65
- > &
66
- options['properties']
67
- >,
54
+ Prettify<contract & options['properties']>,
68
55
  options['optional']
69
56
  >[]
70
57
  : // Fallback
@@ -80,13 +67,45 @@ export type MulticallResults<
80
67
  error?: Error
81
68
  mutability: AbiStateMutability
82
69
  } = { error: Error; mutability: AbiStateMutability },
83
- > = {
84
- [index in keyof contracts]: MulticallResponse<
85
- GetMulticallContractReturnType<contracts[index], options['mutability']>,
86
- options['error'],
87
- allowFailure
88
- >
89
- }
70
+ ///
71
+ result extends any[] = [],
72
+ > = contracts extends readonly [] // no contracts, return empty
73
+ ? readonly []
74
+ : contracts extends readonly [infer contract] // one contract left before returning `result`
75
+ ? [
76
+ ...result,
77
+ MulticallResponse<
78
+ GetMulticallContractReturnType<contract, options['mutability']>,
79
+ options['error'],
80
+ allowFailure
81
+ >,
82
+ ]
83
+ : contracts extends readonly [infer contract, ...infer rest] // grab first contract and recurse through `rest`
84
+ ? MulticallResults<
85
+ [...rest],
86
+ allowFailure,
87
+ options,
88
+ [
89
+ ...result,
90
+ MulticallResponse<
91
+ GetMulticallContractReturnType<contract, options['mutability']>,
92
+ options['error'],
93
+ allowFailure
94
+ >,
95
+ ]
96
+ >
97
+ : readonly unknown[] extends contracts
98
+ ? MulticallResponse<unknown, options['error'], allowFailure>[]
99
+ : // If `contracts` is *some* array but we couldn't assign `unknown[]` to it, then it must hold some known/homogenous type!
100
+ // use this to infer the param types in the case of Array.map() argument
101
+ contracts extends readonly (infer contract extends ContractFunctionParameters)[]
102
+ ? MulticallResponse<
103
+ GetMulticallContractReturnType<contract, options['mutability']>,
104
+ options['error'],
105
+ allowFailure
106
+ >[]
107
+ : // Fallback
108
+ MulticallResponse<unknown, options['error'], allowFailure>[]
90
109
 
91
110
  export type MulticallResponse<
92
111
  result = unknown,
@@ -10,21 +10,22 @@ export type TypedDataDefinition<
10
10
  typedData extends TypedData | Record<string, unknown> = TypedData,
11
11
  primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData,
12
12
  ///
13
+ primaryTypes = typedData extends TypedData ? keyof typedData : string,
13
14
  > = primaryType extends 'EIP712Domain'
14
15
  ? EIP712DomainDefinition<typedData, primaryType>
15
- : MessageDefinition<typedData, primaryType>
16
+ : MessageDefinition<typedData, primaryType, primaryTypes>
16
17
 
17
18
  type MessageDefinition<
18
19
  typedData extends TypedData | Record<string, unknown> = TypedData,
19
20
  primaryType extends keyof typedData = keyof typedData,
20
21
  ///
22
+ primaryTypes = typedData extends TypedData ? keyof typedData : string,
21
23
  schema extends Record<string, unknown> = typedData extends TypedData
22
24
  ? TypedDataToPrimitiveTypes<typedData>
23
25
  : Record<string, unknown>,
24
26
  message = schema[primaryType extends keyof schema
25
27
  ? primaryType
26
28
  : keyof schema],
27
- primaryTypes = typedData extends TypedData ? keyof typedData : string,
28
29
  > = {
29
30
  types: typedData
30
31
  } & {
package/types/utils.ts CHANGED
@@ -125,15 +125,10 @@ export type NeverBy<T, K extends keyof T> = {
125
125
  */
126
126
  export type NoUndefined<T> = T extends undefined ? never : T
127
127
 
128
- /**
129
- * @description Construct a type with the properties of union type T except for those in type K.
130
- * @example
131
- * type Result = UnionOmit<{ a: string, b: number } | { a: string, b: undefined, c: number }, 'a'>
132
- * => { b: number } | { b: undefined, c: number }
133
- */
134
- export type UnionOmit<T, K extends keyof any> = T extends any
135
- ? Omit<T, K>
136
- : never
128
+ export type Omit<type, keys extends keyof type> = Pick<
129
+ type,
130
+ Exclude<keyof type, keys>
131
+ >
137
132
 
138
133
  /**
139
134
  * @description Combines members of an intersection into a readable type.
@@ -147,8 +142,6 @@ export type Prettify<T> = {
147
142
  [K in keyof T]: T[K]
148
143
  } & {}
149
144
 
150
- export type UnionEvaluate<type> = type extends object ? Prettify<type> : type
151
-
152
145
  /**
153
146
  * @description Creates a type that extracts the values of T.
154
147
  *
@@ -199,3 +192,31 @@ export type OneOf<
199
192
  ? Prettify<Item & { [K in Exclude<keys, keyof Item>]?: undefined }>
200
193
  : never
201
194
  type KeyofUnion<type> = type extends type ? keyof type : never
195
+
196
+ ///////////////////////////////////////////////////////////////////////////
197
+ // Loose types
198
+
199
+ /** Loose version of {@link Omit} */
200
+ export type LooseOmit<type, keys extends string> = Pick<
201
+ type,
202
+ Exclude<keyof type, keys>
203
+ >
204
+
205
+ ///////////////////////////////////////////////////////////////////////////
206
+ // Union types
207
+
208
+ export type UnionEvaluate<type> = type extends object ? Prettify<type> : type
209
+
210
+ export type UnionLooseOmit<type, keys extends string> = type extends any
211
+ ? LooseOmit<type, keys>
212
+ : never
213
+
214
+ /**
215
+ * @description Construct a type with the properties of union type T except for those in type K.
216
+ * @example
217
+ * type Result = UnionOmit<{ a: string, b: number } | { a: string, b: undefined, c: number }, 'a'>
218
+ * => { b: number } | { b: undefined, c: number }
219
+ */
220
+ export type UnionOmit<type, keys extends keyof type> = type extends any
221
+ ? Omit<type, keys>
222
+ : never
@@ -6,7 +6,7 @@ import type {
6
6
  } from '../../types/chain.js'
7
7
  import type { RpcTransaction } from '../../types/rpc.js'
8
8
  import type { Transaction } from '../../types/transaction.js'
9
- import type { UnionOmit } from '../../types/utils.js'
9
+ import type { UnionLooseOmit } from '../../types/utils.js'
10
10
  import { hexToNumber } from '../encoding/fromHex.js'
11
11
  import { defineFormatter } from './formatter.js'
12
12
 
@@ -27,7 +27,7 @@ export type FormattedTransaction<
27
27
  >,
28
28
  _ExcludedPendingDependencies extends string = TransactionPendingDependencies &
29
29
  ExtractChainFormatterExclude<TChain, 'transaction'>,
30
- > = UnionOmit<_FormatterReturnType, TransactionPendingDependencies> & {
30
+ > = UnionLooseOmit<_FormatterReturnType, TransactionPendingDependencies> & {
31
31
  [K in _ExcludedPendingDependencies]: never
32
32
  } & Pick<
33
33
  Transaction<bigint, number, TBlockTag extends 'pending' ? true : false>,
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/utils/index.d.ts",
4
+ "module": "../_esm/utils/index.js",
5
+ "main": "../_cjs/utils/index.js"
6
+ }
package/utils/rpc.ts CHANGED
@@ -1,5 +1,6 @@
1
- import { WebSocket } from 'unws'
2
- import type { MessageEvent } from 'unws'
1
+ // @ts-ignore - TODO: TypeScript throws an error during CJS compilation here. Need to look into just rolling our own isomorphic-ws.
2
+ import WebSocket from 'isomorphic-ws'
3
+ import type { MessageEvent } from 'isomorphic-ws'
3
4
 
4
5
  import {
5
6
  HttpRequestError,
@@ -156,7 +157,9 @@ export async function getSocket(url: string) {
156
157
  const { schedule } = createBatchScheduler<undefined, [Socket]>({
157
158
  id: url,
158
159
  fn: async () => {
159
- const webSocket = new WebSocket(url)
160
+ let WebSocket_ = WebSocket
161
+ if (!WebSocket.constructor) WebSocket_ = WebSocket.WebSocket
162
+ const webSocket = new WebSocket_(url)
160
163
 
161
164
  // Set up a cache for incoming "synchronous" requests.
162
165
  const requests = new Map<Id, CallbackFn>()
@@ -1,41 +1,46 @@
1
- export { addChain, type AddChainParameters } from './actions/wallet/addChain.js'
1
+ // TODO(v2): Remove this entrypoint. Favor importing from actions entrypoint (`viem/actions`).
2
+
3
+ export {
4
+ addChain,
5
+ type AddChainParameters,
6
+ } from '../actions/wallet/addChain.js'
2
7
  export {
3
8
  getAddresses,
4
9
  type GetAddressesReturnType,
5
- } from './actions/wallet/getAddresses.js'
10
+ } from '../actions/wallet/getAddresses.js'
6
11
  export {
7
12
  getPermissions,
8
13
  type GetPermissionsReturnType,
9
- } from './actions/wallet/getPermissions.js'
14
+ } from '../actions/wallet/getPermissions.js'
10
15
  export {
11
16
  requestAddresses,
12
17
  type RequestAddressesReturnType,
13
- } from './actions/wallet/requestAddresses.js'
18
+ } from '../actions/wallet/requestAddresses.js'
14
19
  export {
15
20
  requestPermissions,
16
21
  type RequestPermissionsReturnType,
17
- } from './actions/wallet/requestPermissions.js'
22
+ } from '../actions/wallet/requestPermissions.js'
18
23
  export {
19
24
  sendTransaction,
20
25
  type SendTransactionParameters,
21
26
  type SendTransactionReturnType,
22
- } from './actions/wallet/sendTransaction.js'
27
+ } from '../actions/wallet/sendTransaction.js'
23
28
  export {
24
29
  signMessage,
25
30
  type SignMessageParameters,
26
31
  type SignMessageReturnType,
27
- } from './actions/wallet/signMessage.js'
32
+ } from '../actions/wallet/signMessage.js'
28
33
  export {
29
34
  signTypedData,
30
35
  type SignTypedDataParameters,
31
36
  type SignTypedDataReturnType,
32
- } from './actions/wallet/signTypedData.js'
37
+ } from '../actions/wallet/signTypedData.js'
33
38
  export {
34
39
  switchChain,
35
40
  type SwitchChainParameters,
36
- } from './actions/wallet/switchChain.js'
41
+ } from '../actions/wallet/switchChain.js'
37
42
  export {
38
43
  watchAsset,
39
44
  type WatchAssetParameters,
40
45
  type WatchAssetReturnType,
41
- } from './actions/wallet/watchAsset.js'
46
+ } from '../actions/wallet/watchAsset.js'
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/wallet/index.d.ts",
4
+ "module": "../_esm/wallet/index.js",
5
+ "main": "../_cjs/wallet/index.js"
6
+ }
@@ -0,0 +1 @@
1
+ import '../types/window.js'
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/window/index.d.ts",
4
+ "module": "../_esm/window/index.js",
5
+ "main": "../_cjs/window/index.js"
6
+ }
package/_cjs/abi.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"abi.js","sourceRoot":"","sources":["../abi.ts"],"names":[],"mappings":";;;AAAA,6EAG2C;AADzC,6HAAA,mBAAmB,OAAA;AAErB,6EAG2C;AADzC,6HAAA,mBAAmB,OAAA;AAErB,2DAGkC;AADhC,2GAAA,UAAU,OAAA;AAEZ,mCASgB;AAJd,mGAAA,QAAQ,OAAA;AACR,uGAAA,YAAY,OAAA;AACZ,4GAAA,iBAAiB,OAAA;AACjB,6GAAA,kBAAkB,OAAA;AAEpB,+DAA0D;AAAjD,+GAAA,YAAY,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../contract.ts"],"names":[],"mappings":";;;AAAA,8FAIsD;AADpD,yIAAA,yBAAyB,OAAA;AAE3B,kFAIgD;AAD9C,6HAAA,mBAAmB,OAAA;AAErB,kEAIwC;AADtC,6GAAA,WAAW,OAAA;AAEb,oEAIyC;AADvC,+GAAA,YAAY,OAAA;AAEd,8DAIsC;AADpC,yGAAA,SAAS,OAAA;AAUX,oEAIyC;AADvC,+GAAA,YAAY,OAAA;AAEd,4EAI6C;AAD3C,uHAAA,gBAAgB,OAAA;AAElB,gFAG+C;AAD7C,2HAAA,kBAAkB,OAAA;AAEpB,wEAI2C;AADzC,mHAAA,cAAc,OAAA;AAEhB,sEAI0C;AADxC,iHAAA,aAAa,OAAA;AAEf,6EAG2C;AADzC,6HAAA,mBAAmB,OAAA;AAErB,yEAIyC;AADvC,yHAAA,iBAAiB,OAAA;AAEnB,mEAIsC;AADpC,mHAAA,cAAc,OAAA;AAEhB,2EAG0C;AADxC,2HAAA,kBAAkB,OAAA;AAEpB,+EAI4C;AAD1C,+HAAA,oBAAoB,OAAA;AAEtB,6EAG2C;AADzC,6HAAA,mBAAmB,OAAA;AAErB,uEAGwC;AADtC,uHAAA,gBAAgB,OAAA;AAElB,yEAGyC;AADvC,yHAAA,iBAAiB,OAAA;AAEnB,yEAGyC;AADvC,yHAAA,iBAAiB,OAAA;AAEnB,2EAG0C;AADxC,2HAAA,kBAAkB,OAAA;AAEpB,+EAG4C;AAD1C,+HAAA,oBAAoB,OAAA;AAEtB,2DAGkC;AADhC,2GAAA,UAAU,OAAA;AAEZ,iFAA4E;AAAnE,iIAAA,qBAAqB,OAAA;AAC9B,iEAA4D;AAAnD,iHAAA,aAAa,OAAA"}
package/_cjs/ens.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"ens.js","sourceRoot":"","sources":["../ens.ts"],"names":[],"mappings":";;;AAAA,yDAAoD;AAA3C,yGAAA,SAAS,OAAA;AAClB,mEAIuC;AADrC,iHAAA,aAAa,OAAA;AAEf,iEAIsC;AADpC,+GAAA,YAAY,OAAA;AAEd,6DAIoC;AADlC,2GAAA,UAAU,OAAA;AAEZ,qEAIwC;AADtC,mHAAA,cAAc,OAAA;AAEhB,6DAIoC;AADlC,2GAAA,UAAU,OAAA;AAEZ,yDAAoD;AAA3C,yGAAA,SAAS,OAAA;AAClB,uDAAkD;AAAzC,uGAAA,QAAQ,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"public.js","sourceRoot":"","sources":["../public.ts"],"names":[],"mappings":";;;AAAA,oDAIiC;AAH/B,+FAAA,IAAI,OAAA;AAIN,8EAG8C;AAF5C,yHAAA,iBAAiB,OAAA;AAGnB,8EAI8C;AAH5C,yHAAA,iBAAiB,OAAA;AAInB,wGAG2D;AAFzD,mJAAA,8BAA8B,OAAA;AAGhC,kEAIwC;AAHtC,6GAAA,WAAW,OAAA;AAIb,gEAIuC;AAHrC,2GAAA,UAAU,OAAA;AAIZ,4DAIqC;AAHnC,uGAAA,QAAQ,OAAA;AAIV,wEAK2C;AAJzC,mHAAA,cAAc,OAAA;AACd,wHAAA,mBAAmB,OAAA;AAIrB,4FAIqD;AAHnD,uIAAA,wBAAwB,OAAA;AAI1B,kEAIwC;AAHtC,6GAAA,WAAW,OAAA;AAIb,gEAA2D;AAAlD,2GAAA,UAAU,OAAA;AACnB,sEAI0C;AAHxC,iHAAA,aAAa,OAAA;AAIf,gFAI+C;AAH7C,2HAAA,kBAAkB,OAAA;AAIpB,4EAI6C;AAH3C,uHAAA,gBAAgB,OAAA;AAIlB,sEAI0C;AAHxC,iHAAA,aAAa,OAAA;AAIf,0DAAqD;AAA5C,qGAAA,OAAO,OAAA;AAChB,kEAGwC;AAFtC,6GAAA,WAAW,OAAA;AAGb,oGAIyD;AAHvD,+IAAA,4BAA4B,OAAA;AAI9B,wEAI2C;AAHzC,mHAAA,cAAc,OAAA;AAIhB,kGAIwD;AAHtD,6IAAA,2BAA2B,OAAA;AAI7B,kFAIgD;AAH9C,6HAAA,mBAAmB,OAAA;AAIrB,sFAIkD;AAHhD,iIAAA,qBAAqB,OAAA;AAIvB,0EAI4C;AAH1C,qHAAA,eAAe,OAAA;AAIjB,8FAMsD;AALpD,yIAAA,yBAAyB,OAAA;AAM3B,4EAK6C;AAJ3C,uHAAA,gBAAgB,OAAA;AAKlB,kEAKwC;AAJtC,6GAAA,WAAW,OAAA;AAKb,gEAQuC;AAPrC,2GAAA,UAAU,OAAA;AAQZ,4FAKqD;AAJnD,uIAAA,wBAAwB,OAAA"}
package/_cjs/test.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../test.ts"],"names":[],"mappings":";;;AAAA,wEAG0C;AAFxC,qHAAA,eAAe,OAAA;AAGjB,gEAGsC;AAFpC,6GAAA,WAAW,OAAA;AAGb,0EAG2C;AAFzC,uHAAA,gBAAgB,OAAA;AAGlB,wEAG0C;AAFxC,qHAAA,eAAe,OAAA;AAGjB,8EAG6C;AAF3C,2HAAA,kBAAkB,OAAA;AAGpB,kEAGuC;AAFrC,+GAAA,YAAY,OAAA;AAGd,oEAGwC;AAFtC,iHAAA,aAAa,OAAA;AAGf,kDAAkE;AAAzD,+FAAA,IAAI,OAAA;AACb,kGAA6F;AAApF,+IAAA,4BAA4B,OAAA;AACrC,oDAAqE;AAA5D,iGAAA,KAAK,OAAA;AACd,sDAAwE;AAA/D,mGAAA,MAAM,OAAA;AACf,wFAIkD;AAHhD,qIAAA,uBAAuB,OAAA;AAIzB,gEAA2D;AAAlD,6GAAA,WAAW,OAAA;AACpB,8DAGqC;AAFnC,2GAAA,UAAU,OAAA;AAGZ,0EAG2C;AAFzC,uHAAA,gBAAgB,OAAA;AAGlB,4FAGoD;AAFlD,yIAAA,yBAAyB,OAAA;AAG3B,wDAA2E;AAAlE,qGAAA,OAAO,OAAA;AAChB,gEAGsC;AAFpC,6GAAA,WAAW,OAAA;AAGb,4EAG4C;AAF1C,yHAAA,iBAAiB,OAAA;AAGnB,4EAAuE;AAA9D,yHAAA,iBAAiB,OAAA;AAC1B,sEAGyC;AAFvC,mHAAA,cAAc,OAAA;AAGhB,4FAGoD;AAFlD,yIAAA,yBAAyB,OAAA;AAG3B,oFAGgD;AAF9C,iIAAA,qBAAqB,OAAA;AAGvB,0DAA8E;AAArE,uGAAA,QAAQ,OAAA;AACjB,kEAGuC;AAFrC,+GAAA,YAAY,OAAA;AAGd,0DAAqD;AAA5C,uGAAA,QAAQ,OAAA;AACjB,4DAAuD;AAA9C,yGAAA,SAAS,OAAA;AAClB,0FAGmD;AAFjD,uIAAA,wBAAwB,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../wallet.ts"],"names":[],"mappings":";;;AAAA,4DAAgF;AAAvE,uGAAA,QAAQ,OAAA;AACjB,oEAGyC;AAFvC,+GAAA,YAAY,OAAA;AAGd,wEAG2C;AAFzC,mHAAA,cAAc,OAAA;AAGhB,4EAG6C;AAF3C,uHAAA,gBAAgB,OAAA;AAGlB,gFAG+C;AAF7C,2HAAA,kBAAkB,OAAA;AAGpB,0EAI4C;AAH1C,qHAAA,eAAe,OAAA;AAIjB,kEAIwC;AAHtC,6GAAA,WAAW,OAAA;AAIb,sEAI0C;AAHxC,iHAAA,aAAa,OAAA;AAIf,kEAGwC;AAFtC,6GAAA,WAAW,OAAA;AAGb,gEAIuC;AAHrC,2GAAA,UAAU,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"window.js","sourceRoot":"","sources":["../window.ts"],"names":[],"mappings":";;AAAA,6BAA0B"}
package/_esm/abi.js DELETED
@@ -1,6 +0,0 @@
1
- export { decodeAbiParameters, } from './utils/abi/decodeAbiParameters.js';
2
- export { encodeAbiParameters, } from './utils/abi/encodeAbiParameters.js';
3
- export { getAbiItem, } from './utils/abi/getAbiItem.js';
4
- export { parseAbi, parseAbiItem, parseAbiParameter, parseAbiParameters, } from 'abitype';
5
- export { encodePacked } from './utils/abi/encodePacked.js';
6
- //# sourceMappingURL=abi.js.map
package/_esm/abi.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"abi.js","sourceRoot":"","sources":["../abi.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,GACpB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAEL,mBAAmB,GACpB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAEL,UAAU,GACX,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAKL,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA"}