@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.
- package/dist/cjs/account/simple.js.map +1 -1
- package/dist/cjs/account/smartContractAccount.js +2 -1
- package/dist/cjs/account/smartContractAccount.js.map +1 -1
- package/dist/cjs/actions/smartAccount/buildUserOperation.js.map +1 -1
- package/dist/cjs/actions/smartAccount/dropAndReplaceUserOperation.js.map +1 -1
- package/dist/cjs/actions/smartAccount/sendTransaction.js.map +1 -1
- package/dist/cjs/actions/smartAccount/sendTransactions.js.map +1 -1
- package/dist/cjs/actions/smartAccount/waitForUserOperationTransacation.js.map +1 -1
- package/dist/cjs/client/bundlerClient.js.map +1 -1
- package/dist/cjs/client/decorators/bundlerClient.js.map +1 -1
- package/dist/cjs/client/decorators/smartAccountClient.js.map +1 -1
- package/dist/cjs/client/smartAccountClient.js.map +1 -1
- package/dist/cjs/ens/utils.d.ts +1 -1
- package/dist/cjs/ens/utils.js +3 -3
- package/dist/cjs/ens/utils.js.map +1 -1
- package/dist/cjs/entrypoint/index.js.map +1 -1
- package/dist/cjs/errors/account.js.map +1 -1
- package/dist/cjs/errors/base.js.map +1 -1
- package/dist/cjs/errors/client.js.map +1 -1
- package/dist/cjs/errors/entrypoint.js.map +1 -1
- package/dist/cjs/errors/signer.js.map +1 -1
- package/dist/cjs/errors/transaction.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -3
- package/dist/cjs/index.js +35 -60
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/logger.js.map +1 -1
- package/dist/cjs/middleware/defaults/feeEstimator.d.ts +1 -1
- package/dist/cjs/middleware/defaults/feeEstimator.js +17 -15
- package/dist/cjs/middleware/defaults/feeEstimator.js.map +1 -1
- package/dist/cjs/middleware/defaults/paymasterAndData.js.map +1 -1
- package/dist/cjs/middleware/defaults/userOpSigner.js.map +1 -1
- package/dist/cjs/signer/local-account.d.ts +2 -2
- package/dist/cjs/signer/local-account.js.map +1 -1
- package/dist/cjs/signer/schema.js.map +1 -1
- package/dist/cjs/signer/utils.d.ts +1 -9
- package/dist/cjs/signer/utils.js +1 -16
- package/dist/cjs/signer/utils.js.map +1 -1
- package/dist/cjs/signer/wallet-client.d.ts +2 -2
- package/dist/cjs/signer/wallet-client.js.map +1 -1
- package/dist/cjs/utils/defaults.d.ts +1 -1
- package/dist/cjs/utils/defaults.js +25 -25
- package/dist/cjs/utils/defaults.js.map +1 -1
- package/dist/cjs/utils/index.d.ts +0 -4
- package/dist/cjs/utils/index.js +1 -33
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/esm/account/simple.js.map +1 -1
- package/dist/esm/account/smartContractAccount.js +2 -1
- package/dist/esm/account/smartContractAccount.js.map +1 -1
- package/dist/esm/actions/smartAccount/buildUserOperation.js.map +1 -1
- package/dist/esm/actions/smartAccount/dropAndReplaceUserOperation.js.map +1 -1
- package/dist/esm/actions/smartAccount/sendTransaction.js.map +1 -1
- package/dist/esm/actions/smartAccount/sendTransactions.js.map +1 -1
- package/dist/esm/actions/smartAccount/waitForUserOperationTransacation.js.map +1 -1
- package/dist/esm/client/bundlerClient.js.map +1 -1
- package/dist/esm/client/decorators/bundlerClient.js.map +1 -1
- package/dist/esm/client/decorators/smartAccountClient.js.map +1 -1
- package/dist/esm/client/smartAccountClient.js.map +1 -1
- package/dist/esm/ens/utils.d.ts +1 -1
- package/dist/esm/ens/utils.js +1 -1
- package/dist/esm/ens/utils.js.map +1 -1
- package/dist/esm/entrypoint/index.js.map +1 -1
- package/dist/esm/errors/account.js.map +1 -1
- package/dist/esm/errors/base.js.map +1 -1
- package/dist/esm/errors/client.js.map +1 -1
- package/dist/esm/errors/entrypoint.js.map +1 -1
- package/dist/esm/errors/signer.js.map +1 -1
- package/dist/esm/errors/transaction.js.map +1 -1
- package/dist/esm/index.d.ts +2 -3
- package/dist/esm/index.js +2 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/logger.js.map +1 -1
- package/dist/esm/middleware/defaults/feeEstimator.d.ts +1 -1
- package/dist/esm/middleware/defaults/feeEstimator.js +17 -15
- package/dist/esm/middleware/defaults/feeEstimator.js.map +1 -1
- package/dist/esm/middleware/defaults/paymasterAndData.js.map +1 -1
- package/dist/esm/middleware/defaults/userOpSigner.js.map +1 -1
- package/dist/esm/signer/local-account.d.ts +2 -2
- package/dist/esm/signer/local-account.js.map +1 -1
- package/dist/esm/signer/schema.js.map +1 -1
- package/dist/esm/signer/utils.d.ts +1 -9
- package/dist/esm/signer/utils.js +0 -14
- package/dist/esm/signer/utils.js.map +1 -1
- package/dist/esm/signer/wallet-client.d.ts +2 -2
- package/dist/esm/signer/wallet-client.js.map +1 -1
- package/dist/esm/utils/defaults.d.ts +1 -1
- package/dist/esm/utils/defaults.js +2 -2
- package/dist/esm/utils/defaults.js.map +1 -1
- package/dist/esm/utils/index.d.ts +0 -4
- package/dist/esm/utils/index.js +0 -18
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/types/account/smartContractAccount.d.ts +49 -0
- package/dist/types/account/smartContractAccount.d.ts.map +1 -1
- package/dist/types/actions/smartAccount/buildUserOperation.d.ts +23 -0
- package/dist/types/actions/smartAccount/buildUserOperation.d.ts.map +1 -1
- package/dist/types/actions/smartAccount/dropAndReplaceUserOperation.d.ts +22 -0
- package/dist/types/actions/smartAccount/dropAndReplaceUserOperation.d.ts.map +1 -1
- package/dist/types/actions/smartAccount/sendTransaction.d.ts +24 -0
- package/dist/types/actions/smartAccount/sendTransaction.d.ts.map +1 -1
- package/dist/types/actions/smartAccount/sendTransactions.d.ts +23 -0
- package/dist/types/actions/smartAccount/sendTransactions.d.ts.map +1 -1
- package/dist/types/actions/smartAccount/waitForUserOperationTransacation.d.ts +24 -0
- package/dist/types/actions/smartAccount/waitForUserOperationTransacation.d.ts.map +1 -1
- package/dist/types/client/bundlerClient.d.ts +15 -0
- package/dist/types/client/bundlerClient.d.ts.map +1 -1
- package/dist/types/client/decorators/bundlerClient.d.ts +9 -0
- package/dist/types/client/decorators/bundlerClient.d.ts.map +1 -1
- package/dist/types/client/decorators/smartAccountClient.d.ts +8 -0
- package/dist/types/client/decorators/smartAccountClient.d.ts.map +1 -1
- package/dist/types/client/smartAccountClient.d.ts.map +1 -1
- package/dist/types/ens/utils.d.ts +46 -1
- package/dist/types/ens/utils.d.ts.map +1 -1
- package/dist/types/entrypoint/index.d.ts +14 -0
- package/dist/types/entrypoint/index.d.ts.map +1 -1
- package/dist/types/errors/account.d.ts +34 -0
- package/dist/types/errors/account.d.ts.map +1 -1
- package/dist/types/errors/base.d.ts +5 -0
- package/dist/types/errors/base.d.ts.map +1 -1
- package/dist/types/errors/client.d.ts +9 -0
- package/dist/types/errors/client.d.ts.map +1 -1
- package/dist/types/errors/entrypoint.d.ts +6 -0
- package/dist/types/errors/entrypoint.d.ts.map +1 -1
- package/dist/types/errors/signer.d.ts +3 -0
- package/dist/types/errors/signer.d.ts.map +1 -1
- package/dist/types/errors/transaction.d.ts +6 -0
- package/dist/types/errors/transaction.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/logger.d.ts +3 -0
- package/dist/types/logger.d.ts.map +1 -1
- package/dist/types/middleware/defaults/feeEstimator.d.ts +21 -1
- package/dist/types/middleware/defaults/feeEstimator.d.ts.map +1 -1
- package/dist/types/middleware/defaults/paymasterAndData.d.ts +8 -0
- package/dist/types/middleware/defaults/paymasterAndData.d.ts.map +1 -1
- package/dist/types/middleware/defaults/userOpSigner.d.ts +10 -0
- package/dist/types/middleware/defaults/userOpSigner.d.ts.map +1 -1
- package/dist/types/signer/local-account.d.ts +5 -2
- package/dist/types/signer/local-account.d.ts.map +1 -1
- package/dist/types/signer/schema.d.ts +14 -0
- package/dist/types/signer/schema.d.ts.map +1 -1
- package/dist/types/signer/utils.d.ts +21 -9
- package/dist/types/signer/utils.d.ts.map +1 -1
- package/dist/types/signer/wallet-client.d.ts +5 -2
- package/dist/types/signer/wallet-client.d.ts.map +1 -1
- package/dist/types/utils/defaults.d.ts +1 -1
- package/dist/types/utils/defaults.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +54 -11
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +2 -2
- package/src/account/simple.ts +6 -0
- package/src/account/smartContractAccount.ts +120 -15
- package/src/actions/smartAccount/buildUserOperation.ts +23 -0
- package/src/actions/smartAccount/dropAndReplaceUserOperation.ts +22 -0
- package/src/actions/smartAccount/sendTransaction.ts +24 -0
- package/src/actions/smartAccount/sendTransactions.ts +23 -0
- package/src/actions/smartAccount/waitForUserOperationTransacation.ts +24 -0
- package/src/client/bundlerClient.ts +32 -0
- package/src/client/decorators/bundlerClient.ts +9 -0
- package/src/client/decorators/smartAccountClient.ts +8 -0
- package/src/client/smartAccountClient.ts +41 -0
- package/src/ens/utils.ts +46 -2
- package/src/entrypoint/index.ts +30 -62
- package/src/errors/account.ts +34 -0
- package/src/errors/base.ts +5 -2
- package/src/errors/client.ts +9 -0
- package/src/errors/entrypoint.ts +6 -0
- package/src/errors/signer.ts +3 -0
- package/src/errors/transaction.ts +6 -0
- package/src/index.ts +1 -28
- package/src/logger.ts +3 -0
- package/src/middleware/defaults/feeEstimator.ts +24 -4
- package/src/middleware/defaults/paymasterAndData.ts +8 -0
- package/src/middleware/defaults/userOpSigner.ts +10 -0
- package/src/signer/local-account.ts +3 -0
- package/src/signer/schema.ts +14 -0
- package/src/signer/utils.ts +20 -32
- package/src/signer/wallet-client.ts +3 -0
- package/src/utils/defaults.ts +3 -4
- package/src/utils/index.ts +54 -36
- package/src/version.ts +1 -1
- package/dist/cjs/chains/index.d.ts +0 -20
- package/dist/cjs/chains/index.js +0 -169
- package/dist/cjs/chains/index.js.map +0 -1
- package/dist/esm/chains/index.d.ts +0 -20
- package/dist/esm/chains/index.js +0 -166
- package/dist/esm/chains/index.js.map +0 -1
- package/dist/types/chains/index.d.ts +0 -21
- package/dist/types/chains/index.d.ts.map +0 -1
- package/src/chains/index.ts +0 -194
package/src/signer/utils.ts
CHANGED
|
@@ -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
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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;
|
package/src/utils/defaults.ts
CHANGED
|
@@ -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 "
|
|
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
|
|
53
|
+
case 2523:
|
|
55
54
|
case zora.id:
|
|
56
55
|
case zoraSepolia.id:
|
|
57
56
|
return "0x15Ba39375ee2Ab563E8873C8390be6f2E2F50232";
|
package/src/utils/index.ts
CHANGED
|
@@ -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
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
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,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;
|
package/dist/cjs/chains/index.js
DELETED
|
@@ -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;
|
package/dist/esm/chains/index.js
DELETED
|
@@ -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"}
|