@aa-sdk/core 4.0.0-alpha.0 → 4.0.0-alpha.2

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 (195) hide show
  1. package/dist/cjs/account/simple.js.map +1 -1
  2. package/dist/cjs/account/smartContractAccount.js +2 -1
  3. package/dist/cjs/account/smartContractAccount.js.map +1 -1
  4. package/dist/cjs/actions/smartAccount/buildUserOperation.js.map +1 -1
  5. package/dist/cjs/actions/smartAccount/dropAndReplaceUserOperation.js.map +1 -1
  6. package/dist/cjs/actions/smartAccount/sendTransaction.js.map +1 -1
  7. package/dist/cjs/actions/smartAccount/sendTransactions.js.map +1 -1
  8. package/dist/cjs/actions/smartAccount/waitForUserOperationTransacation.js.map +1 -1
  9. package/dist/cjs/client/bundlerClient.js.map +1 -1
  10. package/dist/cjs/client/decorators/bundlerClient.js.map +1 -1
  11. package/dist/cjs/client/decorators/smartAccountClient.js.map +1 -1
  12. package/dist/cjs/client/smartAccountClient.js.map +1 -1
  13. package/dist/cjs/ens/utils.d.ts +1 -1
  14. package/dist/cjs/ens/utils.js +3 -3
  15. package/dist/cjs/ens/utils.js.map +1 -1
  16. package/dist/cjs/entrypoint/index.js.map +1 -1
  17. package/dist/cjs/errors/account.js.map +1 -1
  18. package/dist/cjs/errors/base.js.map +1 -1
  19. package/dist/cjs/errors/client.js.map +1 -1
  20. package/dist/cjs/errors/entrypoint.js.map +1 -1
  21. package/dist/cjs/errors/signer.js.map +1 -1
  22. package/dist/cjs/errors/transaction.js.map +1 -1
  23. package/dist/cjs/index.d.ts +2 -3
  24. package/dist/cjs/index.js +35 -60
  25. package/dist/cjs/index.js.map +1 -1
  26. package/dist/cjs/logger.js.map +1 -1
  27. package/dist/cjs/middleware/defaults/feeEstimator.d.ts +1 -1
  28. package/dist/cjs/middleware/defaults/feeEstimator.js +17 -15
  29. package/dist/cjs/middleware/defaults/feeEstimator.js.map +1 -1
  30. package/dist/cjs/middleware/defaults/paymasterAndData.js.map +1 -1
  31. package/dist/cjs/middleware/defaults/userOpSigner.js.map +1 -1
  32. package/dist/cjs/signer/local-account.d.ts +2 -2
  33. package/dist/cjs/signer/local-account.js.map +1 -1
  34. package/dist/cjs/signer/schema.js.map +1 -1
  35. package/dist/cjs/signer/utils.d.ts +1 -9
  36. package/dist/cjs/signer/utils.js +1 -16
  37. package/dist/cjs/signer/utils.js.map +1 -1
  38. package/dist/cjs/signer/wallet-client.d.ts +2 -2
  39. package/dist/cjs/signer/wallet-client.js.map +1 -1
  40. package/dist/cjs/utils/defaults.d.ts +1 -1
  41. package/dist/cjs/utils/defaults.js +25 -25
  42. package/dist/cjs/utils/defaults.js.map +1 -1
  43. package/dist/cjs/utils/index.d.ts +0 -4
  44. package/dist/cjs/utils/index.js +1 -33
  45. package/dist/cjs/utils/index.js.map +1 -1
  46. package/dist/cjs/version.d.ts +1 -1
  47. package/dist/cjs/version.js +1 -1
  48. package/dist/cjs/version.js.map +1 -1
  49. package/dist/esm/account/simple.js.map +1 -1
  50. package/dist/esm/account/smartContractAccount.js +2 -1
  51. package/dist/esm/account/smartContractAccount.js.map +1 -1
  52. package/dist/esm/actions/smartAccount/buildUserOperation.js.map +1 -1
  53. package/dist/esm/actions/smartAccount/dropAndReplaceUserOperation.js.map +1 -1
  54. package/dist/esm/actions/smartAccount/sendTransaction.js.map +1 -1
  55. package/dist/esm/actions/smartAccount/sendTransactions.js.map +1 -1
  56. package/dist/esm/actions/smartAccount/waitForUserOperationTransacation.js.map +1 -1
  57. package/dist/esm/client/bundlerClient.js.map +1 -1
  58. package/dist/esm/client/decorators/bundlerClient.js.map +1 -1
  59. package/dist/esm/client/decorators/smartAccountClient.js.map +1 -1
  60. package/dist/esm/client/smartAccountClient.js.map +1 -1
  61. package/dist/esm/ens/utils.d.ts +1 -1
  62. package/dist/esm/ens/utils.js +1 -1
  63. package/dist/esm/ens/utils.js.map +1 -1
  64. package/dist/esm/entrypoint/index.js.map +1 -1
  65. package/dist/esm/errors/account.js.map +1 -1
  66. package/dist/esm/errors/base.js.map +1 -1
  67. package/dist/esm/errors/client.js.map +1 -1
  68. package/dist/esm/errors/entrypoint.js.map +1 -1
  69. package/dist/esm/errors/signer.js.map +1 -1
  70. package/dist/esm/errors/transaction.js.map +1 -1
  71. package/dist/esm/index.d.ts +2 -3
  72. package/dist/esm/index.js +2 -3
  73. package/dist/esm/index.js.map +1 -1
  74. package/dist/esm/logger.js.map +1 -1
  75. package/dist/esm/middleware/defaults/feeEstimator.d.ts +1 -1
  76. package/dist/esm/middleware/defaults/feeEstimator.js +17 -15
  77. package/dist/esm/middleware/defaults/feeEstimator.js.map +1 -1
  78. package/dist/esm/middleware/defaults/paymasterAndData.js.map +1 -1
  79. package/dist/esm/middleware/defaults/userOpSigner.js.map +1 -1
  80. package/dist/esm/signer/local-account.d.ts +2 -2
  81. package/dist/esm/signer/local-account.js.map +1 -1
  82. package/dist/esm/signer/schema.js.map +1 -1
  83. package/dist/esm/signer/utils.d.ts +1 -9
  84. package/dist/esm/signer/utils.js +0 -14
  85. package/dist/esm/signer/utils.js.map +1 -1
  86. package/dist/esm/signer/wallet-client.d.ts +2 -2
  87. package/dist/esm/signer/wallet-client.js.map +1 -1
  88. package/dist/esm/utils/defaults.d.ts +1 -1
  89. package/dist/esm/utils/defaults.js +2 -2
  90. package/dist/esm/utils/defaults.js.map +1 -1
  91. package/dist/esm/utils/index.d.ts +0 -4
  92. package/dist/esm/utils/index.js +0 -18
  93. package/dist/esm/utils/index.js.map +1 -1
  94. package/dist/esm/version.d.ts +1 -1
  95. package/dist/esm/version.js +1 -1
  96. package/dist/esm/version.js.map +1 -1
  97. package/dist/types/account/smartContractAccount.d.ts +49 -0
  98. package/dist/types/account/smartContractAccount.d.ts.map +1 -1
  99. package/dist/types/actions/smartAccount/buildUserOperation.d.ts +23 -0
  100. package/dist/types/actions/smartAccount/buildUserOperation.d.ts.map +1 -1
  101. package/dist/types/actions/smartAccount/dropAndReplaceUserOperation.d.ts +22 -0
  102. package/dist/types/actions/smartAccount/dropAndReplaceUserOperation.d.ts.map +1 -1
  103. package/dist/types/actions/smartAccount/sendTransaction.d.ts +24 -0
  104. package/dist/types/actions/smartAccount/sendTransaction.d.ts.map +1 -1
  105. package/dist/types/actions/smartAccount/sendTransactions.d.ts +23 -0
  106. package/dist/types/actions/smartAccount/sendTransactions.d.ts.map +1 -1
  107. package/dist/types/actions/smartAccount/waitForUserOperationTransacation.d.ts +24 -0
  108. package/dist/types/actions/smartAccount/waitForUserOperationTransacation.d.ts.map +1 -1
  109. package/dist/types/client/bundlerClient.d.ts +15 -0
  110. package/dist/types/client/bundlerClient.d.ts.map +1 -1
  111. package/dist/types/client/decorators/bundlerClient.d.ts +9 -0
  112. package/dist/types/client/decorators/bundlerClient.d.ts.map +1 -1
  113. package/dist/types/client/decorators/smartAccountClient.d.ts +8 -0
  114. package/dist/types/client/decorators/smartAccountClient.d.ts.map +1 -1
  115. package/dist/types/client/smartAccountClient.d.ts.map +1 -1
  116. package/dist/types/ens/utils.d.ts +46 -1
  117. package/dist/types/ens/utils.d.ts.map +1 -1
  118. package/dist/types/entrypoint/index.d.ts +14 -0
  119. package/dist/types/entrypoint/index.d.ts.map +1 -1
  120. package/dist/types/errors/account.d.ts +34 -0
  121. package/dist/types/errors/account.d.ts.map +1 -1
  122. package/dist/types/errors/base.d.ts +5 -0
  123. package/dist/types/errors/base.d.ts.map +1 -1
  124. package/dist/types/errors/client.d.ts +9 -0
  125. package/dist/types/errors/client.d.ts.map +1 -1
  126. package/dist/types/errors/entrypoint.d.ts +6 -0
  127. package/dist/types/errors/entrypoint.d.ts.map +1 -1
  128. package/dist/types/errors/signer.d.ts +3 -0
  129. package/dist/types/errors/signer.d.ts.map +1 -1
  130. package/dist/types/errors/transaction.d.ts +6 -0
  131. package/dist/types/errors/transaction.d.ts.map +1 -1
  132. package/dist/types/index.d.ts +2 -3
  133. package/dist/types/index.d.ts.map +1 -1
  134. package/dist/types/logger.d.ts +3 -0
  135. package/dist/types/logger.d.ts.map +1 -1
  136. package/dist/types/middleware/defaults/feeEstimator.d.ts +21 -1
  137. package/dist/types/middleware/defaults/feeEstimator.d.ts.map +1 -1
  138. package/dist/types/middleware/defaults/paymasterAndData.d.ts +8 -0
  139. package/dist/types/middleware/defaults/paymasterAndData.d.ts.map +1 -1
  140. package/dist/types/middleware/defaults/userOpSigner.d.ts +10 -0
  141. package/dist/types/middleware/defaults/userOpSigner.d.ts.map +1 -1
  142. package/dist/types/signer/local-account.d.ts +5 -2
  143. package/dist/types/signer/local-account.d.ts.map +1 -1
  144. package/dist/types/signer/schema.d.ts +14 -0
  145. package/dist/types/signer/schema.d.ts.map +1 -1
  146. package/dist/types/signer/utils.d.ts +21 -9
  147. package/dist/types/signer/utils.d.ts.map +1 -1
  148. package/dist/types/signer/wallet-client.d.ts +5 -2
  149. package/dist/types/signer/wallet-client.d.ts.map +1 -1
  150. package/dist/types/utils/defaults.d.ts +1 -1
  151. package/dist/types/utils/defaults.d.ts.map +1 -1
  152. package/dist/types/utils/index.d.ts +54 -11
  153. package/dist/types/utils/index.d.ts.map +1 -1
  154. package/dist/types/version.d.ts +1 -1
  155. package/package.json +2 -2
  156. package/src/account/simple.ts +6 -0
  157. package/src/account/smartContractAccount.ts +120 -15
  158. package/src/actions/smartAccount/buildUserOperation.ts +23 -0
  159. package/src/actions/smartAccount/dropAndReplaceUserOperation.ts +22 -0
  160. package/src/actions/smartAccount/sendTransaction.ts +24 -0
  161. package/src/actions/smartAccount/sendTransactions.ts +23 -0
  162. package/src/actions/smartAccount/waitForUserOperationTransacation.ts +24 -0
  163. package/src/client/bundlerClient.ts +32 -0
  164. package/src/client/decorators/bundlerClient.ts +9 -0
  165. package/src/client/decorators/smartAccountClient.ts +8 -0
  166. package/src/client/smartAccountClient.ts +41 -0
  167. package/src/ens/utils.ts +46 -2
  168. package/src/entrypoint/index.ts +30 -62
  169. package/src/errors/account.ts +34 -0
  170. package/src/errors/base.ts +5 -2
  171. package/src/errors/client.ts +9 -0
  172. package/src/errors/entrypoint.ts +6 -0
  173. package/src/errors/signer.ts +3 -0
  174. package/src/errors/transaction.ts +6 -0
  175. package/src/index.ts +1 -28
  176. package/src/logger.ts +3 -0
  177. package/src/middleware/defaults/feeEstimator.ts +24 -4
  178. package/src/middleware/defaults/paymasterAndData.ts +8 -0
  179. package/src/middleware/defaults/userOpSigner.ts +10 -0
  180. package/src/signer/local-account.ts +3 -0
  181. package/src/signer/schema.ts +14 -0
  182. package/src/signer/utils.ts +20 -32
  183. package/src/signer/wallet-client.ts +3 -0
  184. package/src/utils/defaults.ts +3 -4
  185. package/src/utils/index.ts +54 -36
  186. package/src/version.ts +1 -1
  187. package/dist/cjs/chains/index.d.ts +0 -20
  188. package/dist/cjs/chains/index.js +0 -169
  189. package/dist/cjs/chains/index.js.map +0 -1
  190. package/dist/esm/chains/index.d.ts +0 -20
  191. package/dist/esm/chains/index.js +0 -166
  192. package/dist/esm/chains/index.js.map +0 -1
  193. package/dist/types/chains/index.d.ts +0 -21
  194. package/dist/types/chains/index.d.ts.map +0 -1
  195. package/src/chains/index.ts +0 -194
@@ -5,7 +5,6 @@ import {
5
5
  type Address,
6
6
  type Hash,
7
7
  type Hex,
8
- type PublicClient,
9
8
  } from "viem";
10
9
 
11
10
  export type SignWith6492Params = {
@@ -14,13 +13,26 @@ export type SignWith6492Params = {
14
13
  signature: Hash;
15
14
  };
16
15
 
17
- type VerifyEIP6492SignatureParams = {
18
- signer: Address;
19
- hash: Hash;
20
- signature: Hash;
21
- client: PublicClient;
22
- };
23
-
16
+ /**
17
+ * Wraps a given signature with additional data following the EIP-6492 standard.
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * import { wrapSignatureWith6492 } from "@aa-sdk/core";
22
+ *
23
+ * const signature = wrapSignatureWith6492({
24
+ * factoryAddress: "0x...",
25
+ * factoryCalldata: "0x...",
26
+ * signature: "0x...",
27
+ * });
28
+ * ```
29
+ *
30
+ * @param {SignWith6492Params} params The parameters to wrap the signature
31
+ * @param {Hex} params.factoryAddress The address of the factory
32
+ * @param {Hex} params.factoryCalldata The calldata for the factory
33
+ * @param {Hex} params.signature The original signature that needs to be wrapped
34
+ * @returns {Hash} The wrapped signature
35
+ */
24
36
  export const wrapSignatureWith6492 = ({
25
37
  factoryAddress,
26
38
  factoryCalldata,
@@ -42,27 +54,3 @@ export const wrapSignatureWith6492 = ({
42
54
  "0x6492649264926492649264926492649264926492649264926492649264926492",
43
55
  ]);
44
56
  };
45
-
46
- // defined in https://github.com/AmbireTech/signature-validator/blob/main/index.ts#L13C17-L13C17
47
- const universalValidatorByteCode =
48
- "0x60806040523480156200001157600080fd5b50604051620007003803806200070083398101604081905262000034916200056f565b6000620000438484846200004f565b9050806000526001601ff35b600080846001600160a01b0316803b806020016040519081016040528181526000908060200190933c90507f6492649264926492649264926492649264926492649264926492649264926492620000a68462000451565b036200021f57600060608085806020019051810190620000c79190620005ce565b8651929550909350915060000362000192576000836001600160a01b031683604051620000f5919062000643565b6000604051808303816000865af19150503d806000811462000134576040519150601f19603f3d011682016040523d82523d6000602084013e62000139565b606091505b5050905080620001905760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b505b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90620001c4908b90869060040162000661565b602060405180830381865afa158015620001e2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200020891906200069d565b6001600160e01b031916149450505050506200044a565b805115620002b157604051630b135d3f60e11b808252906001600160a01b03871690631626ba7e9062000259908890889060040162000661565b602060405180830381865afa15801562000277573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200029d91906200069d565b6001600160e01b031916149150506200044a565b8251604114620003195760405162461bcd60e51b815260206004820152603a6024820152600080516020620006e083398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e677468000000000000606482015260840162000187565b620003236200046b565b506020830151604080850151855186939260009185919081106200034b576200034b620006c9565b016020015160f81c9050601b81148015906200036b57508060ff16601c14155b15620003cf5760405162461bcd60e51b815260206004820152603b6024820152600080516020620006e083398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c75650000000000606482015260840162000187565b6040805160008152602081018083528a905260ff83169181019190915260608101849052608081018390526001600160a01b038a169060019060a0016020604051602081039080840390855afa1580156200042e573d6000803e3d6000fd5b505050602060405103516001600160a01b031614955050505050505b9392505050565b60006020825110156200046357600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b03811681146200049f57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620004d5578181015183820152602001620004bb565b50506000910152565b600082601f830112620004f057600080fd5b81516001600160401b03808211156200050d576200050d620004a2565b604051601f8301601f19908116603f01168101908282118183101715620005385762000538620004a2565b816040528381528660208588010111156200055257600080fd5b62000565846020830160208901620004b8565b9695505050505050565b6000806000606084860312156200058557600080fd5b8351620005928162000489565b6020850151604086015191945092506001600160401b03811115620005b657600080fd5b620005c486828701620004de565b9150509250925092565b600080600060608486031215620005e457600080fd5b8351620005f18162000489565b60208501519093506001600160401b03808211156200060f57600080fd5b6200061d87838801620004de565b935060408601519150808211156200063457600080fd5b50620005c486828701620004de565b6000825162000657818460208701620004b8565b9190910192915050565b828152604060208201526000825180604084015262000688816060850160208701620004b8565b601f01601f1916919091016060019392505050565b600060208284031215620006b057600080fd5b81516001600160e01b0319811681146200044a57600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572";
49
-
50
- export const verifyEIP6492Signature = async ({
51
- signer,
52
- hash,
53
- signature,
54
- client,
55
- }: VerifyEIP6492SignatureParams): Promise<boolean> => {
56
- const result = await client.call({
57
- data: concat([
58
- universalValidatorByteCode,
59
- encodeAbiParameters(parseAbiParameters("address, bytes32, bytes"), [
60
- signer,
61
- hash,
62
- signature,
63
- ]),
64
- ]),
65
- });
66
-
67
- return result.data === "0x01";
68
- };
@@ -9,6 +9,9 @@ import {
9
9
  import { InvalidSignerTypeError } from "../errors/signer.js";
10
10
  import type { SmartAccountSigner } from "./types";
11
11
 
12
+ /**
13
+ * Represents a wallet client signer for smart accounts, providing methods to get the address, sign messages, and sign typed data.
14
+ */
12
15
  export class WalletClientSigner implements SmartAccountSigner<WalletClient> {
13
16
  signerType: string;
14
17
  inner: WalletClient;
@@ -7,7 +7,6 @@ import {
7
7
  baseGoerli,
8
8
  baseSepolia,
9
9
  fraxtal,
10
- fraxtalSepolia,
11
10
  goerli,
12
11
  mainnet,
13
12
  optimism,
@@ -19,11 +18,11 @@ import {
19
18
  sepolia,
20
19
  zora,
21
20
  zoraSepolia,
22
- } from "../chains/index.js";
21
+ } from "viem/chains";
23
22
  import { defaultEntryPointVersion } from "../entrypoint/index.js";
24
23
  import type { EntryPointVersion } from "../entrypoint/types.js";
25
24
  import { DefaultFactoryNotDefinedError } from "../errors/account.js";
26
- import type { UserOperationFeeOptions } from "../types";
25
+ import type { UserOperationFeeOptions } from "../types.js";
27
26
 
28
27
  /**
29
28
  * Utility method returning the default simple account factory address given a {@link Chain} object
@@ -51,7 +50,7 @@ export const getDefaultSimpleAccountFactoryAddress = (
51
50
  case baseGoerli.id:
52
51
  case baseSepolia.id:
53
52
  case fraxtal.id:
54
- case fraxtalSepolia.id:
53
+ case 2523:
55
54
  case zora.id:
56
55
  case zoraSepolia.id:
57
56
  return "0x15Ba39375ee2Ab563E8873C8390be6f2E2F50232";
@@ -1,30 +1,7 @@
1
- import type { Chain } from "viem";
2
1
  import { toHex } from "viem";
3
- import * as chains from "viem/chains";
4
- import * as alchemyChains from "../chains/index.js";
5
2
  import type { PromiseOrValue } from "../types.js";
6
3
  import type { RecordableKeys } from "./types.js";
7
4
 
8
- export const AlchemyChainMap = new Map<number, Chain>(
9
- Object.values(alchemyChains).map((c) => [c.id, c])
10
- );
11
-
12
- /**
13
- * Utility method for converting a chainId to a {@link Chain} object
14
- *
15
- * @param chainId - the chainId to convert
16
- * @returns a {@link Chain} object for the given chainId
17
- * @throws if the chainId is not found
18
- */
19
- export const getChain = (chainId: number): Chain => {
20
- for (const chain of Object.values(chains)) {
21
- if (chain.id === chainId) {
22
- return AlchemyChainMap.get(chain.id) ?? chain;
23
- }
24
- }
25
- throw new Error("could not find chain");
26
- };
27
-
28
5
  /**
29
6
  * Utility function that allows for piping a series of async functions together
30
7
  *
@@ -97,19 +74,23 @@ export function deepHexlify(obj: any): any {
97
74
  );
98
75
  }
99
76
 
100
- // borrowed from ethers.js
101
- export function defineReadOnly<T, K extends keyof T>(
102
- object: T,
103
- key: K,
104
- value: T[K]
105
- ): void {
106
- Object.defineProperty(object, key, {
107
- enumerable: true,
108
- value: value,
109
- writable: false,
110
- });
111
- }
112
-
77
+ /**
78
+ * Filters out properties with undefined or null values from the provided object.
79
+ *
80
+ * @example
81
+ * ```ts
82
+ * import { filterUndefined } from "@aa-sdk/core";
83
+ *
84
+ * const result = filterUndefined({
85
+ * foo: undefined,
86
+ * bar: null,
87
+ * baz: "baz",
88
+ * }); // { baz: "baz" }
89
+ * ```
90
+ *
91
+ * @param {T} obj the object from which to remove properties with undefined or null values
92
+ * @returns {T} the object with undefined or null properties removed
93
+ */
113
94
  export function filterUndefined<T>(obj: T): T {
114
95
  for (const key in obj) {
115
96
  if (obj[key] == null) {
@@ -119,6 +100,23 @@ export function filterUndefined<T>(obj: T): T {
119
100
  return obj as T;
120
101
  }
121
102
 
103
+ /**
104
+ * Picks the specified keys from an object and returns a new object containing only those key-value pairs.
105
+ *
106
+ * @example
107
+ * ```ts
108
+ * import { pick } from "@aa-sdk/core";
109
+ *
110
+ * const picked = pick({
111
+ * foo: "foo",
112
+ * bar: "bar",
113
+ * }, ["foo"]); // { foo: "foo" }
114
+ * ```
115
+ *
116
+ * @param {Record<string, unknown>} obj The object from which to pick keys
117
+ * @param {string|string[]} keys A single key or an array of keys to pick from the object
118
+ * @returns {Record<string, unknown>} A new object containing only the picked key-value pairs
119
+ */
122
120
  export function pick(obj: Record<string, unknown>, keys: string | string[]) {
123
121
  return Object.keys(obj)
124
122
  .filter((k) => keys.includes(k))
@@ -151,6 +149,26 @@ export const conditionalReturn = <T>(
151
149
  value: () => Promise<T>
152
150
  ): Promise<T | undefined> => condition.then((t) => (t ? value() : undefined));
153
151
 
152
+ /**
153
+ * Converts an array of objects into a record (object) where each key is determined by the specified selector and the value is determined by the provided function.
154
+ *
155
+ * @example
156
+ * ```ts
157
+ * import { toRecord } from "@aa-sdk/core";
158
+ * import { sepolia, mainnet } from "viem/chains";
159
+ *
160
+ * const addressesByChain = toRecord(
161
+ * [sepolia, mainnet],
162
+ * "id",
163
+ * () => "0x..."
164
+ * ); // { [sepolia.id]: "0x...", [mainnet.id]: "0x..." }
165
+ * ```
166
+ *
167
+ * @param {T[]} array The array of objects to convert to a record
168
+ * @param {K} selector The key used to select the property that will become the record's key
169
+ * @param {(item: T) => V} fn The function that transforms each item in the array into the record's value
170
+ * @returns {Record<T[K], V>} The resulting record object
171
+ */
154
172
  export const toRecord = <
155
173
  T extends { [K in RecordableKeys<T>]: string | number | symbol },
156
174
  K extends RecordableKeys<T>,
package/src/version.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  // This file is autogenerated by inject-version.ts. Any changes will be
2
2
  // overwritten on commit!
3
- export const VERSION = "4.0.0-alpha.0";
3
+ export const VERSION = "4.0.0-alpha.2";
@@ -1,20 +0,0 @@
1
- import { type Chain } from "viem";
2
- export declare const arbitrum: Chain;
3
- export declare const arbitrumGoerli: Chain;
4
- export declare const arbitrumSepolia: Chain;
5
- export declare const goerli: Chain;
6
- export declare const mainnet: Chain;
7
- export declare const optimism: Chain;
8
- export declare const optimismGoerli: Chain;
9
- export declare const optimismSepolia: Chain;
10
- export declare const sepolia: Chain;
11
- export declare const base: Chain;
12
- export declare const baseGoerli: Chain;
13
- export declare const baseSepolia: Chain;
14
- export declare const polygonMumbai: Chain;
15
- export declare const polygonAmoy: Chain;
16
- export declare const polygon: Chain;
17
- export declare const fraxtal: Chain;
18
- export declare const fraxtalSepolia: Chain;
19
- export declare const zora: Chain;
20
- export declare const zoraSepolia: Chain;
@@ -1,169 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.zoraSepolia = exports.zora = exports.fraxtalSepolia = exports.fraxtal = exports.polygon = exports.polygonAmoy = exports.polygonMumbai = exports.baseSepolia = exports.baseGoerli = exports.base = exports.sepolia = exports.optimismSepolia = exports.optimismGoerli = exports.optimism = exports.mainnet = exports.goerli = exports.arbitrumSepolia = exports.arbitrumGoerli = exports.arbitrum = void 0;
4
- const viem_1 = require("viem");
5
- const chains_1 = require("viem/chains");
6
- exports.arbitrum = {
7
- ...chains_1.arbitrum,
8
- rpcUrls: {
9
- ...chains_1.arbitrum.rpcUrls,
10
- alchemy: {
11
- http: ["https://arb-mainnet.g.alchemy.com/v2"],
12
- },
13
- },
14
- };
15
- exports.arbitrumGoerli = {
16
- ...chains_1.arbitrumGoerli,
17
- rpcUrls: {
18
- ...chains_1.arbitrumGoerli.rpcUrls,
19
- alchemy: {
20
- http: ["https://arb-goerli.g.alchemy.com/v2"],
21
- },
22
- },
23
- };
24
- exports.arbitrumSepolia = {
25
- ...chains_1.arbitrumSepolia,
26
- rpcUrls: {
27
- ...chains_1.arbitrumSepolia.rpcUrls,
28
- alchemy: {
29
- http: ["https://arb-sepolia.g.alchemy.com/v2"],
30
- },
31
- },
32
- };
33
- exports.goerli = {
34
- ...chains_1.goerli,
35
- rpcUrls: {
36
- ...chains_1.goerli.rpcUrls,
37
- alchemy: {
38
- http: ["https://eth-goerli.g.alchemy.com/v2"],
39
- },
40
- },
41
- };
42
- exports.mainnet = {
43
- ...chains_1.mainnet,
44
- rpcUrls: {
45
- ...chains_1.mainnet.rpcUrls,
46
- alchemy: {
47
- http: ["https://eth-mainnet.g.alchemy.com/v2"],
48
- },
49
- },
50
- };
51
- exports.optimism = {
52
- ...chains_1.optimism,
53
- rpcUrls: {
54
- ...chains_1.optimism.rpcUrls,
55
- alchemy: {
56
- http: ["https://opt-mainnet.g.alchemy.com/v2"],
57
- },
58
- },
59
- };
60
- exports.optimismGoerli = {
61
- ...chains_1.optimismGoerli,
62
- rpcUrls: {
63
- ...chains_1.optimismGoerli.rpcUrls,
64
- alchemy: {
65
- http: ["https://opt-goerli.g.alchemy.com/v2"],
66
- },
67
- },
68
- };
69
- exports.optimismSepolia = {
70
- ...chains_1.optimismSepolia,
71
- rpcUrls: {
72
- ...chains_1.optimismSepolia.rpcUrls,
73
- alchemy: {
74
- http: ["https://opt-sepolia.g.alchemy.com/v2"],
75
- },
76
- },
77
- };
78
- exports.sepolia = {
79
- ...chains_1.sepolia,
80
- rpcUrls: {
81
- ...chains_1.sepolia.rpcUrls,
82
- alchemy: {
83
- http: ["https://eth-sepolia.g.alchemy.com/v2"],
84
- },
85
- },
86
- };
87
- exports.base = {
88
- ...chains_1.base,
89
- rpcUrls: {
90
- ...chains_1.base.rpcUrls,
91
- alchemy: {
92
- http: ["https://base-mainnet.g.alchemy.com/v2"],
93
- },
94
- },
95
- };
96
- exports.baseGoerli = {
97
- ...chains_1.baseGoerli,
98
- rpcUrls: {
99
- ...chains_1.baseGoerli.rpcUrls,
100
- alchemy: {
101
- http: ["https://base-goerli.g.alchemy.com/v2"],
102
- },
103
- },
104
- };
105
- exports.baseSepolia = {
106
- ...chains_1.baseSepolia,
107
- rpcUrls: {
108
- ...chains_1.baseSepolia.rpcUrls,
109
- alchemy: {
110
- http: ["https://base-sepolia.g.alchemy.com/v2"],
111
- },
112
- },
113
- };
114
- exports.polygonMumbai = {
115
- ...chains_1.polygonMumbai,
116
- rpcUrls: {
117
- ...chains_1.polygonMumbai.rpcUrls,
118
- alchemy: {
119
- http: ["https://polygon-mumbai.g.alchemy.com/v2"],
120
- },
121
- },
122
- };
123
- exports.polygonAmoy = {
124
- ...chains_1.polygonAmoy,
125
- rpcUrls: {
126
- ...chains_1.polygonAmoy.rpcUrls,
127
- alchemy: {
128
- http: ["https://polygon-amoy.g.alchemy.com/v2"],
129
- },
130
- },
131
- };
132
- exports.polygon = {
133
- ...chains_1.polygon,
134
- rpcUrls: {
135
- ...chains_1.polygon.rpcUrls,
136
- alchemy: {
137
- http: ["https://polygon-mainnet.g.alchemy.com/v2"],
138
- },
139
- },
140
- };
141
- exports.fraxtal = {
142
- ...chains_1.fraxtal,
143
- rpcUrls: {
144
- ...chains_1.fraxtal.rpcUrls,
145
- },
146
- };
147
- exports.fraxtalSepolia = (0, viem_1.defineChain)({
148
- id: 2523,
149
- name: "Fraxtal Sepolia",
150
- nativeCurrency: { name: "Frax Ether", symbol: "frxETH", decimals: 18 },
151
- rpcUrls: {
152
- default: {
153
- http: ["https://rpc.testnet-sepolia.frax.com"],
154
- },
155
- },
156
- });
157
- exports.zora = {
158
- ...chains_1.zora,
159
- rpcUrls: {
160
- ...chains_1.zora.rpcUrls,
161
- },
162
- };
163
- exports.zoraSepolia = {
164
- ...chains_1.zoraSepolia,
165
- rpcUrls: {
166
- ...chains_1.zoraSepolia.rpcUrls,
167
- },
168
- };
169
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/chains/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { defineChain, type Chain } from \"viem\";\nimport {\n arbitrum as vab,\n arbitrumGoerli as vabg,\n arbitrumSepolia as vabs,\n base as vbase,\n baseGoerli as vbaseg,\n baseSepolia as vbases,\n goerli as vgo,\n mainnet as vmain,\n optimism as vop,\n optimismGoerli as vopg,\n optimismSepolia as vops,\n polygon as vpg,\n polygonMumbai as vpgm,\n polygonAmoy as vpga,\n sepolia as vsep,\n fraxtal as vfrax,\n zora as vzora,\n zoraSepolia as vzoras,\n} from \"viem/chains\";\n\nexport const arbitrum: Chain = {\n ...vab,\n rpcUrls: {\n ...vab.rpcUrls,\n alchemy: {\n http: [\"https://arb-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const arbitrumGoerli: Chain = {\n ...vabg,\n rpcUrls: {\n ...vabg.rpcUrls,\n alchemy: {\n http: [\"https://arb-goerli.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const arbitrumSepolia: Chain = {\n ...vabs,\n rpcUrls: {\n ...vabs.rpcUrls,\n alchemy: {\n http: [\"https://arb-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\nexport const goerli: Chain = {\n ...vgo,\n rpcUrls: {\n ...vgo.rpcUrls,\n alchemy: {\n http: [\"https://eth-goerli.g.alchemy.com/v2\"],\n },\n },\n};\nexport const mainnet: Chain = {\n ...vmain,\n rpcUrls: {\n ...vmain.rpcUrls,\n alchemy: {\n http: [\"https://eth-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\nexport const optimism: Chain = {\n ...vop,\n rpcUrls: {\n ...vop.rpcUrls,\n alchemy: {\n http: [\"https://opt-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\nexport const optimismGoerli: Chain = {\n ...vopg,\n rpcUrls: {\n ...vopg.rpcUrls,\n alchemy: {\n http: [\"https://opt-goerli.g.alchemy.com/v2\"],\n },\n },\n};\nexport const optimismSepolia: Chain = {\n ...vops,\n rpcUrls: {\n ...vops.rpcUrls,\n alchemy: {\n http: [\"https://opt-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\nexport const sepolia: Chain = {\n ...vsep,\n rpcUrls: {\n ...vsep.rpcUrls,\n alchemy: {\n http: [\"https://eth-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\nexport const base: Chain = {\n ...vbase,\n rpcUrls: {\n ...vbase.rpcUrls,\n alchemy: {\n http: [\"https://base-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\nexport const baseGoerli: Chain = {\n ...vbaseg,\n rpcUrls: {\n ...vbaseg.rpcUrls,\n alchemy: {\n http: [\"https://base-goerli.g.alchemy.com/v2\"],\n },\n },\n};\nexport const baseSepolia: Chain = {\n ...vbases,\n rpcUrls: {\n ...vbases.rpcUrls,\n alchemy: {\n http: [\"https://base-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const polygonMumbai: Chain = {\n ...vpgm,\n rpcUrls: {\n ...vpgm.rpcUrls,\n alchemy: {\n http: [\"https://polygon-mumbai.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const polygonAmoy: Chain = {\n ...vpga,\n rpcUrls: {\n ...vpga.rpcUrls,\n alchemy: {\n http: [\"https://polygon-amoy.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const polygon: Chain = {\n ...vpg,\n rpcUrls: {\n ...vpg.rpcUrls,\n alchemy: {\n http: [\"https://polygon-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const fraxtal: Chain = {\n ...vfrax,\n rpcUrls: {\n ...vfrax.rpcUrls,\n },\n};\n\nexport const fraxtalSepolia: Chain = defineChain({\n id: 2523,\n name: \"Fraxtal Sepolia\",\n nativeCurrency: { name: \"Frax Ether\", symbol: \"frxETH\", decimals: 18 },\n rpcUrls: {\n default: {\n http: [\"https://rpc.testnet-sepolia.frax.com\"],\n },\n },\n});\n\nexport const zora: Chain = {\n ...vzora,\n rpcUrls: {\n ...vzora.rpcUrls,\n },\n};\n\nexport const zoraSepolia: Chain = {\n ...vzoras,\n rpcUrls: {\n ...vzoras.rpcUrls,\n },\n};\n"]}
@@ -1,20 +0,0 @@
1
- import { type Chain } from "viem";
2
- export declare const arbitrum: Chain;
3
- export declare const arbitrumGoerli: Chain;
4
- export declare const arbitrumSepolia: Chain;
5
- export declare const goerli: Chain;
6
- export declare const mainnet: Chain;
7
- export declare const optimism: Chain;
8
- export declare const optimismGoerli: Chain;
9
- export declare const optimismSepolia: Chain;
10
- export declare const sepolia: Chain;
11
- export declare const base: Chain;
12
- export declare const baseGoerli: Chain;
13
- export declare const baseSepolia: Chain;
14
- export declare const polygonMumbai: Chain;
15
- export declare const polygonAmoy: Chain;
16
- export declare const polygon: Chain;
17
- export declare const fraxtal: Chain;
18
- export declare const fraxtalSepolia: Chain;
19
- export declare const zora: Chain;
20
- export declare const zoraSepolia: Chain;
@@ -1,166 +0,0 @@
1
- import { defineChain } from "viem";
2
- import { arbitrum as vab, arbitrumGoerli as vabg, arbitrumSepolia as vabs, base as vbase, baseGoerli as vbaseg, baseSepolia as vbases, goerli as vgo, mainnet as vmain, optimism as vop, optimismGoerli as vopg, optimismSepolia as vops, polygon as vpg, polygonMumbai as vpgm, polygonAmoy as vpga, sepolia as vsep, fraxtal as vfrax, zora as vzora, zoraSepolia as vzoras, } from "viem/chains";
3
- export const arbitrum = {
4
- ...vab,
5
- rpcUrls: {
6
- ...vab.rpcUrls,
7
- alchemy: {
8
- http: ["https://arb-mainnet.g.alchemy.com/v2"],
9
- },
10
- },
11
- };
12
- export const arbitrumGoerli = {
13
- ...vabg,
14
- rpcUrls: {
15
- ...vabg.rpcUrls,
16
- alchemy: {
17
- http: ["https://arb-goerli.g.alchemy.com/v2"],
18
- },
19
- },
20
- };
21
- export const arbitrumSepolia = {
22
- ...vabs,
23
- rpcUrls: {
24
- ...vabs.rpcUrls,
25
- alchemy: {
26
- http: ["https://arb-sepolia.g.alchemy.com/v2"],
27
- },
28
- },
29
- };
30
- export const goerli = {
31
- ...vgo,
32
- rpcUrls: {
33
- ...vgo.rpcUrls,
34
- alchemy: {
35
- http: ["https://eth-goerli.g.alchemy.com/v2"],
36
- },
37
- },
38
- };
39
- export const mainnet = {
40
- ...vmain,
41
- rpcUrls: {
42
- ...vmain.rpcUrls,
43
- alchemy: {
44
- http: ["https://eth-mainnet.g.alchemy.com/v2"],
45
- },
46
- },
47
- };
48
- export const optimism = {
49
- ...vop,
50
- rpcUrls: {
51
- ...vop.rpcUrls,
52
- alchemy: {
53
- http: ["https://opt-mainnet.g.alchemy.com/v2"],
54
- },
55
- },
56
- };
57
- export const optimismGoerli = {
58
- ...vopg,
59
- rpcUrls: {
60
- ...vopg.rpcUrls,
61
- alchemy: {
62
- http: ["https://opt-goerli.g.alchemy.com/v2"],
63
- },
64
- },
65
- };
66
- export const optimismSepolia = {
67
- ...vops,
68
- rpcUrls: {
69
- ...vops.rpcUrls,
70
- alchemy: {
71
- http: ["https://opt-sepolia.g.alchemy.com/v2"],
72
- },
73
- },
74
- };
75
- export const sepolia = {
76
- ...vsep,
77
- rpcUrls: {
78
- ...vsep.rpcUrls,
79
- alchemy: {
80
- http: ["https://eth-sepolia.g.alchemy.com/v2"],
81
- },
82
- },
83
- };
84
- export const base = {
85
- ...vbase,
86
- rpcUrls: {
87
- ...vbase.rpcUrls,
88
- alchemy: {
89
- http: ["https://base-mainnet.g.alchemy.com/v2"],
90
- },
91
- },
92
- };
93
- export const baseGoerli = {
94
- ...vbaseg,
95
- rpcUrls: {
96
- ...vbaseg.rpcUrls,
97
- alchemy: {
98
- http: ["https://base-goerli.g.alchemy.com/v2"],
99
- },
100
- },
101
- };
102
- export const baseSepolia = {
103
- ...vbases,
104
- rpcUrls: {
105
- ...vbases.rpcUrls,
106
- alchemy: {
107
- http: ["https://base-sepolia.g.alchemy.com/v2"],
108
- },
109
- },
110
- };
111
- export const polygonMumbai = {
112
- ...vpgm,
113
- rpcUrls: {
114
- ...vpgm.rpcUrls,
115
- alchemy: {
116
- http: ["https://polygon-mumbai.g.alchemy.com/v2"],
117
- },
118
- },
119
- };
120
- export const polygonAmoy = {
121
- ...vpga,
122
- rpcUrls: {
123
- ...vpga.rpcUrls,
124
- alchemy: {
125
- http: ["https://polygon-amoy.g.alchemy.com/v2"],
126
- },
127
- },
128
- };
129
- export const polygon = {
130
- ...vpg,
131
- rpcUrls: {
132
- ...vpg.rpcUrls,
133
- alchemy: {
134
- http: ["https://polygon-mainnet.g.alchemy.com/v2"],
135
- },
136
- },
137
- };
138
- export const fraxtal = {
139
- ...vfrax,
140
- rpcUrls: {
141
- ...vfrax.rpcUrls,
142
- },
143
- };
144
- export const fraxtalSepolia = defineChain({
145
- id: 2523,
146
- name: "Fraxtal Sepolia",
147
- nativeCurrency: { name: "Frax Ether", symbol: "frxETH", decimals: 18 },
148
- rpcUrls: {
149
- default: {
150
- http: ["https://rpc.testnet-sepolia.frax.com"],
151
- },
152
- },
153
- });
154
- export const zora = {
155
- ...vzora,
156
- rpcUrls: {
157
- ...vzora.rpcUrls,
158
- },
159
- };
160
- export const zoraSepolia = {
161
- ...vzoras,
162
- rpcUrls: {
163
- ...vzoras.rpcUrls,
164
- },
165
- };
166
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/chains/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { defineChain, type Chain } from \"viem\";\nimport {\n arbitrum as vab,\n arbitrumGoerli as vabg,\n arbitrumSepolia as vabs,\n base as vbase,\n baseGoerli as vbaseg,\n baseSepolia as vbases,\n goerli as vgo,\n mainnet as vmain,\n optimism as vop,\n optimismGoerli as vopg,\n optimismSepolia as vops,\n polygon as vpg,\n polygonMumbai as vpgm,\n polygonAmoy as vpga,\n sepolia as vsep,\n fraxtal as vfrax,\n zora as vzora,\n zoraSepolia as vzoras,\n} from \"viem/chains\";\n\nexport const arbitrum: Chain = {\n ...vab,\n rpcUrls: {\n ...vab.rpcUrls,\n alchemy: {\n http: [\"https://arb-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const arbitrumGoerli: Chain = {\n ...vabg,\n rpcUrls: {\n ...vabg.rpcUrls,\n alchemy: {\n http: [\"https://arb-goerli.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const arbitrumSepolia: Chain = {\n ...vabs,\n rpcUrls: {\n ...vabs.rpcUrls,\n alchemy: {\n http: [\"https://arb-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\nexport const goerli: Chain = {\n ...vgo,\n rpcUrls: {\n ...vgo.rpcUrls,\n alchemy: {\n http: [\"https://eth-goerli.g.alchemy.com/v2\"],\n },\n },\n};\nexport const mainnet: Chain = {\n ...vmain,\n rpcUrls: {\n ...vmain.rpcUrls,\n alchemy: {\n http: [\"https://eth-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\nexport const optimism: Chain = {\n ...vop,\n rpcUrls: {\n ...vop.rpcUrls,\n alchemy: {\n http: [\"https://opt-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\nexport const optimismGoerli: Chain = {\n ...vopg,\n rpcUrls: {\n ...vopg.rpcUrls,\n alchemy: {\n http: [\"https://opt-goerli.g.alchemy.com/v2\"],\n },\n },\n};\nexport const optimismSepolia: Chain = {\n ...vops,\n rpcUrls: {\n ...vops.rpcUrls,\n alchemy: {\n http: [\"https://opt-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\nexport const sepolia: Chain = {\n ...vsep,\n rpcUrls: {\n ...vsep.rpcUrls,\n alchemy: {\n http: [\"https://eth-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\nexport const base: Chain = {\n ...vbase,\n rpcUrls: {\n ...vbase.rpcUrls,\n alchemy: {\n http: [\"https://base-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\nexport const baseGoerli: Chain = {\n ...vbaseg,\n rpcUrls: {\n ...vbaseg.rpcUrls,\n alchemy: {\n http: [\"https://base-goerli.g.alchemy.com/v2\"],\n },\n },\n};\nexport const baseSepolia: Chain = {\n ...vbases,\n rpcUrls: {\n ...vbases.rpcUrls,\n alchemy: {\n http: [\"https://base-sepolia.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const polygonMumbai: Chain = {\n ...vpgm,\n rpcUrls: {\n ...vpgm.rpcUrls,\n alchemy: {\n http: [\"https://polygon-mumbai.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const polygonAmoy: Chain = {\n ...vpga,\n rpcUrls: {\n ...vpga.rpcUrls,\n alchemy: {\n http: [\"https://polygon-amoy.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const polygon: Chain = {\n ...vpg,\n rpcUrls: {\n ...vpg.rpcUrls,\n alchemy: {\n http: [\"https://polygon-mainnet.g.alchemy.com/v2\"],\n },\n },\n};\n\nexport const fraxtal: Chain = {\n ...vfrax,\n rpcUrls: {\n ...vfrax.rpcUrls,\n },\n};\n\nexport const fraxtalSepolia: Chain = defineChain({\n id: 2523,\n name: \"Fraxtal Sepolia\",\n nativeCurrency: { name: \"Frax Ether\", symbol: \"frxETH\", decimals: 18 },\n rpcUrls: {\n default: {\n http: [\"https://rpc.testnet-sepolia.frax.com\"],\n },\n },\n});\n\nexport const zora: Chain = {\n ...vzora,\n rpcUrls: {\n ...vzora.rpcUrls,\n },\n};\n\nexport const zoraSepolia: Chain = {\n ...vzoras,\n rpcUrls: {\n ...vzoras.rpcUrls,\n },\n};\n"]}
@@ -1,21 +0,0 @@
1
- import { type Chain } from "viem";
2
- export declare const arbitrum: Chain;
3
- export declare const arbitrumGoerli: Chain;
4
- export declare const arbitrumSepolia: Chain;
5
- export declare const goerli: Chain;
6
- export declare const mainnet: Chain;
7
- export declare const optimism: Chain;
8
- export declare const optimismGoerli: Chain;
9
- export declare const optimismSepolia: Chain;
10
- export declare const sepolia: Chain;
11
- export declare const base: Chain;
12
- export declare const baseGoerli: Chain;
13
- export declare const baseSepolia: Chain;
14
- export declare const polygonMumbai: Chain;
15
- export declare const polygonAmoy: Chain;
16
- export declare const polygon: Chain;
17
- export declare const fraxtal: Chain;
18
- export declare const fraxtalSepolia: Chain;
19
- export declare const zora: Chain;
20
- export declare const zoraSepolia: Chain;
21
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/chains/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,KAAK,EAAE,MAAM,MAAM,CAAC;AAsB/C,eAAO,MAAM,QAAQ,EAAE,KAQtB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAQ5B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAQ7B,CAAC;AACF,eAAO,MAAM,MAAM,EAAE,KAQpB,CAAC;AACF,eAAO,MAAM,OAAO,EAAE,KAQrB,CAAC;AACF,eAAO,MAAM,QAAQ,EAAE,KAQtB,CAAC;AACF,eAAO,MAAM,cAAc,EAAE,KAQ5B,CAAC;AACF,eAAO,MAAM,eAAe,EAAE,KAQ7B,CAAC;AACF,eAAO,MAAM,OAAO,EAAE,KAQrB,CAAC;AACF,eAAO,MAAM,IAAI,EAAE,KAQlB,CAAC;AACF,eAAO,MAAM,UAAU,EAAE,KAQxB,CAAC;AACF,eAAO,MAAM,WAAW,EAAE,KAQzB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAQ3B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAQzB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAQrB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAS3B,CAAC;AAEH,eAAO,MAAM,IAAI,EAAE,KAKlB,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAKzB,CAAC"}