tempo.ts 0.11.0 → 0.12.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 (196) hide show
  1. package/CHANGELOG.md +67 -4
  2. package/README.md +3 -34
  3. package/dist/server/Handler.d.ts +14 -14
  4. package/dist/server/Handler.d.ts.map +1 -1
  5. package/dist/server/Handler.js +16 -17
  6. package/dist/server/Handler.js.map +1 -1
  7. package/dist/wagmi/Actions/amm.d.ts +51 -51
  8. package/dist/wagmi/Actions/amm.d.ts.map +1 -1
  9. package/dist/wagmi/Actions/amm.js +37 -37
  10. package/dist/wagmi/Actions/amm.js.map +1 -1
  11. package/dist/wagmi/Actions/dex.d.ts +129 -129
  12. package/dist/wagmi/Actions/dex.d.ts.map +1 -1
  13. package/dist/wagmi/Actions/dex.js +73 -73
  14. package/dist/wagmi/Actions/dex.js.map +1 -1
  15. package/dist/wagmi/Actions/faucet.d.ts +9 -9
  16. package/dist/wagmi/Actions/faucet.d.ts.map +1 -1
  17. package/dist/wagmi/Actions/faucet.js +7 -7
  18. package/dist/wagmi/Actions/faucet.js.map +1 -1
  19. package/dist/wagmi/Actions/fee.d.ts +17 -17
  20. package/dist/wagmi/Actions/fee.d.ts.map +1 -1
  21. package/dist/wagmi/Actions/fee.js +10 -10
  22. package/dist/wagmi/Actions/fee.js.map +1 -1
  23. package/dist/wagmi/Actions/nonce.d.ts +9 -79
  24. package/dist/wagmi/Actions/nonce.d.ts.map +1 -1
  25. package/dist/wagmi/Actions/nonce.js +7 -89
  26. package/dist/wagmi/Actions/nonce.js.map +1 -1
  27. package/dist/wagmi/Actions/policy.d.ts +69 -70
  28. package/dist/wagmi/Actions/policy.d.ts.map +1 -1
  29. package/dist/wagmi/Actions/policy.js +43 -43
  30. package/dist/wagmi/Actions/policy.js.map +1 -1
  31. package/dist/wagmi/Actions/reward.d.ts +51 -51
  32. package/dist/wagmi/Actions/reward.d.ts.map +1 -1
  33. package/dist/wagmi/Actions/reward.js +31 -31
  34. package/dist/wagmi/Actions/reward.js.map +1 -1
  35. package/dist/wagmi/Actions/token.d.ts +238 -238
  36. package/dist/wagmi/Actions/token.d.ts.map +1 -1
  37. package/dist/wagmi/Actions/token.js +136 -136
  38. package/dist/wagmi/Actions/token.js.map +1 -1
  39. package/dist/wagmi/Connector.d.ts +2 -1
  40. package/dist/wagmi/Connector.d.ts.map +1 -1
  41. package/dist/wagmi/Connector.js +83 -22
  42. package/dist/wagmi/Connector.js.map +1 -1
  43. package/dist/wagmi/Hooks/nonce.d.ts +1 -52
  44. package/dist/wagmi/Hooks/nonce.d.ts.map +1 -1
  45. package/dist/wagmi/Hooks/nonce.js +1 -70
  46. package/dist/wagmi/Hooks/nonce.js.map +1 -1
  47. package/dist/wagmi/Hooks/policy.d.ts +0 -1
  48. package/dist/wagmi/Hooks/policy.d.ts.map +1 -1
  49. package/dist/wagmi/Hooks/policy.js.map +1 -1
  50. package/dist/wagmi/KeyManager.d.ts +6 -3
  51. package/dist/wagmi/KeyManager.d.ts.map +1 -1
  52. package/dist/wagmi/KeyManager.js +9 -4
  53. package/dist/wagmi/KeyManager.js.map +1 -1
  54. package/package.json +2 -2
  55. package/src/server/Handler.test.ts +2 -2
  56. package/src/server/Handler.ts +16 -17
  57. package/src/wagmi/Actions/amm.ts +63 -63
  58. package/src/wagmi/Actions/dex.test.ts +1 -1
  59. package/src/wagmi/Actions/dex.ts +153 -153
  60. package/src/wagmi/Actions/faucet.ts +11 -11
  61. package/src/wagmi/Actions/fee.ts +20 -20
  62. package/src/wagmi/Actions/nonce.test.ts +1 -64
  63. package/src/wagmi/Actions/nonce.ts +10 -142
  64. package/src/wagmi/Actions/policy.ts +83 -85
  65. package/src/wagmi/Actions/reward.ts +64 -61
  66. package/src/wagmi/Actions/token.ts +287 -283
  67. package/src/wagmi/Connector.ts +105 -31
  68. package/src/wagmi/Hooks/dex.test.ts +1 -1
  69. package/src/wagmi/Hooks/fee.test.ts +0 -6
  70. package/src/wagmi/Hooks/nonce.test.ts +1 -66
  71. package/src/wagmi/Hooks/nonce.ts +1 -114
  72. package/src/wagmi/Hooks/policy.ts +0 -2
  73. package/src/wagmi/KeyManager.ts +18 -5
  74. package/dist/viem/Abis.d.ts +0 -2649
  75. package/dist/viem/Abis.d.ts.map +0 -1
  76. package/dist/viem/Abis.js +0 -1677
  77. package/dist/viem/Abis.js.map +0 -1
  78. package/dist/viem/Account.d.ts +0 -244
  79. package/dist/viem/Account.d.ts.map +0 -1
  80. package/dist/viem/Account.js +0 -382
  81. package/dist/viem/Account.js.map +0 -1
  82. package/dist/viem/Actions/amm.d.ts +0 -1991
  83. package/dist/viem/Actions/amm.d.ts.map +0 -1
  84. package/dist/viem/Actions/amm.js +0 -814
  85. package/dist/viem/Actions/amm.js.map +0 -1
  86. package/dist/viem/Actions/dex.d.ts +0 -3900
  87. package/dist/viem/Actions/dex.d.ts.map +0 -1
  88. package/dist/viem/Actions/dex.js +0 -1414
  89. package/dist/viem/Actions/dex.js.map +0 -1
  90. package/dist/viem/Actions/faucet.d.ts +0 -69
  91. package/dist/viem/Actions/faucet.d.ts.map +0 -1
  92. package/dist/viem/Actions/faucet.js +0 -73
  93. package/dist/viem/Actions/faucet.js.map +0 -1
  94. package/dist/viem/Actions/fee.d.ts +0 -360
  95. package/dist/viem/Actions/fee.d.ts.map +0 -1
  96. package/dist/viem/Actions/fee.js +0 -237
  97. package/dist/viem/Actions/fee.js.map +0 -1
  98. package/dist/viem/Actions/nonce.d.ts +0 -257
  99. package/dist/viem/Actions/nonce.d.ts.map +0 -1
  100. package/dist/viem/Actions/nonce.js +0 -228
  101. package/dist/viem/Actions/nonce.js.map +0 -1
  102. package/dist/viem/Actions/policy.d.ts +0 -1680
  103. package/dist/viem/Actions/policy.d.ts.map +0 -1
  104. package/dist/viem/Actions/policy.js +0 -875
  105. package/dist/viem/Actions/policy.js.map +0 -1
  106. package/dist/viem/Actions/reward.d.ts +0 -2422
  107. package/dist/viem/Actions/reward.d.ts.map +0 -1
  108. package/dist/viem/Actions/reward.js +0 -651
  109. package/dist/viem/Actions/reward.js.map +0 -1
  110. package/dist/viem/Actions/token.d.ts +0 -16007
  111. package/dist/viem/Actions/token.d.ts.map +0 -1
  112. package/dist/viem/Actions/token.js +0 -2936
  113. package/dist/viem/Actions/token.js.map +0 -1
  114. package/dist/viem/Addresses.d.ts +0 -9
  115. package/dist/viem/Addresses.d.ts.map +0 -1
  116. package/dist/viem/Addresses.js +0 -9
  117. package/dist/viem/Addresses.js.map +0 -1
  118. package/dist/viem/Chain.d.ts +0 -451
  119. package/dist/viem/Chain.d.ts.map +0 -1
  120. package/dist/viem/Chain.js +0 -96
  121. package/dist/viem/Chain.js.map +0 -1
  122. package/dist/viem/Formatters.d.ts +0 -10
  123. package/dist/viem/Formatters.d.ts.map +0 -1
  124. package/dist/viem/Formatters.js +0 -104
  125. package/dist/viem/Formatters.js.map +0 -1
  126. package/dist/viem/Storage.d.ts +0 -24
  127. package/dist/viem/Storage.d.ts.map +0 -1
  128. package/dist/viem/Storage.js +0 -68
  129. package/dist/viem/Storage.js.map +0 -1
  130. package/dist/viem/Transaction.d.ts +0 -76
  131. package/dist/viem/Transaction.d.ts.map +0 -1
  132. package/dist/viem/Transaction.js +0 -176
  133. package/dist/viem/Transaction.js.map +0 -1
  134. package/dist/viem/Transport.d.ts +0 -33
  135. package/dist/viem/Transport.d.ts.map +0 -1
  136. package/dist/viem/Transport.js +0 -138
  137. package/dist/viem/Transport.js.map +0 -1
  138. package/dist/viem/WebAuthnP256.d.ts +0 -82
  139. package/dist/viem/WebAuthnP256.d.ts.map +0 -1
  140. package/dist/viem/WebAuthnP256.js +0 -97
  141. package/dist/viem/WebAuthnP256.js.map +0 -1
  142. package/dist/viem/WebCryptoP256.d.ts +0 -2
  143. package/dist/viem/WebCryptoP256.d.ts.map +0 -1
  144. package/dist/viem/WebCryptoP256.js +0 -2
  145. package/dist/viem/WebCryptoP256.js.map +0 -1
  146. package/dist/viem/internal/types.d.ts +0 -20
  147. package/dist/viem/internal/types.d.ts.map +0 -1
  148. package/dist/viem/internal/types.js +0 -2
  149. package/dist/viem/internal/types.js.map +0 -1
  150. package/dist/viem/internal/utils.d.ts +0 -14
  151. package/dist/viem/internal/utils.d.ts.map +0 -1
  152. package/dist/viem/internal/utils.js +0 -33
  153. package/dist/viem/internal/utils.js.map +0 -1
  154. package/src/chains.ts +0 -54
  155. package/src/viem/Abis.ts +0 -1688
  156. package/src/viem/Account.test.ts +0 -444
  157. package/src/viem/Account.ts +0 -601
  158. package/src/viem/Actions/account.test.ts +0 -414
  159. package/src/viem/Actions/account.ts +0 -106
  160. package/src/viem/Actions/amm.test.ts +0 -381
  161. package/src/viem/Actions/amm.ts +0 -1227
  162. package/src/viem/Actions/dex.test.ts +0 -1549
  163. package/src/viem/Actions/dex.ts +0 -2150
  164. package/src/viem/Actions/faucet.ts +0 -121
  165. package/src/viem/Actions/fee.test.ts +0 -259
  166. package/src/viem/Actions/fee.ts +0 -372
  167. package/src/viem/Actions/index.ts +0 -9
  168. package/src/viem/Actions/nonce.test.ts +0 -206
  169. package/src/viem/Actions/nonce.ts +0 -347
  170. package/src/viem/Actions/policy.test.ts +0 -534
  171. package/src/viem/Actions/policy.ts +0 -1335
  172. package/src/viem/Actions/reward.test.ts +0 -434
  173. package/src/viem/Actions/reward.ts +0 -944
  174. package/src/viem/Actions/token.test.ts +0 -3029
  175. package/src/viem/Actions/token.ts +0 -4458
  176. package/src/viem/Addresses.ts +0 -9
  177. package/src/viem/Chain.bench-d.ts +0 -12
  178. package/src/viem/Chain.test.ts +0 -168
  179. package/src/viem/Chain.ts +0 -157
  180. package/src/viem/Decorator.bench-d.ts +0 -11
  181. package/src/viem/Decorator.test.ts +0 -39
  182. package/src/viem/Decorator.ts +0 -3179
  183. package/src/viem/Formatters.ts +0 -164
  184. package/src/viem/P256.ts +0 -1
  185. package/src/viem/Secp256k1.ts +0 -1
  186. package/src/viem/Storage.ts +0 -110
  187. package/src/viem/TokenIds.ts +0 -1
  188. package/src/viem/Transaction.ts +0 -382
  189. package/src/viem/Transport.ts +0 -191
  190. package/src/viem/WebAuthnP256.ts +0 -146
  191. package/src/viem/WebCryptoP256.ts +0 -1
  192. package/src/viem/e2e.test.ts +0 -1602
  193. package/src/viem/index.ts +0 -30
  194. package/src/viem/internal/types.ts +0 -69
  195. package/src/viem/internal/utils.ts +0 -58
  196. package/src/wagmi/internal/types.ts +0 -16
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chain.js","sourceRoot":"","sources":["../../src/viem/Chain.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import { type Chain } from 'viem';
2
- import type { UnionOmit } from '../internal/types.js';
3
- import type { GetFeeTokenParameter } from './internal/types.js';
4
- import { type Transaction, type TransactionReceipt, type TransactionReceiptRpc, type TransactionRequest, type TransactionRequestRpc, type TransactionRpc } from './Transaction.js';
5
- export declare function formatTransaction(transaction: TransactionRpc): Transaction<bigint, number, boolean>;
6
- export declare function formatTransactionReceipt(receipt: TransactionReceiptRpc): TransactionReceipt;
7
- type Request<chain extends Chain | undefined> = UnionOmit<TransactionRequest, 'feeToken'> & GetFeeTokenParameter<chain>;
8
- export declare function formatTransactionRequest<chain extends Chain | undefined>(r: Request<chain>, action?: string | undefined): TransactionRequestRpc;
9
- export {};
10
- //# sourceMappingURL=Formatters.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Formatters.d.ts","sourceRoot":"","sources":["../../src/viem/Formatters.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,KAAK,EAKX,MAAM,MAAM,CAAA;AAEb,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAA;AAEzB,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,cAAc,GAC1B,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CA4BtC;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,qBAAqB,GAC7B,kBAAkB,CAEpB;AAED,KAAK,OAAO,CAAC,KAAK,SAAS,KAAK,GAAG,SAAS,IAAI,SAAS,CACvD,kBAAkB,EAClB,UAAU,CACX,GACC,oBAAoB,CAAC,KAAK,CAAC,CAAA;AAC7B,wBAAgB,wBAAwB,CAAC,KAAK,SAAS,KAAK,GAAG,SAAS,EACtE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,EACjB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAC1B,qBAAqB,CAyFvB"}
@@ -1,104 +0,0 @@
1
- // TODO: Find opportunities to make this file less duplicated + more simplified with Viem v3.
2
- import * as Hex from 'ox/Hex';
3
- import { Transaction as ox_Transaction, TransactionRequest as ox_TransactionRequest, } from 'ox/tempo';
4
- import { formatTransaction as viem_formatTransaction, formatTransactionReceipt as viem_formatTransactionReceipt, formatTransactionRequest as viem_formatTransactionRequest, } from 'viem';
5
- import { parseAccount } from 'viem/accounts';
6
- import { isTempo, } from './Transaction.js';
7
- export function formatTransaction(transaction) {
8
- if (!isTempo(transaction))
9
- return viem_formatTransaction(transaction);
10
- const { feePayerSignature, gasPrice: _, nonce, ...tx } = ox_Transaction.fromRpc(transaction);
11
- return {
12
- ...tx,
13
- accessList: tx.accessList,
14
- feePayerSignature: feePayerSignature
15
- ? {
16
- r: Hex.fromNumber(feePayerSignature.r, { size: 32 }),
17
- s: Hex.fromNumber(feePayerSignature.s, { size: 32 }),
18
- v: BigInt(feePayerSignature.v ?? 27),
19
- yParity: feePayerSignature.yParity,
20
- }
21
- : undefined,
22
- nonce: Number(nonce),
23
- typeHex: ox_Transaction.toRpcType[tx.type],
24
- type: tx.type,
25
- };
26
- }
27
- export function formatTransactionReceipt(receipt) {
28
- return viem_formatTransactionReceipt(receipt);
29
- }
30
- export function formatTransactionRequest(r, action) {
31
- const request = r;
32
- const account = request.account
33
- ? parseAccount(request.account)
34
- : undefined;
35
- // Convert EIP-1559 transactions to Tempo transactions.
36
- if (request.type === 'eip1559')
37
- request.type = 'tempo';
38
- // If the request is not a Tempo transaction, route to Viem formatter.
39
- if (!isTempo(request))
40
- return viem_formatTransactionRequest(r, action);
41
- if (action)
42
- request.calls = request.calls ?? [
43
- {
44
- to: r.to ||
45
- (!r.data || r.data === '0x'
46
- ? '0x0000000000000000000000000000000000000000'
47
- : undefined),
48
- value: r.value,
49
- data: r.data,
50
- },
51
- ];
52
- const rpc = ox_TransactionRequest.toRpc({
53
- ...request,
54
- type: 'tempo',
55
- });
56
- if (action === 'estimateGas') {
57
- rpc.maxFeePerGas = undefined;
58
- rpc.maxPriorityFeePerGas = undefined;
59
- }
60
- // JSON-RPC accounts (wallets) don't support Tempo transactions yet,
61
- // we will omit the type to attempt to make them compatible
62
- // with the base transaction structure.
63
- // TODO: `calls` will not be supported by a lot of JSON-RPC accounts (wallet),
64
- // use `wallet_sendCalls` or sequential `eth_sendTransaction` to mimic the
65
- // behavior of `calls`.
66
- if (account?.type === 'json-rpc') {
67
- if (rpc.calls?.length && rpc.calls.length > 1)
68
- throw new Error('Batch calls are not supported with JSON-RPC accounts yet.');
69
- rpc.type = undefined;
70
- }
71
- // We rely on `calls` for Tempo transactions.
72
- // However, `calls` may not be supported by JSON-RPC accounts (wallets) yet,
73
- // so we will not remove the `data`, `to`, and `value` fields to make it
74
- // compatible with the base transaction structure.
75
- if (account?.type !== 'json-rpc') {
76
- rpc.to = undefined;
77
- rpc.data = undefined;
78
- rpc.value = undefined;
79
- }
80
- const [keyType, keyData] = (() => {
81
- const type = account && 'keyType' in account ? account.keyType : account?.source;
82
- if (!type)
83
- return [undefined, undefined];
84
- if (type === 'webAuthn')
85
- // TODO: derive correct bytes size of key data based on webauthn create metadata.
86
- return ['webAuthn', `0x${'ff'.repeat(1400)}`];
87
- if (['p256', 'secp256k1'].includes(type))
88
- return [type, undefined];
89
- return [undefined, undefined];
90
- })();
91
- return {
92
- ...rpc,
93
- ...(keyType ? { keyType } : {}),
94
- ...(keyData ? { keyData } : {}),
95
- ...(request.feePayer
96
- ? {
97
- feePayer: typeof request.feePayer === 'object'
98
- ? parseAccount(request.feePayer)
99
- : request.feePayer,
100
- }
101
- : {}),
102
- };
103
- }
104
- //# sourceMappingURL=Formatters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Formatters.js","sourceRoot":"","sources":["../../src/viem/Formatters.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import type { MaybePromise } from '../internal/types.js';
2
- export type Storage<schema extends Record<string, unknown> = Record<string, unknown>> = {
3
- getItem: <name extends keyof schema>(name: name) => MaybePromise<schema[name] | null>;
4
- removeItem: <name extends keyof schema>(name: name) => MaybePromise<void>;
5
- setItem: <name extends keyof schema>(name: name, value: schema[name]) => MaybePromise<void>;
6
- };
7
- export declare function from<schema extends Record<string, unknown>>(storage: Storage, options?: {
8
- key?: string | undefined;
9
- }): Storage<schema>;
10
- export declare namespace from {
11
- type Options = {
12
- key?: string | undefined;
13
- };
14
- }
15
- export declare function idb<schema extends Record<string, unknown>>(): Storage<schema>;
16
- export declare function localStorage<schema extends Record<string, unknown>>(options?: localStorage.Options): Storage<schema>;
17
- export declare namespace localStorage {
18
- type Options = from.Options;
19
- }
20
- export declare function memory<schema extends Record<string, unknown>>(options?: memory.Options): Storage<schema>;
21
- export declare namespace memory {
22
- type Options = from.Options;
23
- }
24
- //# sourceMappingURL=Storage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Storage.d.ts","sourceRoot":"","sources":["../../src/viem/Storage.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,MAAM,OAAO,CACjB,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAC9D;IACF,OAAO,EAAE,CAAC,IAAI,SAAS,MAAM,MAAM,EACjC,IAAI,EAAE,IAAI,KACP,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;IACtC,UAAU,EAAE,CAAC,IAAI,SAAS,MAAM,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,CAAA;IACzE,OAAO,EAAE,CAAC,IAAI,SAAS,MAAM,MAAM,EACjC,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAChB,YAAY,CAAC,IAAI,CAAC,CAAA;CACxB,CAAA;AAED,wBAAgB,IAAI,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzD,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAO,GACzC,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,yBAAiB,IAAI,CAAC;IACpB,KAAY,OAAO,GAAG;QACpB,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KACzB,CAAA;CACF;AAED,wBAAgB,GAAG,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,qBAkBzD;AAED,wBAAgB,YAAY,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjE,OAAO,GAAE,YAAY,CAAC,OAAY,mBAuBnC;AAED,yBAAiB,YAAY,CAAC;IAC5B,KAAY,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;CACnC;AAGD,wBAAgB,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,OAAO,GAAE,MAAM,CAAC,OAAY,mBAgB7B;AAED,yBAAiB,MAAM,CAAC;IACtB,KAAY,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;CACnC"}
@@ -1,68 +0,0 @@
1
- import { createStore, del, get, set } from 'idb-keyval';
2
- import * as Json from 'ox/Json';
3
- import { normalizeValue } from './internal/utils.js';
4
- export function from(storage, options = {}) {
5
- const key = (name) => `${options.key ? `${options.key}:` : ''}${name}`;
6
- return {
7
- getItem: (name) => storage.getItem(key(name)),
8
- removeItem: (name) => storage.removeItem(key(name)),
9
- setItem: (name, value) => storage.setItem(key(name), value),
10
- };
11
- }
12
- export function idb() {
13
- const store = typeof indexedDB !== 'undefined'
14
- ? createStore('tempo.ts', 'store')
15
- : undefined;
16
- return from({
17
- async getItem(name) {
18
- const value = await get(name, store);
19
- if (value === null)
20
- return null;
21
- return value;
22
- },
23
- async removeItem(name) {
24
- await del(name, store);
25
- },
26
- async setItem(name, value) {
27
- await set(name, normalizeValue(value), store);
28
- },
29
- });
30
- }
31
- export function localStorage(options = {}) {
32
- if (typeof window === 'undefined')
33
- return memory();
34
- return from({
35
- async getItem(name) {
36
- const item = window.localStorage.getItem(name);
37
- if (item === null)
38
- return null;
39
- try {
40
- return Json.parse(item);
41
- }
42
- catch {
43
- return null;
44
- }
45
- },
46
- async removeItem(name) {
47
- window.localStorage.removeItem(name);
48
- },
49
- async setItem(name, value) {
50
- window.localStorage.setItem(name, Json.stringify(value));
51
- },
52
- }, options);
53
- }
54
- const store = new Map();
55
- export function memory(options = {}) {
56
- return from({
57
- getItem(name) {
58
- return store.get(name) ?? null;
59
- },
60
- removeItem(name) {
61
- store.delete(name);
62
- },
63
- setItem(name, value) {
64
- store.set(name, value);
65
- },
66
- }, options);
67
- }
68
- //# sourceMappingURL=Storage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Storage.js","sourceRoot":"","sources":["../../src/viem/Storage.ts"],"names":[],"mappings":"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"}
@@ -1,76 +0,0 @@
1
- import * as Hex from 'ox/Hex';
2
- import { type AuthorizationTempo, type KeyAuthorization, type TransactionReceipt as ox_TransactionReceipt, SignatureEnvelope, TxEnvelopeTempo as TxTempo } from 'ox/tempo';
3
- import { type AccessList, type Account, type Address, type FeeValuesEIP1559, type ParseTransactionReturnType, type TransactionBase, type TransactionRequestBase, type TransactionSerializableBase, type TransactionSerializedGeneric, type RpcTransaction as viem_RpcTransaction, type RpcTransactionRequest as viem_RpcTransactionRequest, type Signature as viem_Signature, type Transaction as viem_Transaction, type TransactionReceipt as viem_TransactionReceipt, type TransactionRequest as viem_TransactionRequest, type TransactionSerializable as viem_TransactionSerializable, type TransactionSerialized as viem_TransactionSerialized, type TransactionType as viem_TransactionType } from 'viem';
4
- import type { ExactPartial, OneOf, PartialBy } from '../internal/types.js';
5
- export type Transaction<bigintType = bigint, numberType = number, pending extends boolean = false> = OneOf<viem_Transaction<bigintType, numberType, pending> | TransactionTempo<bigintType, numberType, pending>>;
6
- export type TransactionRpc<pending extends boolean = false> = OneOf<viem_RpcTransaction<pending> | (Omit<TransactionTempo<Hex.Hex, Hex.Hex, pending, '0x76'>, 'authorizationList' | 'keyAuthorization' | 'signature'> & {
7
- authorizationList?: AuthorizationTempo.ListRpc | undefined;
8
- keyAuthorization?: KeyAuthorization.Rpc | null | undefined;
9
- signature: SignatureEnvelope.SignatureEnvelopeRpc;
10
- })>;
11
- export type TransactionTempo<quantity = bigint, index = number, isPending extends boolean = boolean, type = 'tempo'> = PartialBy<Omit<TransactionBase<quantity, index, isPending>, 'data' | 'input' | 'value' | 'to'>, 'r' | 's' | 'v' | 'yParity'> & {
12
- accessList: AccessList;
13
- authorizationList?: AuthorizationTempo.ListSigned<quantity, index> | undefined;
14
- calls: readonly TxTempo.Call<quantity>[];
15
- chainId: index;
16
- feeToken?: Address | undefined;
17
- feePayerSignature?: viem_Signature | undefined;
18
- keyAuthorization?: KeyAuthorization.Signed<quantity, index> | null | undefined;
19
- nonceKey?: quantity | undefined;
20
- signature: SignatureEnvelope.SignatureEnvelope;
21
- type: type;
22
- validBefore?: index | undefined;
23
- validAfter?: index | undefined;
24
- } & FeeValuesEIP1559<quantity>;
25
- export type TransactionRequest<bigintType = bigint, numberType = number> = OneOf<viem_TransactionRequest<bigintType, numberType> | TransactionRequestTempo<bigintType, numberType>>;
26
- export type TransactionRequestRpc = OneOf<viem_RpcTransactionRequest | TransactionRequestTempo<Hex.Hex, Hex.Hex, '0x76'>>;
27
- export type TransactionReceipt<quantity = bigint, index = number, status = 'success' | 'reverted', type = TransactionType> = viem_TransactionReceipt<quantity, index, status, type> & {
28
- feePayer?: Address | undefined;
29
- feeToken?: Address | undefined;
30
- };
31
- export type TransactionReceiptRpc = TransactionReceipt<Hex.Hex, Hex.Hex, ox_TransactionReceipt.RpcStatus, ox_TransactionReceipt.RpcType>;
32
- export type TransactionRequestTempo<quantity = bigint, index = number, type = 'tempo'> = TransactionRequestBase<quantity, index, type> & ExactPartial<FeeValuesEIP1559<quantity>> & {
33
- accessList?: AccessList | undefined;
34
- keyAuthorization?: KeyAuthorization.Signed<quantity, index> | undefined;
35
- calls?: readonly TxTempo.Call<quantity>[] | undefined;
36
- feePayer?: Account | true | undefined;
37
- feeToken?: Address | bigint | undefined;
38
- nonceKey?: 'random' | quantity | undefined;
39
- validBefore?: index | undefined;
40
- validAfter?: index | undefined;
41
- };
42
- export type TransactionSerializable = OneOf<viem_TransactionSerializable | TransactionSerializableTempo>;
43
- export type TransactionSerializableTempo<quantity = bigint, index = number> = TransactionSerializableBase<quantity, index> & ExactPartial<FeeValuesEIP1559<quantity>> & {
44
- accessList?: AccessList | undefined;
45
- calls: readonly TxTempo.Call<quantity>[];
46
- chainId: number;
47
- feeToken?: Address | bigint | undefined;
48
- feePayerSignature?: viem_Signature | null | undefined;
49
- keyAuthorization?: KeyAuthorization.Signed<quantity, index> | undefined;
50
- nonceKey?: quantity | undefined;
51
- signature?: SignatureEnvelope.SignatureEnvelope<quantity, index> | undefined;
52
- validBefore?: index | undefined;
53
- validAfter?: index | undefined;
54
- type?: 'tempo' | undefined;
55
- };
56
- export type TransactionSerialized<type extends TransactionType = TransactionType> = viem_TransactionSerialized<type> | TransactionSerializedTempo;
57
- export type TransactionSerializedTempo = `0x76${string}`;
58
- export type TransactionType = viem_TransactionType | 'tempo';
59
- export declare function getType(transaction: Record<string, unknown>): Transaction['type'];
60
- export declare function isTempo(transaction: Record<string, unknown>): boolean;
61
- export declare function deserialize<const serialized extends TransactionSerializedGeneric>(serializedTransaction: serialized): deserialize.ReturnValue<serialized>;
62
- export declare namespace deserialize {
63
- type ReturnValue<serialized extends TransactionSerializedGeneric = TransactionSerializedGeneric> = serialized extends TransactionSerializedTempo ? TransactionSerializableTempo : ParseTransactionReturnType<serialized>;
64
- }
65
- export declare function serialize(transaction: TransactionSerializable & {
66
- feePayer?: Account | true | undefined;
67
- from?: Address | undefined;
68
- }, signature?: OneOf<SignatureEnvelope.SignatureEnvelope | viem_Signature> | undefined): Promise<`0x${string}`>;
69
- export {
70
- /** @deprecated */
71
- KeyAuthorization as z_KeyAuthorization,
72
- /** @deprecated */
73
- SignatureEnvelope as z_SignatureEnvelope,
74
- /** @deprecated */
75
- TxEnvelopeTempo as z_TxEnvelopeTempo, } from 'ox/tempo';
76
- //# sourceMappingURL=Transaction.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Transaction.d.ts","sourceRoot":"","sources":["../../src/viem/Transaction.ts"],"names":[],"mappings":"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"}
@@ -1,176 +0,0 @@
1
- // TODO: Find opportunities to make this file less duplicated + more simplified with Viem v3.
2
- import * as Hex from 'ox/Hex';
3
- import * as Secp256k1 from 'ox/Secp256k1';
4
- import * as Signature from 'ox/Signature';
5
- import { SignatureEnvelope, TxEnvelopeTempo as TxTempo, } from 'ox/tempo';
6
- import { getTransactionType as viem_getTransactionType, parseTransaction as viem_parseTransaction, serializeTransaction as viem_serializeTransaction, } from 'viem';
7
- export function getType(transaction) {
8
- if (typeof transaction.calls !== 'undefined' ||
9
- typeof transaction.feePayer !== 'undefined' ||
10
- typeof transaction.feeToken !== 'undefined' ||
11
- typeof transaction.nonceKey !== 'undefined' ||
12
- typeof transaction.signature !== 'undefined' ||
13
- typeof transaction.validBefore !== 'undefined' ||
14
- typeof transaction.validAfter !== 'undefined')
15
- return 'tempo';
16
- if (transaction.type)
17
- return transaction.type;
18
- return viem_getTransactionType(transaction);
19
- }
20
- export function isTempo(transaction) {
21
- try {
22
- const type = getType(transaction);
23
- return type === 'tempo';
24
- }
25
- catch {
26
- return false;
27
- }
28
- }
29
- export function deserialize(serializedTransaction) {
30
- const type = Hex.slice(serializedTransaction, 0, 1);
31
- if (type === '0x76') {
32
- const from = Hex.slice(serializedTransaction, -6) === '0xfeefeefeefee'
33
- ? Hex.slice(serializedTransaction, -26, -6)
34
- : undefined;
35
- return {
36
- ...deserializeTempo(serializedTransaction),
37
- from,
38
- };
39
- }
40
- return viem_parseTransaction(serializedTransaction);
41
- }
42
- export async function serialize(transaction, signature) {
43
- // If the transaction is not a Tempo transaction, route to Viem serializer.
44
- if (!isTempo(transaction)) {
45
- if (signature && 'type' in signature && signature.type !== 'secp256k1')
46
- throw new Error('Unsupported signature type. Expected `secp256k1` but got `' +
47
- signature.type +
48
- '`.');
49
- if (signature && 'type' in signature) {
50
- const { r, s, yParity } = signature?.signature;
51
- return viem_serializeTransaction(transaction, {
52
- r: Hex.fromNumber(r, { size: 32 }),
53
- s: Hex.fromNumber(s, { size: 32 }),
54
- yParity,
55
- });
56
- }
57
- return viem_serializeTransaction(transaction, signature);
58
- }
59
- const type = getType(transaction);
60
- if (type === 'tempo')
61
- return serializeTempo(transaction, signature);
62
- throw new Error('Unsupported transaction type');
63
- }
64
- ////////////////////////////////////////////////////////////////////////////////////
65
- // Internal
66
- /** @internal */
67
- function deserializeTempo(serializedTransaction) {
68
- const { feePayerSignature, nonce, ...tx } = TxTempo.deserialize(serializedTransaction);
69
- return {
70
- ...tx,
71
- nonce: Number(nonce ?? 0n),
72
- feePayerSignature: feePayerSignature
73
- ? {
74
- r: Hex.fromNumber(feePayerSignature.r, { size: 32 }),
75
- s: Hex.fromNumber(feePayerSignature.s, { size: 32 }),
76
- yParity: feePayerSignature.yParity,
77
- }
78
- : feePayerSignature,
79
- };
80
- }
81
- /** @internal */
82
- async function serializeTempo(transaction, sig) {
83
- const signature = (() => {
84
- if (transaction.signature)
85
- return transaction.signature;
86
- if (sig && 'type' in sig)
87
- return sig;
88
- if (sig)
89
- return SignatureEnvelope.from({
90
- r: BigInt(sig.r),
91
- s: BigInt(sig.s),
92
- yParity: Number(sig.yParity),
93
- });
94
- return undefined;
95
- })();
96
- const { chainId, feePayer, feePayerSignature, nonce, ...rest } = transaction;
97
- const transaction_ox = {
98
- ...rest,
99
- calls: rest.calls?.length
100
- ? rest.calls
101
- : [
102
- {
103
- to: rest.to ||
104
- (!rest.data || rest.data === '0x'
105
- ? '0x0000000000000000000000000000000000000000'
106
- : undefined),
107
- value: rest.value,
108
- data: rest.data,
109
- },
110
- ],
111
- chainId: Number(chainId),
112
- feePayerSignature: feePayerSignature
113
- ? {
114
- r: BigInt(feePayerSignature.r),
115
- s: BigInt(feePayerSignature.s),
116
- yParity: Number(feePayerSignature.yParity),
117
- }
118
- : feePayer
119
- ? null
120
- : undefined,
121
- type: 'tempo',
122
- ...(nonce ? { nonce: BigInt(nonce) } : {}),
123
- };
124
- if (signature && typeof transaction.feePayer === 'object') {
125
- const tx = TxTempo.from(transaction_ox, {
126
- signature,
127
- });
128
- const sender = (() => {
129
- if (transaction.from)
130
- return transaction.from;
131
- if (signature.type === 'secp256k1')
132
- return Secp256k1.recoverAddress({
133
- payload: TxTempo.getSignPayload(tx),
134
- signature: signature.signature,
135
- });
136
- throw new Error('Unable to extract sender from transaction or signature.');
137
- })();
138
- const hash = TxTempo.getFeePayerSignPayload(tx, {
139
- sender,
140
- });
141
- const feePayerSignature = await transaction.feePayer.sign({
142
- hash,
143
- });
144
- return TxTempo.serialize(tx, {
145
- feePayerSignature: Signature.from(feePayerSignature),
146
- });
147
- }
148
- if (feePayer === true) {
149
- const serialized = TxTempo.serialize(transaction_ox, {
150
- feePayerSignature: null,
151
- signature,
152
- });
153
- // if the transaction is ready to be sent off (signed), add the sender
154
- // and a fee marker to the serialized transaction, so the fee payer proxy
155
- // can infer the sender address.
156
- if (transaction.from && signature)
157
- return Hex.concat(serialized, transaction.from, '0xfeefeefeefee');
158
- return serialized;
159
- }
160
- return TxTempo.serialize(
161
- // If we have specified a fee payer, the user will not be signing over the fee token.
162
- // Defer the fee token signing to the fee payer.
163
- { ...transaction_ox, ...(feePayer ? { feeToken: undefined } : {}) }, {
164
- feePayerSignature: undefined,
165
- signature,
166
- });
167
- }
168
- // Export types required for inference.
169
- export {
170
- /** @deprecated */
171
- KeyAuthorization as z_KeyAuthorization,
172
- /** @deprecated */
173
- SignatureEnvelope as z_SignatureEnvelope,
174
- /** @deprecated */
175
- TxEnvelopeTempo as z_TxEnvelopeTempo, } from 'ox/tempo';
176
- //# sourceMappingURL=Transaction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Transaction.js","sourceRoot":"","sources":["../../src/viem/Transaction.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- import { type Transport } from 'viem';
2
- export type FeePayer = Transport<typeof withFeePayer.type>;
3
- /**
4
- * Creates a fee payer transport that routes requests between
5
- * the default transport or the fee payer transport.
6
- *
7
- * The policy parameter controls how the fee payer handles transactions:
8
- * - `'sign-only'`: Fee payer co-signs the transaction and returns it to the client transport, which then broadcasts it via the default transport
9
- * - `'sign-and-broadcast'`: Fee payer co-signs and broadcasts the transaction directly
10
- *
11
- * @param defaultTransport - The default transport to use.
12
- * @param feePayerTransport - The fee payer transport to use.
13
- * @param parameters - Configuration parameters.
14
- * @returns A relay transport.
15
- */
16
- export declare function withFeePayer(defaultTransport: Transport, relayTransport: Transport, parameters?: withFeePayer.Parameters): withFeePayer.ReturnValue;
17
- export declare namespace withFeePayer {
18
- const type = "feePayer";
19
- type Parameters = {
20
- /** Policy for how the fee payer should handle transactions. Defaults to `'sign-only'`. */
21
- policy?: 'sign-only' | 'sign-and-broadcast' | undefined;
22
- };
23
- type ReturnValue = FeePayer;
24
- }
25
- /**
26
- * Creates a transport that instruments a compatibility layer for
27
- * `wallet_` RPC actions (`sendCalls`, `getCallsStatus`, etc).
28
- *
29
- * @param transport - Transport to wrap.
30
- * @returns Transport.
31
- */
32
- export declare function walletNamespaceCompat(transport: Transport): Transport;
33
- //# sourceMappingURL=Transport.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../../src/viem/Transport.ts"],"names":[],"mappings":"AAKA,OAAO,EAAiC,KAAK,SAAS,EAAE,MAAM,MAAM,CAAA;AASpE,MAAM,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;AAE1D;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAC1B,gBAAgB,EAAE,SAAS,EAC3B,cAAc,EAAE,SAAS,EACzB,UAAU,CAAC,EAAE,YAAY,CAAC,UAAU,GACnC,YAAY,CAAC,WAAW,CAmD1B;AAED,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IAC7B,MAAM,IAAI,aAAa,CAAA;IAE9B,KAAY,UAAU,GAAG;QACvB,0FAA0F;QAC1F,MAAM,CAAC,EAAE,WAAW,GAAG,oBAAoB,GAAG,SAAS,CAAA;KACxD,CAAA;IAED,KAAY,WAAW,GAAG,QAAQ,CAAA;CACnC;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAsFrE"}