viem 2.55.18 → 2.56.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 (225) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/_cjs/chains/definitions/berachainBepolia.js +1 -1
  3. package/_cjs/chains/definitions/morphTachyon.js +25 -0
  4. package/_cjs/chains/definitions/morphTachyon.js.map +1 -0
  5. package/_cjs/chains/definitions/morphTachyonTestnet.js +26 -0
  6. package/_cjs/chains/definitions/morphTachyonTestnet.js.map +1 -0
  7. package/_cjs/chains/definitions/ynxTestnet.js +26 -0
  8. package/_cjs/chains/definitions/ynxTestnet.js.map +1 -0
  9. package/_cjs/chains/index.js +13 -7
  10. package/_cjs/chains/index.js.map +1 -1
  11. package/_cjs/errors/version.js +1 -1
  12. package/_cjs/errors/version.js.map +1 -1
  13. package/_cjs/tempo/Abis.js +5314 -2528
  14. package/_cjs/tempo/Abis.js.map +1 -1
  15. package/_cjs/tempo/Account.js +188 -16
  16. package/_cjs/tempo/Account.js.map +1 -1
  17. package/_cjs/tempo/Addresses.js +32 -1
  18. package/_cjs/tempo/Addresses.js.map +1 -1
  19. package/_cjs/tempo/Decorator.js +11 -2
  20. package/_cjs/tempo/Decorator.js.map +1 -1
  21. package/_cjs/tempo/Formatters.js +1 -1
  22. package/_cjs/tempo/Formatters.js.map +1 -1
  23. package/_cjs/tempo/Selectors.js +203 -61
  24. package/_cjs/tempo/Selectors.js.map +1 -1
  25. package/_cjs/tempo/Storage.js +6 -6
  26. package/_cjs/tempo/Storage.js.map +1 -1
  27. package/_cjs/tempo/Transaction.js +31 -10
  28. package/_cjs/tempo/Transaction.js.map +1 -1
  29. package/_cjs/tempo/Transport.js +21 -0
  30. package/_cjs/tempo/Transport.js.map +1 -1
  31. package/_cjs/tempo/Zone.js +51 -0
  32. package/_cjs/tempo/Zone.js.map +1 -0
  33. package/_cjs/tempo/actions/accessKey.js +49 -8
  34. package/_cjs/tempo/actions/accessKey.js.map +1 -1
  35. package/_cjs/tempo/actions/earn/deployment.js +59 -21
  36. package/_cjs/tempo/actions/earn/deployment.js.map +1 -1
  37. package/_cjs/tempo/actions/earn.js +2 -3
  38. package/_cjs/tempo/actions/earn.js.map +1 -1
  39. package/_cjs/tempo/actions/index.js +2 -1
  40. package/_cjs/tempo/actions/index.js.map +1 -1
  41. package/_cjs/tempo/actions/multisig.js +95 -0
  42. package/_cjs/tempo/actions/multisig.js.map +1 -0
  43. package/_cjs/tempo/actions/zone.js +65 -28
  44. package/_cjs/tempo/actions/zone.js.map +1 -1
  45. package/_cjs/tempo/chainConfig.js +58 -29
  46. package/_cjs/tempo/chainConfig.js.map +1 -1
  47. package/_cjs/tempo/index.js +3 -3
  48. package/_cjs/tempo/index.js.map +1 -1
  49. package/_cjs/tempo/internal/multisig.js +56 -0
  50. package/_cjs/tempo/internal/multisig.js.map +1 -0
  51. package/_esm/chains/definitions/berachainBepolia.js +1 -1
  52. package/_esm/chains/definitions/morphTachyon.js +22 -0
  53. package/_esm/chains/definitions/morphTachyon.js.map +1 -0
  54. package/_esm/chains/definitions/morphTachyonTestnet.js +23 -0
  55. package/_esm/chains/definitions/morphTachyonTestnet.js.map +1 -0
  56. package/_esm/chains/definitions/ynxTestnet.js +23 -0
  57. package/_esm/chains/definitions/ynxTestnet.js.map +1 -0
  58. package/_esm/chains/index.js +3 -0
  59. package/_esm/chains/index.js.map +1 -1
  60. package/_esm/errors/version.js +1 -1
  61. package/_esm/errors/version.js.map +1 -1
  62. package/_esm/tempo/Abis.js +5302 -2514
  63. package/_esm/tempo/Abis.js.map +1 -1
  64. package/_esm/tempo/Account.js +196 -66
  65. package/_esm/tempo/Account.js.map +1 -1
  66. package/_esm/tempo/Addresses.js +37 -0
  67. package/_esm/tempo/Addresses.js.map +1 -1
  68. package/_esm/tempo/Decorator.js +11 -2
  69. package/_esm/tempo/Decorator.js.map +1 -1
  70. package/_esm/tempo/Formatters.js +3 -6
  71. package/_esm/tempo/Formatters.js.map +1 -1
  72. package/_esm/tempo/Selectors.js +203 -61
  73. package/_esm/tempo/Selectors.js.map +1 -1
  74. package/_esm/tempo/Storage.js +7 -7
  75. package/_esm/tempo/Storage.js.map +1 -1
  76. package/_esm/tempo/Transaction.js +31 -10
  77. package/_esm/tempo/Transaction.js.map +1 -1
  78. package/_esm/tempo/Transport.js +37 -0
  79. package/_esm/tempo/Transport.js.map +1 -1
  80. package/_esm/tempo/Zone.js +48 -0
  81. package/_esm/tempo/Zone.js.map +1 -0
  82. package/_esm/tempo/actions/accessKey.js +65 -23
  83. package/_esm/tempo/actions/accessKey.js.map +1 -1
  84. package/_esm/tempo/actions/earn/deployment.js +66 -25
  85. package/_esm/tempo/actions/earn/deployment.js.map +1 -1
  86. package/_esm/tempo/actions/earn.js +2 -3
  87. package/_esm/tempo/actions/earn.js.map +1 -1
  88. package/_esm/tempo/actions/index.js +1 -0
  89. package/_esm/tempo/actions/index.js.map +1 -1
  90. package/_esm/tempo/actions/multisig.js +245 -0
  91. package/_esm/tempo/actions/multisig.js.map +1 -0
  92. package/_esm/tempo/actions/zone.js +111 -66
  93. package/_esm/tempo/actions/zone.js.map +1 -1
  94. package/_esm/tempo/chainConfig.js +65 -35
  95. package/_esm/tempo/chainConfig.js.map +1 -1
  96. package/_esm/tempo/index.js +2 -2
  97. package/_esm/tempo/index.js.map +1 -1
  98. package/_esm/tempo/internal/multisig.js +56 -0
  99. package/_esm/tempo/internal/multisig.js.map +1 -0
  100. package/_types/chains/definitions/berachainBepolia.d.ts +1 -1
  101. package/_types/chains/definitions/morphTachyon.d.ts +51 -0
  102. package/_types/chains/definitions/morphTachyon.d.ts.map +1 -0
  103. package/_types/chains/definitions/morphTachyonTestnet.d.ts +51 -0
  104. package/_types/chains/definitions/morphTachyonTestnet.d.ts.map +1 -0
  105. package/_types/chains/definitions/tempo.d.ts +30 -2
  106. package/_types/chains/definitions/tempo.d.ts.map +1 -1
  107. package/_types/chains/definitions/tempoDevnet.d.ts +30 -2
  108. package/_types/chains/definitions/tempoDevnet.d.ts.map +1 -1
  109. package/_types/chains/definitions/tempoLocalnet.d.ts +30 -2
  110. package/_types/chains/definitions/tempoLocalnet.d.ts.map +1 -1
  111. package/_types/chains/definitions/tempoModerato.d.ts +30 -2
  112. package/_types/chains/definitions/tempoModerato.d.ts.map +1 -1
  113. package/_types/chains/definitions/ynxTestnet.d.ts +51 -0
  114. package/_types/chains/definitions/ynxTestnet.d.ts.map +1 -0
  115. package/_types/chains/index.d.ts +3 -0
  116. package/_types/chains/index.d.ts.map +1 -1
  117. package/_types/errors/version.d.ts +1 -1
  118. package/_types/errors/version.d.ts.map +1 -1
  119. package/_types/tempo/Abis.d.ts +31485 -6119
  120. package/_types/tempo/Abis.d.ts.map +1 -1
  121. package/_types/tempo/Account.d.ts +42 -26
  122. package/_types/tempo/Account.d.ts.map +1 -1
  123. package/_types/tempo/Addresses.d.ts +12 -0
  124. package/_types/tempo/Addresses.d.ts.map +1 -1
  125. package/_types/tempo/Decorator.d.ts +62 -22
  126. package/_types/tempo/Decorator.d.ts.map +1 -1
  127. package/_types/tempo/Formatters.d.ts.map +1 -1
  128. package/_types/tempo/Selectors.d.ts +202 -60
  129. package/_types/tempo/Selectors.d.ts.map +1 -1
  130. package/_types/tempo/Storage.d.ts +1 -1
  131. package/_types/tempo/Storage.d.ts.map +1 -1
  132. package/_types/tempo/Transaction.d.ts +17 -2
  133. package/_types/tempo/Transaction.d.ts.map +1 -1
  134. package/_types/tempo/Transport.d.ts +24 -0
  135. package/_types/tempo/Transport.d.ts.map +1 -1
  136. package/_types/tempo/Zone.d.ts +6824 -0
  137. package/_types/tempo/Zone.d.ts.map +1 -0
  138. package/_types/tempo/actions/accessKey.d.ts +35 -17
  139. package/_types/tempo/actions/accessKey.d.ts.map +1 -1
  140. package/_types/tempo/actions/channel.d.ts +72 -0
  141. package/_types/tempo/actions/channel.d.ts.map +1 -1
  142. package/_types/tempo/actions/dex.d.ts +260 -0
  143. package/_types/tempo/actions/dex.d.ts.map +1 -1
  144. package/_types/tempo/actions/earn/deployment.d.ts +86 -278
  145. package/_types/tempo/actions/earn/deployment.d.ts.map +1 -1
  146. package/_types/tempo/actions/earn.d.ts +540 -16
  147. package/_types/tempo/actions/earn.d.ts.map +1 -1
  148. package/_types/tempo/actions/index.d.ts +1 -0
  149. package/_types/tempo/actions/index.d.ts.map +1 -1
  150. package/_types/tempo/actions/multisig.d.ts +472 -0
  151. package/_types/tempo/actions/multisig.d.ts.map +1 -0
  152. package/_types/tempo/actions/policy.d.ts +108 -0
  153. package/_types/tempo/actions/policy.d.ts.map +1 -1
  154. package/_types/tempo/actions/receivePolicy.d.ts +27 -0
  155. package/_types/tempo/actions/receivePolicy.d.ts.map +1 -1
  156. package/_types/tempo/actions/zone.d.ts +165 -82
  157. package/_types/tempo/actions/zone.d.ts.map +1 -1
  158. package/_types/tempo/chainConfig.d.ts +15 -1
  159. package/_types/tempo/chainConfig.d.ts.map +1 -1
  160. package/_types/tempo/index.d.ts +3 -2
  161. package/_types/tempo/index.d.ts.map +1 -1
  162. package/_types/tempo/internal/multisig.d.ts +13 -0
  163. package/_types/tempo/internal/multisig.d.ts.map +1 -0
  164. package/chains/definitions/berachainBepolia.ts +1 -1
  165. package/chains/definitions/morphTachyon.ts +22 -0
  166. package/chains/definitions/morphTachyonTestnet.ts +23 -0
  167. package/chains/definitions/ynxTestnet.ts +23 -0
  168. package/chains/index.ts +3 -0
  169. package/errors/version.ts +1 -1
  170. package/package.json +2 -7
  171. package/tempo/Abis.ts +5337 -2537
  172. package/tempo/Account.ts +329 -51
  173. package/tempo/Addresses.ts +41 -0
  174. package/tempo/Decorator.ts +89 -28
  175. package/tempo/Formatters.ts +4 -5
  176. package/tempo/Selectors.ts +225 -71
  177. package/tempo/Storage.ts +5 -8
  178. package/tempo/Transaction.ts +52 -12
  179. package/tempo/Transport.ts +57 -0
  180. package/tempo/Zone.ts +60 -0
  181. package/tempo/actions/accessKey.ts +128 -32
  182. package/tempo/actions/earn/deployment.ts +74 -30
  183. package/tempo/actions/earn.ts +2 -3
  184. package/tempo/actions/index.ts +1 -0
  185. package/tempo/actions/multisig.ts +356 -0
  186. package/tempo/actions/zone.ts +188 -84
  187. package/tempo/chainConfig.ts +82 -35
  188. package/tempo/index.ts +12 -6
  189. package/tempo/internal/multisig.ts +72 -0
  190. package/_cjs/tempo/zones/Abis.js +0 -213
  191. package/_cjs/tempo/zones/Abis.js.map +0 -1
  192. package/_cjs/tempo/zones/Addresses.js +0 -17
  193. package/_cjs/tempo/zones/Addresses.js.map +0 -1
  194. package/_cjs/tempo/zones/index.js +0 -13
  195. package/_cjs/tempo/zones/index.js.map +0 -1
  196. package/_cjs/tempo/zones/transport.js +0 -24
  197. package/_cjs/tempo/zones/transport.js.map +0 -1
  198. package/_cjs/tempo/zones/zone.js +0 -82
  199. package/_cjs/tempo/zones/zone.js.map +0 -1
  200. package/_esm/tempo/zones/Abis.js +0 -210
  201. package/_esm/tempo/zones/Abis.js.map +0 -1
  202. package/_esm/tempo/zones/Addresses.js +0 -14
  203. package/_esm/tempo/zones/Addresses.js.map +0 -1
  204. package/_esm/tempo/zones/index.js +0 -6
  205. package/_esm/tempo/zones/index.js.map +0 -1
  206. package/_esm/tempo/zones/transport.js +0 -39
  207. package/_esm/tempo/zones/transport.js.map +0 -1
  208. package/_esm/tempo/zones/zone.js +0 -78
  209. package/_esm/tempo/zones/zone.js.map +0 -1
  210. package/_types/tempo/zones/Abis.d.ts +0 -383
  211. package/_types/tempo/zones/Abis.d.ts.map +0 -1
  212. package/_types/tempo/zones/Addresses.d.ts +0 -13
  213. package/_types/tempo/zones/Addresses.d.ts.map +0 -1
  214. package/_types/tempo/zones/index.d.ts +0 -5
  215. package/_types/tempo/zones/index.d.ts.map +0 -1
  216. package/_types/tempo/zones/transport.d.ts +0 -26
  217. package/_types/tempo/zones/transport.d.ts.map +0 -1
  218. package/_types/tempo/zones/zone.d.ts +0 -3092
  219. package/_types/tempo/zones/zone.d.ts.map +0 -1
  220. package/tempo/zones/Abis.ts +0 -211
  221. package/tempo/zones/Addresses.ts +0 -15
  222. package/tempo/zones/index.ts +0 -10
  223. package/tempo/zones/package.json +0 -6
  224. package/tempo/zones/transport.ts +0 -58
  225. package/tempo/zones/zone.ts +0 -113
@@ -1,210 +0,0 @@
1
- export const zoneFactory = [
2
- {
3
- type: 'event',
4
- name: 'ZoneCreated',
5
- inputs: [
6
- { name: 'zoneId', type: 'uint32', indexed: true },
7
- { name: 'portal', type: 'address', indexed: true },
8
- { name: 'initialToken', type: 'address', indexed: false },
9
- { name: 'accessMode', type: 'bool', indexed: false },
10
- { name: 'gatewayMode', type: 'bool', indexed: false },
11
- { name: 'admin', type: 'address', indexed: false },
12
- { name: 'sequencers', type: 'address[]', indexed: false },
13
- { name: 'threshold', type: 'uint8', indexed: false },
14
- { name: 'verifier', type: 'address', indexed: false },
15
- ],
16
- },
17
- {
18
- type: 'event',
19
- name: 'ZoneCreated',
20
- inputs: [
21
- { name: 'zoneId', type: 'uint32', indexed: true },
22
- { name: 'portal', type: 'address', indexed: true },
23
- { name: 'messenger', type: 'address', indexed: true },
24
- { name: 'initialToken', type: 'address', indexed: false },
25
- { name: 'admin', type: 'address', indexed: false },
26
- { name: 'sequencer', type: 'address', indexed: false },
27
- { name: 'verifier', type: 'address', indexed: false },
28
- { name: 'genesisBlockHash', type: 'bytes32', indexed: false },
29
- { name: 'genesisTempoBlockHash', type: 'bytes32', indexed: false },
30
- {
31
- name: 'genesisTempoBlockNumber',
32
- type: 'uint64',
33
- indexed: false,
34
- },
35
- ],
36
- },
37
- {
38
- type: 'function',
39
- name: 'createZone',
40
- stateMutability: 'nonpayable',
41
- inputs: [
42
- {
43
- name: 'params',
44
- type: 'tuple',
45
- components: [
46
- { name: 'initialToken', type: 'address' },
47
- { name: 'accessMode', type: 'bool' },
48
- { name: 'gatewayMode', type: 'bool' },
49
- { name: 'allowedAccounts', type: 'address[]' },
50
- { name: 'zoneGateways', type: 'address[]' },
51
- { name: 'admin', type: 'address' },
52
- { name: 'sequencers', type: 'address[]' },
53
- { name: 'threshold', type: 'uint8' },
54
- { name: 'rpcUrl', type: 'string' },
55
- ],
56
- },
57
- ],
58
- outputs: [
59
- { name: 'zoneId', type: 'uint32' },
60
- { name: 'portal', type: 'address' },
61
- ],
62
- },
63
- {
64
- type: 'function',
65
- name: 'createZone',
66
- stateMutability: 'nonpayable',
67
- inputs: [
68
- {
69
- name: 'params',
70
- type: 'tuple',
71
- components: [
72
- { name: 'initialToken', type: 'address' },
73
- { name: 'admin', type: 'address' },
74
- { name: 'sequencer', type: 'address' },
75
- { name: 'verifier', type: 'address' },
76
- {
77
- name: 'zoneParams',
78
- type: 'tuple',
79
- components: [
80
- { name: 'genesisBlockHash', type: 'bytes32' },
81
- { name: 'genesisTempoBlockHash', type: 'bytes32' },
82
- { name: 'genesisTempoBlockNumber', type: 'uint64' },
83
- ],
84
- },
85
- { name: 'rpcUrl', type: 'string' },
86
- ],
87
- },
88
- ],
89
- outputs: [
90
- { name: 'zoneId', type: 'uint32' },
91
- { name: 'portal', type: 'address' },
92
- ],
93
- },
94
- {
95
- type: 'function',
96
- name: 'verifier',
97
- stateMutability: 'view',
98
- inputs: [],
99
- outputs: [{ name: '', type: 'address' }],
100
- },
101
- ];
102
- export const zonePortal = [
103
- {
104
- name: 'WithdrawalProcessed',
105
- type: 'event',
106
- inputs: [
107
- { name: 'to', type: 'address', indexed: true },
108
- { name: 'senderTag', type: 'bytes32', indexed: true },
109
- { name: 'token', type: 'address', indexed: false },
110
- { name: 'amount', type: 'uint128', indexed: false },
111
- { name: 'callbackSuccess', type: 'bool', indexed: false },
112
- ],
113
- },
114
- {
115
- name: 'deposit',
116
- type: 'function',
117
- stateMutability: 'nonpayable',
118
- inputs: [
119
- { name: '_token', type: 'address' },
120
- { name: 'to', type: 'address' },
121
- { name: 'amount', type: 'uint128' },
122
- { name: 'memo', type: 'bytes32' },
123
- { name: 'tempoRefundRecipient', type: 'address' },
124
- ],
125
- outputs: [{ name: '', type: 'bytes32' }],
126
- },
127
- {
128
- name: 'depositEncrypted',
129
- type: 'function',
130
- stateMutability: 'nonpayable',
131
- inputs: [
132
- { name: 'token', type: 'address' },
133
- { name: 'amount', type: 'uint128' },
134
- { name: 'keyIndex', type: 'uint256' },
135
- {
136
- name: 'encrypted',
137
- type: 'tuple',
138
- components: [
139
- { name: 'ephemeralPubkeyX', type: 'bytes32' },
140
- { name: 'ephemeralPubkeyYParity', type: 'uint8' },
141
- { name: 'ciphertext', type: 'bytes' },
142
- { name: 'nonce', type: 'bytes12' },
143
- { name: 'tag', type: 'bytes16' },
144
- ],
145
- },
146
- { name: 'tempoRefundRecipient', type: 'address' },
147
- ],
148
- outputs: [{ name: '', type: 'bytes32' }],
149
- },
150
- {
151
- name: 'sequencerEncryptionKey',
152
- type: 'function',
153
- stateMutability: 'view',
154
- inputs: [],
155
- outputs: [
156
- { name: 'x', type: 'bytes32' },
157
- { name: 'yParity', type: 'uint8' },
158
- ],
159
- },
160
- {
161
- name: 'encryptionKeyCount',
162
- type: 'function',
163
- stateMutability: 'view',
164
- inputs: [],
165
- outputs: [{ name: '', type: 'uint256' }],
166
- },
167
- ];
168
- export const zoneOutbox = [
169
- {
170
- name: 'WithdrawalRequested',
171
- type: 'event',
172
- inputs: [
173
- { name: 'withdrawalIndex', type: 'uint64', indexed: true },
174
- { name: 'sender', type: 'address', indexed: true },
175
- { name: 'token', type: 'address', indexed: false },
176
- { name: 'to', type: 'address', indexed: false },
177
- { name: 'amount', type: 'uint128', indexed: false },
178
- { name: 'fee', type: 'uint128', indexed: false },
179
- { name: 'memo', type: 'bytes32', indexed: false },
180
- { name: 'gasLimit', type: 'uint64', indexed: false },
181
- { name: 'fallbackNonce', type: 'uint64', indexed: false },
182
- { name: 'data', type: 'bytes', indexed: false },
183
- { name: 'revealTo', type: 'bytes', indexed: false },
184
- ],
185
- },
186
- {
187
- name: 'requestWithdrawal',
188
- type: 'function',
189
- stateMutability: 'nonpayable',
190
- inputs: [
191
- { name: 'token', type: 'address' },
192
- { name: 'to', type: 'address' },
193
- { name: 'amount', type: 'uint128' },
194
- { name: 'memo', type: 'bytes32' },
195
- { name: 'gasLimit', type: 'uint64' },
196
- { name: 'fallbackRecipient', type: 'address' },
197
- { name: 'data', type: 'bytes' },
198
- { name: 'revealTo', type: 'bytes' },
199
- ],
200
- outputs: [],
201
- },
202
- {
203
- name: 'calculateWithdrawalFee',
204
- type: 'function',
205
- stateMutability: 'view',
206
- inputs: [{ name: 'gasLimit', type: 'uint64' }],
207
- outputs: [{ name: 'fee', type: 'uint128' }],
208
- },
209
- ];
210
- //# sourceMappingURL=Abis.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Abis.js","sourceRoot":"","sources":["../../../tempo/zones/Abis.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import { tempoModerato } from '../../chains/definitions/tempoModerato.js';
2
- export const messenger = {
3
- [tempoModerato.id]: {
4
- 1: '0x254356112cCf6f32fAd84F16CC5E0A0cCA17Beb7',
5
- },
6
- };
7
- export const portal = {
8
- [tempoModerato.id]: {
9
- 1: '0x59831A17340EE14FE136d751EfbeA8b630470fD2',
10
- 6: '0x7069DeC4E64Fd07334A0933eDe836C17259c9B23',
11
- 7: '0x3F5296303400B56271b476F5A0B9cBF74350D6Ac',
12
- },
13
- };
14
- //# sourceMappingURL=Addresses.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Addresses.js","sourceRoot":"","sources":["../../../tempo/zones/Addresses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAA;AAEzE,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE;QAClB,CAAC,EAAE,4CAA4C;KAChD;CAC+D,CAAA;AAElE,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE;QAClB,CAAC,EAAE,4CAA4C;QAC/C,CAAC,EAAE,4CAA4C;QAC/C,CAAC,EAAE,4CAA4C;KAChD;CAC+D,CAAA"}
@@ -1,6 +0,0 @@
1
- // biome-ignore lint/performance/noBarrelFile: entrypoint module
2
- export * as Abis from './Abis.js';
3
- export * as Addresses from './Addresses.js';
4
- export { http } from './transport.js';
5
- export { from, getPortalAddress, zone, zoneModerato, } from './zone.js';
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../tempo/zones/index.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAuB,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EACL,IAAI,EACJ,gBAAgB,EAChB,IAAI,EACJ,YAAY,GACb,MAAM,WAAW,CAAA"}
@@ -1,39 +0,0 @@
1
- import { http as http_, } from '../../clients/transports/http.js';
2
- import * as Storage_ from '../Storage.js';
3
- /**
4
- * Creates an HTTP transport with support for Zone authentication tokens.
5
- *
6
- * Reads the authorization token from Storage and injects the
7
- * `X-Authorization-Token` header on every request. Batching is disabled
8
- * by default because zone tokens are account-scoped.
9
- *
10
- * @example
11
- * ```ts
12
- * import { createPublicClient } from 'viem'
13
- * import { http, zone } from 'viem/tempo/zones' // or zoneModerato
14
- *
15
- * const client = createPublicClient({
16
- * chain: zone(6),
17
- * transport: http(),
18
- * })
19
- * ```
20
- */
21
- export function http(url, config = {}) {
22
- const { storage: storage_, onFetchRequest, ...rest } = config;
23
- const storage = storage_ ?? Storage_.defaultStorage();
24
- return (config) => http_(url, {
25
- ...rest,
26
- async onFetchRequest(request, init) {
27
- const next = (await onFetchRequest?.(request, init)) ?? init;
28
- const headers = new Headers(next.headers);
29
- const chainId = config.chain?.id;
30
- if (chainId) {
31
- const token = (await storage.getItem(`auth:token:${chainId}`)) ?? null;
32
- if (token)
33
- headers.set('X-Authorization-Token', token);
34
- }
35
- return { ...next, headers };
36
- },
37
- })(config);
38
- }
39
- //# sourceMappingURL=transport.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../tempo/zones/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,IAAI,IAAI,KAAK,GACd,MAAM,kCAAkC,CAAA;AAEzC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAUzC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,IAAI,CAClB,GAAwB,EACxB,SAAyB,EAAE;IAE3B,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAA;IAC7D,MAAM,OAAO,GAAG,QAAQ,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAA;IAErD,OAAO,CAAC,MAAM,EAAE,EAAE,CAChB,KAAK,CAAC,GAAG,EAAE;QACT,GAAG,IAAI;QACP,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI;YAChC,MAAM,IAAI,GAAG,CAAC,MAAM,cAAc,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,IAAI,IAAI,CAAA;YAC5D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAEzC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,EAAE,CAAA;YAChC,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,KAAK,GAAG,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC,IAAI,IAAI,CAAA;gBACtE,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAA;YACxD,CAAC;YAED,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAA;QAC7B,CAAC;KACF,CAAC,CAAC,MAAM,CAAC,CAAA;AACd,CAAC"}
@@ -1,78 +0,0 @@
1
- import { ZoneId } from 'ox/tempo';
2
- import { tempo } from '../../chains/definitions/tempo.js';
3
- import { tempoModerato } from '../../chains/definitions/tempoModerato.js';
4
- import { defineChain } from '../../utils/chain/defineChain.js';
5
- import { chainConfig } from '../chainConfig.js';
6
- import * as Addresses from './Addresses.js';
7
- export function getPortalAddress(chainId, zoneId) {
8
- const address = Addresses.portal[chainId]?.[zoneId];
9
- if (!address)
10
- throw new Error(`No portal address configured for zone ${zoneId} on chain ${chainId}.`);
11
- return address;
12
- }
13
- const overrides = {
14
- [tempoModerato.id]: {
15
- 1: {
16
- contracts: {
17
- messenger: {
18
- [tempoModerato.id]: {
19
- address: Addresses.messenger[tempoModerato.id][1],
20
- },
21
- },
22
- portal: {
23
- [tempoModerato.id]: {
24
- address: Addresses.portal[tempoModerato.id][1],
25
- },
26
- },
27
- },
28
- name: 'Zone E',
29
- rpcUrl: 'https://rpc-zone-e.testnet.tempo.xyz',
30
- },
31
- 6: {
32
- name: 'Zone A',
33
- rpcUrl: 'https://rpc-zone-a.testnet.tempo.xyz',
34
- },
35
- 7: {
36
- name: 'Zone B',
37
- rpcUrl: 'https://rpc-zone-b.testnet.tempo.xyz',
38
- },
39
- },
40
- };
41
- export const zone = /*#__PURE__*/ from({
42
- sourceId: tempo.id,
43
- rpcHost: 'tempo.xyz',
44
- });
45
- export const zoneModerato = /*#__PURE__*/ from({
46
- sourceId: tempoModerato.id,
47
- rpcHost: 'tempoxyz.dev',
48
- });
49
- /** Creates a zone chain factory for a given Tempo network. */
50
- export function from(options) {
51
- return (id) => {
52
- const chainId = ZoneId.toChainId(id);
53
- const paddedId = String(id).padStart(3, '0');
54
- const override = overrides[options.sourceId]?.[id];
55
- return defineChain({
56
- ...chainConfig,
57
- ...(override?.contracts ? { contracts: override.contracts } : {}),
58
- id: chainId,
59
- name: override?.name ?? `Tempo Zone ${paddedId}`,
60
- nativeCurrency: {
61
- name: 'USD',
62
- symbol: 'USD',
63
- decimals: 6,
64
- },
65
- rpcUrls: {
66
- default: {
67
- http: [
68
- override?.rpcUrl ??
69
- `https://rpc-zone-${paddedId}.${options.rpcHost}`,
70
- ],
71
- },
72
- },
73
- sourceId: options.sourceId,
74
- supportsTransactionReplacementDetection: false,
75
- });
76
- };
77
- }
78
- //# sourceMappingURL=zone.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"zone.js","sourceRoot":"","sources":["../../../tempo/zones/zone.ts"],"names":[],"mappings":"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"}