tempo.ts 0.10.5 → 0.11.1

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 (203) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/README.md +0 -41
  3. package/dist/viem/Account.d.ts +8 -3
  4. package/dist/viem/Account.d.ts.map +1 -1
  5. package/dist/viem/Account.js +9 -2
  6. package/dist/viem/Account.js.map +1 -1
  7. package/dist/viem/Actions/account.d.ts.map +1 -1
  8. package/dist/viem/Actions/account.js +1 -1
  9. package/dist/viem/Actions/account.js.map +1 -1
  10. package/dist/viem/Actions/amm.d.ts +1 -1
  11. package/dist/viem/Actions/amm.d.ts.map +1 -1
  12. package/dist/viem/Actions/amm.js +1 -2
  13. package/dist/viem/Actions/amm.js.map +1 -1
  14. package/dist/viem/Actions/dex.d.ts +0 -35
  15. package/dist/viem/Actions/dex.d.ts.map +1 -1
  16. package/dist/viem/Actions/dex.js +0 -43
  17. package/dist/viem/Actions/dex.js.map +1 -1
  18. package/dist/viem/Actions/fee.d.ts +1 -1
  19. package/dist/viem/Actions/fee.d.ts.map +1 -1
  20. package/dist/viem/Actions/fee.js +1 -1
  21. package/dist/viem/Actions/fee.js.map +1 -1
  22. package/dist/viem/Actions/nonce.d.ts.map +1 -1
  23. package/dist/viem/Actions/nonce.js +6 -4
  24. package/dist/viem/Actions/nonce.js.map +1 -1
  25. package/dist/viem/Actions/token.d.ts +1 -2
  26. package/dist/viem/Actions/token.d.ts.map +1 -1
  27. package/dist/viem/Actions/token.js +1 -2
  28. package/dist/viem/Actions/token.js.map +1 -1
  29. package/dist/viem/Chain.d.ts +34 -34
  30. package/dist/viem/Chain.d.ts.map +1 -1
  31. package/dist/viem/Chain.js +2 -0
  32. package/dist/viem/Chain.js.map +1 -1
  33. package/dist/viem/Decorator.d.ts +0 -27
  34. package/dist/viem/Decorator.d.ts.map +1 -1
  35. package/dist/viem/Decorator.js +0 -1
  36. package/dist/viem/Decorator.js.map +1 -1
  37. package/dist/viem/Formatters.d.ts.map +1 -1
  38. package/dist/viem/Formatters.js +5 -3
  39. package/dist/viem/Formatters.js.map +1 -1
  40. package/dist/viem/Transaction.d.ts +8 -5
  41. package/dist/viem/Transaction.d.ts.map +1 -1
  42. package/dist/viem/Transaction.js +13 -3
  43. package/dist/viem/Transaction.js.map +1 -1
  44. package/dist/viem/index.d.ts +10 -1
  45. package/dist/viem/index.d.ts.map +1 -1
  46. package/dist/viem/index.js +1 -1
  47. package/dist/viem/index.js.map +1 -1
  48. package/dist/viem/internal/types.d.ts +1 -1
  49. package/dist/viem/internal/types.d.ts.map +1 -1
  50. package/dist/wagmi/Actions/dex.d.ts +1 -45
  51. package/dist/wagmi/Actions/dex.d.ts.map +1 -1
  52. package/dist/wagmi/Actions/dex.js +0 -55
  53. package/dist/wagmi/Actions/dex.js.map +1 -1
  54. package/dist/wagmi/Connector.d.ts +1 -1
  55. package/dist/wagmi/Connector.d.ts.map +1 -1
  56. package/dist/wagmi/Connector.js +1 -2
  57. package/dist/wagmi/Connector.js.map +1 -1
  58. package/dist/wagmi/Hooks/dex.d.ts +3 -46
  59. package/dist/wagmi/Hooks/dex.d.ts.map +1 -1
  60. package/dist/wagmi/Hooks/dex.js +2 -54
  61. package/dist/wagmi/Hooks/dex.js.map +1 -1
  62. package/dist/wagmi/index.d.ts +1 -1
  63. package/dist/wagmi/index.d.ts.map +1 -1
  64. package/dist/wagmi/index.js +1 -1
  65. package/dist/wagmi/index.js.map +1 -1
  66. package/package.json +5 -13
  67. package/src/viem/Account.test.ts +1 -1
  68. package/src/viem/Account.ts +11 -2
  69. package/src/viem/Actions/account.ts +1 -1
  70. package/src/viem/Actions/amm.ts +1 -2
  71. package/src/viem/Actions/dex.test.ts +1 -195
  72. package/src/viem/Actions/dex.ts +0 -53
  73. package/src/viem/Actions/fee.test.ts +2 -2
  74. package/src/viem/Actions/fee.ts +1 -1
  75. package/src/viem/Actions/nonce.test.ts +27 -14
  76. package/src/viem/Actions/nonce.ts +6 -4
  77. package/src/viem/Actions/token.test.ts +18 -52
  78. package/src/viem/Actions/token.ts +1 -2
  79. package/src/viem/Chain.ts +3 -1
  80. package/src/viem/Decorator.ts +0 -30
  81. package/src/viem/Formatters.ts +9 -3
  82. package/src/viem/Transaction.ts +23 -7
  83. package/src/viem/e2e.test.ts +19 -0
  84. package/src/viem/index.ts +12 -1
  85. package/src/viem/internal/types.ts +1 -1
  86. package/src/wagmi/Actions/dex.test.ts +0 -26
  87. package/src/wagmi/Actions/dex.ts +1 -111
  88. package/src/wagmi/Actions/nonce.test.ts +8 -4
  89. package/src/wagmi/Actions/token.test.ts +2 -2
  90. package/src/wagmi/Connector.ts +1 -2
  91. package/src/wagmi/Hooks/dex.test.ts +0 -26
  92. package/src/wagmi/Hooks/dex.ts +1 -88
  93. package/src/wagmi/Hooks/nonce.test.ts +3 -3
  94. package/src/wagmi/index.ts +4 -1
  95. package/dist/ox/AuthorizationTempo.d.ts +0 -450
  96. package/dist/ox/AuthorizationTempo.d.ts.map +0 -1
  97. package/dist/ox/AuthorizationTempo.js +0 -433
  98. package/dist/ox/AuthorizationTempo.js.map +0 -1
  99. package/dist/ox/KeyAuthorization.d.ts +0 -356
  100. package/dist/ox/KeyAuthorization.d.ts.map +0 -1
  101. package/dist/ox/KeyAuthorization.js +0 -359
  102. package/dist/ox/KeyAuthorization.js.map +0 -1
  103. package/dist/ox/Order.d.ts +0 -92
  104. package/dist/ox/Order.d.ts.map +0 -1
  105. package/dist/ox/Order.js +0 -88
  106. package/dist/ox/Order.js.map +0 -1
  107. package/dist/ox/OrdersFilters.d.ts +0 -72
  108. package/dist/ox/OrdersFilters.d.ts.map +0 -1
  109. package/dist/ox/OrdersFilters.js +0 -100
  110. package/dist/ox/OrdersFilters.js.map +0 -1
  111. package/dist/ox/Pagination.d.ts +0 -128
  112. package/dist/ox/Pagination.d.ts.map +0 -1
  113. package/dist/ox/Pagination.js +0 -78
  114. package/dist/ox/Pagination.js.map +0 -1
  115. package/dist/ox/PoolId.d.ts +0 -18
  116. package/dist/ox/PoolId.d.ts.map +0 -1
  117. package/dist/ox/PoolId.js +0 -13
  118. package/dist/ox/PoolId.js.map +0 -1
  119. package/dist/ox/RpcSchema.d.ts +0 -32
  120. package/dist/ox/RpcSchema.d.ts.map +0 -1
  121. package/dist/ox/RpcSchema.js +0 -2
  122. package/dist/ox/RpcSchema.js.map +0 -1
  123. package/dist/ox/SignatureEnvelope.d.ts +0 -260
  124. package/dist/ox/SignatureEnvelope.d.ts.map +0 -1
  125. package/dist/ox/SignatureEnvelope.js +0 -477
  126. package/dist/ox/SignatureEnvelope.js.map +0 -1
  127. package/dist/ox/Tick.d.ts +0 -115
  128. package/dist/ox/Tick.d.ts.map +0 -1
  129. package/dist/ox/Tick.js +0 -127
  130. package/dist/ox/Tick.js.map +0 -1
  131. package/dist/ox/TokenId.d.ts +0 -25
  132. package/dist/ox/TokenId.d.ts.map +0 -1
  133. package/dist/ox/TokenId.js +0 -41
  134. package/dist/ox/TokenId.js.map +0 -1
  135. package/dist/ox/TokenRole.d.ts +0 -11
  136. package/dist/ox/TokenRole.d.ts.map +0 -1
  137. package/dist/ox/TokenRole.js +0 -22
  138. package/dist/ox/TokenRole.js.map +0 -1
  139. package/dist/ox/Transaction.d.ts +0 -201
  140. package/dist/ox/Transaction.d.ts.map +0 -1
  141. package/dist/ox/Transaction.js +0 -167
  142. package/dist/ox/Transaction.js.map +0 -1
  143. package/dist/ox/TransactionEnvelopeTempo.d.ts +0 -470
  144. package/dist/ox/TransactionEnvelopeTempo.d.ts.map +0 -1
  145. package/dist/ox/TransactionEnvelopeTempo.js +0 -547
  146. package/dist/ox/TransactionEnvelopeTempo.js.map +0 -1
  147. package/dist/ox/TransactionReceipt.d.ts +0 -155
  148. package/dist/ox/TransactionReceipt.d.ts.map +0 -1
  149. package/dist/ox/TransactionReceipt.js +0 -136
  150. package/dist/ox/TransactionReceipt.js.map +0 -1
  151. package/dist/ox/TransactionRequest.d.ts +0 -76
  152. package/dist/ox/TransactionRequest.d.ts.map +0 -1
  153. package/dist/ox/TransactionRequest.js +0 -93
  154. package/dist/ox/TransactionRequest.js.map +0 -1
  155. package/dist/ox/index.d.ts +0 -14
  156. package/dist/ox/index.d.ts.map +0 -1
  157. package/dist/ox/index.js +0 -14
  158. package/dist/ox/index.js.map +0 -1
  159. package/dist/prool/Instance.d.ts +0 -101
  160. package/dist/prool/Instance.d.ts.map +0 -1
  161. package/dist/prool/Instance.js +0 -136
  162. package/dist/prool/Instance.js.map +0 -1
  163. package/dist/prool/chain.json +0 -238
  164. package/dist/prool/index.d.ts +0 -2
  165. package/dist/prool/index.d.ts.map +0 -1
  166. package/dist/prool/index.js +0 -2
  167. package/dist/prool/index.js.map +0 -1
  168. package/src/ox/AuthorizationTempo.test.ts +0 -1256
  169. package/src/ox/AuthorizationTempo.ts +0 -648
  170. package/src/ox/KeyAuthorization.test.ts +0 -1332
  171. package/src/ox/KeyAuthorization.ts +0 -540
  172. package/src/ox/Order.test.ts +0 -78
  173. package/src/ox/Order.ts +0 -125
  174. package/src/ox/OrdersFilters.test.ts +0 -182
  175. package/src/ox/OrdersFilters.ts +0 -125
  176. package/src/ox/Pagination.test.ts +0 -162
  177. package/src/ox/Pagination.ts +0 -164
  178. package/src/ox/PoolId.test.ts +0 -33
  179. package/src/ox/PoolId.ts +0 -27
  180. package/src/ox/RpcSchema.ts +0 -35
  181. package/src/ox/SignatureEnvelope.test.ts +0 -1876
  182. package/src/ox/SignatureEnvelope.ts +0 -791
  183. package/src/ox/Tick.test.ts +0 -281
  184. package/src/ox/Tick.ts +0 -181
  185. package/src/ox/TokenId.test.ts +0 -40
  186. package/src/ox/TokenId.ts +0 -50
  187. package/src/ox/TokenRole.test.ts +0 -16
  188. package/src/ox/TokenRole.ts +0 -27
  189. package/src/ox/Transaction.test.ts +0 -523
  190. package/src/ox/Transaction.ts +0 -332
  191. package/src/ox/TransactionEnvelopeTempo.test.ts +0 -1352
  192. package/src/ox/TransactionEnvelopeTempo.ts +0 -905
  193. package/src/ox/TransactionReceipt.ts +0 -190
  194. package/src/ox/TransactionRequest.ts +0 -147
  195. package/src/ox/e2e.test.ts +0 -1393
  196. package/src/ox/index.ts +0 -13
  197. package/src/prool/Instance.test.ts +0 -43
  198. package/src/prool/Instance.ts +0 -247
  199. package/src/prool/chain.json +0 -238
  200. package/src/prool/index.ts +0 -1
  201. package/src/viem/Actions/__snapshots__/dex.test.ts.snap +0 -850
  202. package/src/wagmi/Actions/__snapshots__/dex.test.ts.snap +0 -310
  203. package/src/wagmi/Hooks/__snapshots__/dex.test.ts.snap +0 -457
package/src/ox/index.ts DELETED
@@ -1,13 +0,0 @@
1
- export * as AuthorizationTempo from './AuthorizationTempo.js'
2
- export * as KeyAuthorization from './KeyAuthorization.js'
3
- export * as Order from './Order.js'
4
- export * as OrdersFilters from './OrdersFilters.js'
5
- export * as Pagination from './Pagination.js'
6
- export * as PoolId from './PoolId.js'
7
- export * as RpcSchema from './RpcSchema.js'
8
- export * as SignatureEnvelope from './SignatureEnvelope.js'
9
- export * as Tick from './Tick.js'
10
- export * as TokenId from './TokenId.js'
11
- export * as TokenRole from './TokenRole.js'
12
- export * as Transaction from './Transaction.js'
13
- export * as TransactionEnvelopeTempo from './TransactionEnvelopeTempo.js'
@@ -1,43 +0,0 @@
1
- import type { Instance as prool_Instance } from 'prool/instances'
2
- import { Instance } from 'tempo.ts/prool'
3
- import { afterEach, describe, expect, test } from 'vitest'
4
-
5
- const instances: prool_Instance[] = []
6
-
7
- const tempo = (parameters: Instance.tempo.Parameters = {}) => {
8
- const instance = Instance.tempo({ ...parameters, port: 8888 })
9
- instances.push(instance)
10
- return instance
11
- }
12
-
13
- afterEach(async () => {
14
- for (const instance of instances) await instance.stop().catch(() => {})
15
- })
16
-
17
- describe('tempo', () => {
18
- test('default', async () => {
19
- const messages: string[] = []
20
- const stdouts: string[] = []
21
-
22
- const instance = tempo()
23
-
24
- instance.on('message', (m) => messages.push(m))
25
- instance.on('stdout', (m) => stdouts.push(m))
26
-
27
- expect(instance.messages.get()).toMatchInlineSnapshot('[]')
28
-
29
- await instance.start()
30
- expect(instance.status).toEqual('started')
31
-
32
- expect(messages.join('')).toBeDefined()
33
- expect(stdouts.join('')).toBeDefined()
34
- expect(instance.messages.get().join('')).toBeDefined()
35
-
36
- await instance.stop()
37
- expect(instance.status).toEqual('stopped')
38
-
39
- expect(messages.join('')).toBeDefined()
40
- expect(stdouts.join('')).toBeDefined()
41
- expect(instance.messages.get()).toMatchInlineSnapshot('[]')
42
- })
43
- })
@@ -1,247 +0,0 @@
1
- import * as cp from 'node:child_process'
2
- import * as path from 'node:path'
3
- import { setTimeout } from 'node:timers/promises'
4
- import { toArgs } from 'prool'
5
- import { defineInstance } from 'prool/instances'
6
- import { execa } from 'prool/processes'
7
-
8
- let pulled = false
9
-
10
- /**
11
- * Defines a Tempo instance.
12
- *
13
- * @example
14
- * ```ts
15
- * const instance = tempo()
16
- * await instance.start()
17
- * // ...
18
- * await instance.stop()
19
- * ```
20
- */
21
- export const tempo = defineInstance((parameters: tempo.Parameters = {}) => {
22
- const {
23
- builder,
24
- containerName = `tempo.${crypto.randomUUID()}`,
25
- chain = path.resolve(import.meta.dirname, './chain.json'),
26
- image = 'ghcr.io/tempoxyz/tempo',
27
- dev,
28
- log: log_,
29
- faucet,
30
- tag = 'latest',
31
- ...args
32
- } = parameters
33
- const { deadline = 3, gaslimit = 3000000000, maxTasks = 8 } = builder ?? {}
34
- const { blockTime = '1sec' } = dev ?? {}
35
- const {
36
- addresses = ['0x20c0000000000000000000000000000000000001'],
37
- amount = '1000000000000',
38
- privateKey = '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80',
39
- } = faucet ?? {}
40
-
41
- const log = (() => {
42
- try {
43
- return JSON.parse(log_ as string)
44
- } catch {
45
- return log_
46
- }
47
- })()
48
-
49
- const name = 'tempo'
50
- const process_ = execa({ name })
51
-
52
- return {
53
- _internal: {
54
- args,
55
- get process() {
56
- return process_._internal.process
57
- },
58
- },
59
- host: args.host ?? 'localhost',
60
- name,
61
- port: args.port ?? 8545,
62
- async start({ port = args.port }, options) {
63
- if (!pulled) {
64
- cp.spawnSync('docker', [
65
- 'pull',
66
- `${image}:${tag}`,
67
- '--platform',
68
- 'linux/x86_64',
69
- ])
70
- pulled = true
71
- }
72
-
73
- const rustLog = log && typeof log !== 'boolean' ? log : ''
74
-
75
- return await process_.start(
76
- ($) =>
77
- $`docker run \
78
- --name ${containerName} \
79
- --network host \
80
- --platform linux/x86_64 \
81
- --add-host host.docker.internal:host-gateway \
82
- --add-host localhost:host-gateway \
83
- -v ${chain}:/chain.json \
84
- -p ${port!}:${port!} \
85
- -e RUST_LOG=${rustLog} \
86
- ${image}:${tag} \
87
- node \
88
- --dev \
89
- --engine.disable-precompile-cache \
90
- --engine.legacy-state-root \
91
- --faucet.enabled \
92
- --faucet.address ${addresses.join(' ')} \
93
- --http \
94
- ${toArgs({
95
- ...args,
96
- builder: {
97
- deadline,
98
- gaslimit,
99
- maxTasks,
100
- },
101
- chain: '/chain.json',
102
- datadir: '/data',
103
- dev: {
104
- blockTime,
105
- },
106
- faucet: {
107
- amount,
108
- privateKey,
109
- },
110
- http: {
111
- api: 'all',
112
- addr: '0.0.0.0',
113
- corsdomain: '*',
114
- port: port!,
115
- },
116
- port: port! + 10,
117
- txpool: {
118
- pendingMaxCount: '10000000000000',
119
- basefeeMaxCount: '10000000000000',
120
- queuedMaxCount: '10000000000000',
121
- pendingMaxSize: '10000',
122
- basefeeMaxSize: '10000',
123
- queuedMaxSize: '10000',
124
- maxAccountSlots: '500000',
125
- },
126
- ws: {
127
- port: port! + 20,
128
- },
129
- authrpc: {
130
- port: port! + 30,
131
- },
132
- })}`,
133
- {
134
- ...options,
135
- resolver({ process, reject, resolve }) {
136
- process.stdout.on('data', (data) => {
137
- const message = data.toString()
138
- if (log) console.log(message)
139
- if (message.includes('shutting down')) reject(message)
140
- if (message.includes('RPC HTTP server started'))
141
- setTimeout(2000).then(resolve)
142
- })
143
- process.stderr.on('data', (data) => {
144
- const message = data.toString()
145
- if (log) console.error(message)
146
- reject(message)
147
- })
148
- },
149
- },
150
- )
151
- },
152
- async stop() {
153
- cp.spawnSync('docker', ['rm', '-f', containerName])
154
- },
155
- }
156
- })
157
-
158
- export declare namespace tempo {
159
- export type Parameters = {
160
- /**
161
- * Builder options.
162
- */
163
- builder?:
164
- | {
165
- /**
166
- * The deadline for when the payload builder job should resolve.
167
- */
168
- deadline?: number | undefined
169
- /**
170
- * Target gas limit for built blocks.
171
- */
172
- gaslimit?: bigint | undefined
173
- /**
174
- * Maximum number of tasks to spawn for building a payload.
175
- */
176
- maxTasks?: number | undefined
177
- }
178
- | undefined
179
- /**
180
- * Chain this node is running.
181
- */
182
- chain?: string | undefined
183
- /**
184
- * Name of the container.
185
- */
186
- containerName?: string | undefined
187
- /**
188
- * Development options.
189
- */
190
- dev?:
191
- | {
192
- /**
193
- * Interval between blocks.
194
- */
195
- blockTime?: string | undefined
196
- }
197
- | undefined
198
- /**
199
- * Faucet options.
200
- */
201
- faucet?:
202
- | {
203
- /**
204
- * Target token addresses for the faucet to be funding with
205
- */
206
- addresses?: string[] | undefined
207
- /**
208
- * Amount for each faucet funding transaction
209
- */
210
- amount?: bigint | undefined
211
- /**
212
- * Faucet funding mnemonic
213
- */
214
- privateKey?: string | undefined
215
- }
216
- | undefined
217
- /**
218
- * Docker image to use.
219
- */
220
- image?: string | undefined
221
- /**
222
- * Rust log level configuration (sets RUST_LOG environment variable).
223
- * Can be a log level or a custom filter string.
224
- */
225
- log?:
226
- | 'trace'
227
- | 'debug'
228
- | 'info'
229
- | 'warn'
230
- | 'error'
231
- | (string & {})
232
- | boolean
233
- | undefined
234
- /**
235
- * Host the server will listen on.
236
- */
237
- host?: string | undefined
238
- /**
239
- * Port the server will listen on.
240
- */
241
- port?: number | undefined
242
- /**
243
- * Tag of the image to use.
244
- */
245
- tag?: string | undefined
246
- }
247
- }