@funkit/core 2.0.1 → 2.1.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.
- package/dist/index.js +11 -27
- package/dist/index.js.map +1 -1
- package/dist/src/actions/AccessControl.js +39 -48
- package/dist/src/actions/AccessControl.js.map +1 -1
- package/dist/src/actions/BatchActions.js +3 -7
- package/dist/src/actions/BatchActions.js.map +1 -1
- package/dist/src/actions/Bridge.js +16 -20
- package/dist/src/actions/Bridge.js.map +1 -1
- package/dist/src/actions/FirstClassActions.js +74 -77
- package/dist/src/actions/FirstClassActions.js.map +1 -1
- package/dist/src/actions/Group.js +14 -20
- package/dist/src/actions/Group.js.map +1 -1
- package/dist/src/actions/LimitOrder.js +18 -22
- package/dist/src/actions/LimitOrder.js.map +1 -1
- package/dist/src/actions/Stake.js +40 -43
- package/dist/src/actions/Stake.js.map +1 -1
- package/dist/src/actions/Swap.js +40 -46
- package/dist/src/actions/Swap.js.map +1 -1
- package/dist/src/actions/Token.js +41 -53
- package/dist/src/actions/Token.js.map +1 -1
- package/dist/src/actions/index.js +7 -23
- package/dist/src/actions/index.js.map +1 -1
- package/dist/src/actions/types.js +4 -7
- package/dist/src/actions/types.js.map +1 -1
- package/dist/src/apis/AccessControlApis.js +10 -16
- package/dist/src/apis/AccessControlApis.js.map +1 -1
- package/dist/src/apis/BridgeApis.js +14 -20
- package/dist/src/apis/BridgeApis.js.map +1 -1
- package/dist/src/apis/ContractApis.js +4 -7
- package/dist/src/apis/ContractApis.js.map +1 -1
- package/dist/src/apis/GroupApis.js +6 -10
- package/dist/src/apis/GroupApis.js.map +1 -1
- package/dist/src/apis/InfoApis.js +16 -23
- package/dist/src/apis/InfoApis.js.map +1 -1
- package/dist/src/apis/ListenerApis.js +9 -13
- package/dist/src/apis/ListenerApis.js.map +1 -1
- package/dist/src/apis/NFTApis.js +6 -10
- package/dist/src/apis/NFTApis.js.map +1 -1
- package/dist/src/apis/OperationApis.js +26 -40
- package/dist/src/apis/OperationApis.js.map +1 -1
- package/dist/src/apis/PaymasterApis.js +4 -7
- package/dist/src/apis/PaymasterApis.js.map +1 -1
- package/dist/src/apis/SwapApis.js +8 -13
- package/dist/src/apis/SwapApis.js.map +1 -1
- package/dist/src/apis/UserApis.js +20 -29
- package/dist/src/apis/UserApis.js.map +1 -1
- package/dist/src/apis/index.js +8 -24
- package/dist/src/apis/index.js.map +1 -1
- package/dist/src/apis/types.js +1 -2
- package/dist/src/auth/Auth.js +52 -74
- package/dist/src/auth/Auth.js.map +1 -1
- package/dist/src/auth/SessionKeyAuth.js +30 -33
- package/dist/src/auth/SessionKeyAuth.js.map +1 -1
- package/dist/src/auth/index.js +2 -18
- package/dist/src/auth/index.js.map +1 -1
- package/dist/src/auth/types.js +1 -2
- package/dist/src/common/constants.js +184 -191
- package/dist/src/common/constants.js.map +1 -1
- package/dist/src/common/index.js +2 -18
- package/dist/src/common/index.js.map +1 -1
- package/dist/src/common/types.js +1 -2
- package/dist/src/config/Config.js +8 -13
- package/dist/src/config/Config.js.map +1 -1
- package/dist/src/config/index.js +2 -18
- package/dist/src/config/index.js.map +1 -1
- package/dist/src/config/types.js +1 -2
- package/dist/src/data/Chain.js +35 -33
- package/dist/src/data/Chain.js.map +1 -1
- package/dist/src/data/NFT.js +28 -31
- package/dist/src/data/NFT.js.map +1 -1
- package/dist/src/data/Operation.js +28 -11
- package/dist/src/data/Operation.js.map +1 -1
- package/dist/src/data/SolidityData.js +23 -30
- package/dist/src/data/SolidityData.js.map +1 -1
- package/dist/src/data/Token.js +21 -23
- package/dist/src/data/Token.js.map +1 -1
- package/dist/src/data/index.js +6 -22
- package/dist/src/data/index.js.map +1 -1
- package/dist/src/data/types.js +6 -9
- package/dist/src/data/types.js.map +1 -1
- package/dist/src/errors/BaseError.js +6 -5
- package/dist/src/errors/BaseError.js.map +1 -1
- package/dist/src/errors/ClientError.js +21 -34
- package/dist/src/errors/ClientError.js.map +1 -1
- package/dist/src/errors/ServerError.js +6 -11
- package/dist/src/errors/ServerError.js.map +1 -1
- package/dist/src/errors/index.js +4 -20
- package/dist/src/errors/index.js.map +1 -1
- package/dist/src/errors/types.js +6 -9
- package/dist/src/errors/types.js.map +1 -1
- package/dist/src/sponsors/CheckoutSponsor.js +10 -14
- package/dist/src/sponsors/CheckoutSponsor.js.map +1 -1
- package/dist/src/sponsors/GaslessSponsor.js +23 -27
- package/dist/src/sponsors/GaslessSponsor.js.map +1 -1
- package/dist/src/sponsors/Sponsor.js +10 -8
- package/dist/src/sponsors/Sponsor.js.map +1 -1
- package/dist/src/sponsors/TokenSponsor.js +79 -82
- package/dist/src/sponsors/TokenSponsor.js.map +1 -1
- package/dist/src/sponsors/index.js +4 -20
- package/dist/src/sponsors/index.js.map +1 -1
- package/dist/src/sponsors/types.js +2 -5
- package/dist/src/sponsors/types.js.map +1 -1
- package/dist/src/utils/ApiUtils.js +30 -38
- package/dist/src/utils/ApiUtils.js.map +1 -1
- package/dist/src/utils/AuthUtils.js +9 -14
- package/dist/src/utils/AuthUtils.js.map +1 -1
- package/dist/src/utils/ChainUtils.js +38 -49
- package/dist/src/utils/ChainUtils.js.map +1 -1
- package/dist/src/utils/CheckoutUtils.js +13 -18
- package/dist/src/utils/CheckoutUtils.js.map +1 -1
- package/dist/src/utils/GroupUtils.js +6 -9
- package/dist/src/utils/GroupUtils.js.map +1 -1
- package/dist/src/utils/MerkleUtils.js +34 -47
- package/dist/src/utils/MerkleUtils.js.map +1 -1
- package/dist/src/utils/PaymasterUtils.js +5 -9
- package/dist/src/utils/PaymasterUtils.js.map +1 -1
- package/dist/src/utils/SwapUtils.js +44 -43
- package/dist/src/utils/SwapUtils.js.map +1 -1
- package/dist/src/utils/TypeUtils.js +5 -9
- package/dist/src/utils/TypeUtils.js.map +1 -1
- package/dist/src/utils/UserOpUtils.js +20 -29
- package/dist/src/utils/UserOpUtils.js.map +1 -1
- package/dist/src/utils/ViemUtils.js +6 -12
- package/dist/src/utils/ViemUtils.js.map +1 -1
- package/dist/src/utils/WalletUtils.js +28 -42
- package/dist/src/utils/WalletUtils.js.map +1 -1
- package/dist/src/utils/index.js +8 -24
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/viem/ContractInterface.js +14 -18
- package/dist/src/viem/ContractInterface.js.map +1 -1
- package/dist/src/viem/Converter.d.ts +16 -16
- package/dist/src/viem/Converter.js +15 -20
- package/dist/src/viem/Converter.js.map +1 -1
- package/dist/src/viem/index.js +2 -18
- package/dist/src/viem/index.js.map +1 -1
- package/dist/src/wallet/FunWallet.d.ts +1 -1
- package/dist/src/wallet/FunWallet.js +141 -142
- package/dist/src/wallet/FunWallet.js.map +1 -1
- package/dist/src/wallet/index.js +2 -18
- package/dist/src/wallet/index.js.map +1 -1
- package/dist/src/wallet/types.js +1 -2
- package/package.json +3 -2
package/dist/src/auth/index.js
CHANGED
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./Auth"), exports);
|
|
18
|
-
__exportStar(require("./SessionKeyAuth"), exports);
|
|
1
|
+
export * from './Auth';
|
|
2
|
+
export * from './SessionKeyAuth';
|
|
19
3
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/auth/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/auth/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,kBAAkB,CAAA"}
|
package/dist/src/auth/types.js
CHANGED
|
@@ -1,55 +1,48 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
const UniswapV2Router02_json_1 = __importDefault(require("../abis/UniswapV2Router02.json"));
|
|
29
|
-
const UniswapV3LimitOrder_json_1 = __importDefault(require("../abis/UniswapV3LimitOrder.json"));
|
|
30
|
-
const univ3factory_json_1 = __importDefault(require("../abis/univ3factory.json"));
|
|
31
|
-
const univ3quoter_json_1 = __importDefault(require("../abis/univ3quoter.json"));
|
|
32
|
-
const univ3router_json_1 = __importDefault(require("../abis/univ3router.json"));
|
|
33
|
-
const UserAuthentication_json_1 = __importDefault(require("../abis/UserAuthentication.json"));
|
|
34
|
-
const ContractInterface_1 = require("../viem/ContractInterface");
|
|
1
|
+
import IUniswapV3PoolABI from '@uniswap/v3-core/artifacts/contracts/interfaces/IUniswapV3Pool.sol/IUniswapV3Pool.json' assert { type: 'json' };
|
|
2
|
+
import { padHex } from 'viem';
|
|
3
|
+
import { arbitrum, arbitrumSepolia, base, goerli, mainnet, mantle, optimism, polygon, zkSync, } from 'viem/chains';
|
|
4
|
+
import APPROVE_AND_EXEC_CONTRACT from '../abis/ApproveAndExec.json' assert { type: 'json' };
|
|
5
|
+
import APPROVE_AND_SWAP_CONTRACT from '../abis/ApproveAndSwap.json' assert { type: 'json' };
|
|
6
|
+
import CHECKOUT_PAYMASTER_CONTRACT from '../abis/CheckoutPaymaster.json' assert { type: 'json' };
|
|
7
|
+
import ENTRYPOINT_CONTRACT from '../abis/EntryPoint.json' assert { type: 'json' };
|
|
8
|
+
import ERC20_CONTRACT from '../abis/ERC20.json' assert { type: 'json' };
|
|
9
|
+
import ERC_721_CONTRACT from '../abis/ERC721.json' assert { type: 'json' };
|
|
10
|
+
import ESTIMATION_PAYMASTER_CONTRACT from '../abis/EstimationPaymaster.json' assert { type: 'json' };
|
|
11
|
+
import FEE_PERCENT_ORACLE_CONTRACT from '../abis/FeePercentOracle.json' assert { type: 'json' };
|
|
12
|
+
import FUN_WALLET_CONTRACT from '../abis/FunWallet.json' assert { type: 'json' };
|
|
13
|
+
import FACTORY_CONTRACT from '../abis/FunWalletFactory.json' assert { type: 'json' };
|
|
14
|
+
import GASLESS_PAYMASTER_CONTRACT from '../abis/GaslessPaymaster.json' assert { type: 'json' };
|
|
15
|
+
import WITHDRAW_QUEUE_CONTRACT from '../abis/LidoWithdrawQueue.json' assert { type: 'json' };
|
|
16
|
+
import ROLE_BASED_ACCESS_CONTROL_CONTRACT from '../abis/RoleBasedAccessControl.json' assert { type: 'json' };
|
|
17
|
+
import TEST_NFT_CONTRACT from '../abis/TestNFT.json' assert { type: 'json' };
|
|
18
|
+
import TOKEN_PAYMASTER_CONTRACT from '../abis/TokenPaymaster.json' assert { type: 'json' };
|
|
19
|
+
import TOKEN_PRICE_ORACLE_CONTRACT from '../abis/TokenPriceOracle.json' assert { type: 'json' };
|
|
20
|
+
import UNISWAPV2FACTORY_CONTRACT from '../abis/UniswapV2Factory.json' assert { type: 'json' };
|
|
21
|
+
import UNISWAPV2ROUTER02_CONTRACT from '../abis/UniswapV2Router02.json' assert { type: 'json' };
|
|
22
|
+
import UNISWAP_V3_LIMIT_ORDER_CONTRACT from '../abis/UniswapV3LimitOrder.json' assert { type: 'json' };
|
|
23
|
+
import UNIV3_FACTORY from '../abis/univ3factory.json' assert { type: 'json' };
|
|
24
|
+
import UNIV3_QUOTER from '../abis/univ3quoter.json' assert { type: 'json' };
|
|
25
|
+
import UNIV3_ROUTER from '../abis/univ3router.json' assert { type: 'json' };
|
|
26
|
+
import USER_AUTHENTICATION_CONTRACT from '../abis/UserAuthentication.json' assert { type: 'json' };
|
|
27
|
+
import { ContractInterface } from '../viem/ContractInterface';
|
|
35
28
|
// local environment
|
|
36
|
-
|
|
29
|
+
export const LOCAL_API_URL = 'http://127.0.0.1:3000';
|
|
37
30
|
// prod
|
|
38
31
|
let API_URL = 'https://api.fun.xyz/v1';
|
|
39
|
-
exports.API_URL = API_URL;
|
|
40
32
|
switch (process.env.NODE_ENV) {
|
|
41
33
|
case 'staging':
|
|
42
|
-
|
|
34
|
+
API_URL = 'https://api.fun.xyz/staging/v1';
|
|
43
35
|
break;
|
|
44
36
|
case 'testing':
|
|
45
|
-
|
|
37
|
+
API_URL = 'https://api.fun.xyz/testing/v1';
|
|
46
38
|
break;
|
|
47
39
|
case 'local':
|
|
48
|
-
|
|
40
|
+
API_URL = LOCAL_API_URL;
|
|
49
41
|
break;
|
|
50
42
|
}
|
|
51
|
-
|
|
52
|
-
|
|
43
|
+
export { API_URL };
|
|
44
|
+
export const DASHBOARD_API_URL = 'https://api.fun.xyz/dashboard';
|
|
45
|
+
export const BASE_WRAP_TOKEN_ADDR = {
|
|
53
46
|
'1': {
|
|
54
47
|
weth: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
|
|
55
48
|
},
|
|
@@ -82,9 +75,9 @@ exports.BASE_WRAP_TOKEN_ADDR = {
|
|
|
82
75
|
},
|
|
83
76
|
};
|
|
84
77
|
// When update this, also remember to update the address in api service
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
78
|
+
export const FUN_GASLESS_SPONSOR_ADDRESS = '0xCB5D0b4569A39C217c243a436AC3feEe5dFeb9Ad';
|
|
79
|
+
export const FUN_TOKEN_SPONSOR_ADDRESS = '0x40C0cCa76088D45106c2D74D0B4B6405865f22De';
|
|
80
|
+
export const TOKEN_SPONSOR_SUPPORT_CHAINS = [
|
|
88
81
|
'1',
|
|
89
82
|
'5',
|
|
90
83
|
'10',
|
|
@@ -94,7 +87,7 @@ exports.TOKEN_SPONSOR_SUPPORT_CHAINS = [
|
|
|
94
87
|
'421614',
|
|
95
88
|
// No Mantle Support (5000)
|
|
96
89
|
];
|
|
97
|
-
|
|
90
|
+
export const GASLESS_SPONSOR_SUPPORT_CHAINS = ['5'];
|
|
98
91
|
const CHECKOUT_PAYMASTER_ADDRESS_BY_CHAIN = {
|
|
99
92
|
'1': '0xAEb04Eb8574CB29E2D7F94fC24fEAfb5469fDaBF',
|
|
100
93
|
'5': '0x30809b742D0D51B8d5AEb630406cF299cb548E57',
|
|
@@ -104,94 +97,94 @@ const CHECKOUT_PAYMASTER_ADDRESS_BY_CHAIN = {
|
|
|
104
97
|
'42161': '0x784DEeD2F7182E0e92438879bF1Cc3CD6542F8f7',
|
|
105
98
|
'421614': '0x0B471a8fF3D038DED6d515741C447976d25E2976',
|
|
106
99
|
};
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
100
|
+
export const CHECKOUT_SPONSOR_SUPPORT_CHAINS = Object.keys(CHECKOUT_PAYMASTER_ADDRESS_BY_CHAIN);
|
|
101
|
+
export const AddressZero = padHex('0x', { size: 20 });
|
|
102
|
+
export const HashZero = padHex('0x', { size: 32 });
|
|
110
103
|
// abis
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
104
|
+
export const APPROVE_AND_EXEC_ABI = APPROVE_AND_EXEC_CONTRACT['abi'];
|
|
105
|
+
export const APPROVE_AND_SWAP_ABI = APPROVE_AND_SWAP_CONTRACT['abi'];
|
|
106
|
+
export const ENTRYPOINT_ABI = ENTRYPOINT_CONTRACT['abi'];
|
|
107
|
+
export const ERC20_ABI = ERC20_CONTRACT['abi'];
|
|
108
|
+
export const WALLET_ABI = FUN_WALLET_CONTRACT['abi'];
|
|
109
|
+
export const FACTORY_ABI = FACTORY_CONTRACT['abi'];
|
|
110
|
+
export const GASLESS_PAYMASTER_ABI = GASLESS_PAYMASTER_CONTRACT['abi'];
|
|
111
|
+
export const TOKEN_PAYMASTER_ABI = TOKEN_PAYMASTER_CONTRACT['abi'];
|
|
112
|
+
export const CHECKOUT_PAYMASTER_ABI = CHECKOUT_PAYMASTER_CONTRACT['abi'];
|
|
113
|
+
export const WITHDRAW_QUEUE_ABI = WITHDRAW_QUEUE_CONTRACT['abi'];
|
|
114
|
+
export const ERC_721_ABI = ERC_721_CONTRACT['abi'];
|
|
115
|
+
export const UNISWAP_V3_LIMIT_ORDER_ABI = UNISWAP_V3_LIMIT_ORDER_CONTRACT['abi'];
|
|
116
|
+
export const UNISWAPV2FACTORY_ABI = UNISWAPV2FACTORY_CONTRACT['abi'];
|
|
117
|
+
export const UNISWAPV2ROUTER02_ABI = UNISWAPV2ROUTER02_CONTRACT['abi'];
|
|
118
|
+
export const ROLE_BASED_ACCESS_CONTROL_ABI = ROLE_BASED_ACCESS_CONTROL_CONTRACT['abi'];
|
|
119
|
+
export const USER_AUTHENTICATION_ABI = USER_AUTHENTICATION_CONTRACT['abi'];
|
|
120
|
+
export const ESTIMATION_PAYMASTER_ABI = ESTIMATION_PAYMASTER_CONTRACT['abi'];
|
|
128
121
|
// contract interface
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
approveAndExecAddress:
|
|
146
|
-
tokenSwapAddress:
|
|
147
|
-
entryPointAddress:
|
|
148
|
-
factoryAddress:
|
|
149
|
-
gaslessPaymasterAddress:
|
|
122
|
+
export const ENTRYPOINT_CONTRACT_INTERFACE = new ContractInterface(ENTRYPOINT_ABI);
|
|
123
|
+
export const ERC721_CONTRACT_INTERFACE = new ContractInterface(ERC_721_ABI);
|
|
124
|
+
export const ERC20_CONTRACT_INTERFACE = new ContractInterface(ERC20_ABI);
|
|
125
|
+
export const FACTORY_CONTRACT_INTERFACE = new ContractInterface(FACTORY_ABI);
|
|
126
|
+
export const GASLESS_PAYMASTER_CONTRACT_INTERFACE = new ContractInterface(GASLESS_PAYMASTER_ABI);
|
|
127
|
+
export const TOKEN_PAYMASTER_CONTRACT_INTERFACE = new ContractInterface(TOKEN_PAYMASTER_ABI);
|
|
128
|
+
export const CHECKOUT_PAYMASTER_CONTRACT_INTERFACE = new ContractInterface(CHECKOUT_PAYMASTER_ABI);
|
|
129
|
+
export const WALLET_CONTRACT_INTERFACE = new ContractInterface(WALLET_ABI);
|
|
130
|
+
export const POOL_CONTRACT_INTERFACE = new ContractInterface(IUniswapV3PoolABI['abi']);
|
|
131
|
+
export const APPROVE_AND_EXEC_CONTRACT_INTERFACE = new ContractInterface(APPROVE_AND_EXEC_ABI);
|
|
132
|
+
export const UNISWAPV2FACTORY_INTERFACE = new ContractInterface(UNISWAPV2FACTORY_ABI);
|
|
133
|
+
export const UNISWAPV2ROUTER02_INTERFACE = new ContractInterface(UNISWAPV2ROUTER02_ABI);
|
|
134
|
+
export const RBAC_CONTRACT_INTERFACE = new ContractInterface(ROLE_BASED_ACCESS_CONTROL_ABI);
|
|
135
|
+
export const USER_AUTHENTICATION_CONTRACT_INTERFACE = new ContractInterface(USER_AUTHENTICATION_ABI);
|
|
136
|
+
export const UNISWAP_V3_LIMIT_ORDER_CONTRACT_INTERFACE = new ContractInterface(UNISWAP_V3_LIMIT_ORDER_ABI);
|
|
137
|
+
export const CONTRACT_ADDRESSES = {
|
|
138
|
+
approveAndExecAddress: APPROVE_AND_EXEC_CONTRACT['addresses'],
|
|
139
|
+
tokenSwapAddress: APPROVE_AND_SWAP_CONTRACT['addresses'],
|
|
140
|
+
entryPointAddress: ENTRYPOINT_CONTRACT['addresses'],
|
|
141
|
+
factoryAddress: FACTORY_CONTRACT['addresses'],
|
|
142
|
+
gaslessPaymasterAddress: GASLESS_PAYMASTER_CONTRACT['addresses'],
|
|
150
143
|
checkoutPaymasterAddress: CHECKOUT_PAYMASTER_ADDRESS_BY_CHAIN,
|
|
151
|
-
estimationPaymasterAddress:
|
|
152
|
-
tokenPaymasterAddress:
|
|
153
|
-
oracle:
|
|
154
|
-
userAuthAddress:
|
|
155
|
-
rbacAddress:
|
|
156
|
-
feeOracle:
|
|
157
|
-
uniswapv3LimitOrder:
|
|
158
|
-
univ3factory:
|
|
159
|
-
univ3quoter:
|
|
160
|
-
univ3router:
|
|
161
|
-
UniswapV2Factory:
|
|
162
|
-
UniswapV2Router02:
|
|
163
|
-
TestNFT:
|
|
164
|
-
funGaslessSponsorAddress: { '5':
|
|
144
|
+
estimationPaymasterAddress: ESTIMATION_PAYMASTER_CONTRACT['addresses'],
|
|
145
|
+
tokenPaymasterAddress: TOKEN_PAYMASTER_CONTRACT['addresses'],
|
|
146
|
+
oracle: TOKEN_PRICE_ORACLE_CONTRACT['addresses'],
|
|
147
|
+
userAuthAddress: USER_AUTHENTICATION_CONTRACT['addresses'],
|
|
148
|
+
rbacAddress: ROLE_BASED_ACCESS_CONTROL_CONTRACT['addresses'],
|
|
149
|
+
feeOracle: FEE_PERCENT_ORACLE_CONTRACT['addresses'],
|
|
150
|
+
uniswapv3LimitOrder: UNISWAP_V3_LIMIT_ORDER_CONTRACT['addresses'],
|
|
151
|
+
univ3factory: UNIV3_FACTORY['addresses'],
|
|
152
|
+
univ3quoter: UNIV3_QUOTER['addresses'],
|
|
153
|
+
univ3router: UNIV3_ROUTER['addresses'],
|
|
154
|
+
UniswapV2Factory: UNISWAPV2FACTORY_CONTRACT['addresses'],
|
|
155
|
+
UniswapV2Router02: UNISWAPV2ROUTER02_CONTRACT['addresses'],
|
|
156
|
+
TestNFT: TEST_NFT_CONTRACT['addresses'],
|
|
157
|
+
funGaslessSponsorAddress: { '5': FUN_GASLESS_SPONSOR_ADDRESS },
|
|
165
158
|
funTokenSponsorAddress: {
|
|
166
|
-
'1':
|
|
167
|
-
'5':
|
|
168
|
-
'10':
|
|
169
|
-
'137':
|
|
170
|
-
'8453':
|
|
171
|
-
'42161':
|
|
172
|
-
'421614':
|
|
159
|
+
'1': FUN_TOKEN_SPONSOR_ADDRESS,
|
|
160
|
+
'5': FUN_TOKEN_SPONSOR_ADDRESS,
|
|
161
|
+
'10': FUN_TOKEN_SPONSOR_ADDRESS,
|
|
162
|
+
'137': FUN_TOKEN_SPONSOR_ADDRESS,
|
|
163
|
+
'8453': FUN_TOKEN_SPONSOR_ADDRESS,
|
|
164
|
+
'42161': FUN_TOKEN_SPONSOR_ADDRESS,
|
|
165
|
+
'421614': FUN_TOKEN_SPONSOR_ADDRESS,
|
|
173
166
|
// No Mantle Support (5000)
|
|
174
167
|
},
|
|
175
168
|
};
|
|
176
|
-
|
|
169
|
+
export const gasSpecificChain = {
|
|
177
170
|
'137': {
|
|
178
171
|
gasStationUrl: 'https://gasstation.polygon.technology/v2',
|
|
179
172
|
backupPriorityFee: '1000', // 1000 gwei
|
|
180
173
|
backupFee: '200', // 200 gwei
|
|
181
174
|
},
|
|
182
175
|
};
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
176
|
+
export const FUN_FAUCET_URL = 'https://api.fun.xyz/demo-faucet';
|
|
177
|
+
export const ETH_TRANSFER_SELECTOR = '0x00000000';
|
|
178
|
+
export const VALID_PRIVATE_KEY_LENGTH = 64;
|
|
179
|
+
export const BYTES32_LENGTH = 66;
|
|
187
180
|
// Use the paymasterAndData from pimlico for gas estimation
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
181
|
+
export const BASE_PIMLICO_PAYMASTER_AND_DATA_ESTIMATION = '0xa880eae8900eb59bf7dad9bdb741a086238adca900000000000000000000000000000000000000000000000000000101010101010000000000000000000000000000000000000000000000000000000000000000cd91f19f0f19ce862d7bec7b7d9b95457145afc6f639c28fd0360f488937bfa41e6eedcd3a46054fd95fcd0e3ef6b0bc0a615c4d975eef55c8a3517257904d5b1c';
|
|
182
|
+
export const OPTIMISM_PIMLICO_PAYMASTER_AND_DATA_ESTIMATION = '0x4Df91e173A6CdC74EfeF6fC72bb5Df1E8A8d758200000000000000000000000000000000000000000000000000000101010101010000000000000000000000000000000000000000000000000000000000000000cd91f19f0f19ce862d7bec7b7d9b95457145afc6f639c28fd0360f488937bfa41e6eedcd3a46054fd95fcd0e3ef6b0bc0a615c4d975eef55c8a3517257904d5b1c';
|
|
183
|
+
export const ETHEREUM_PIMLICO_PAYMASTER_AND_DATA_ESTIMATION = '0x67F21bE69A16c314a0b7Da537309b2f3ADdDE03100000000000000000000000000000000000000000000000000000101010101010000000000000000000000000000000000000000000000000000000000000000cd91f19f0f19ce862d7bec7b7d9b95457145afc6f639c28fd0360f488937bfa41e6eedcd3a46054fd95fcd0e3ef6b0bc0a615c4d975eef55c8a3517257904d5b1c';
|
|
184
|
+
export const DYDX_MAINNET_CHAIN_ID = 1511490300;
|
|
192
185
|
// Define dydx mainnet chain in pseudo-evm / wagmi compliant format
|
|
193
|
-
|
|
194
|
-
id:
|
|
186
|
+
export const dydxChain = {
|
|
187
|
+
id: DYDX_MAINNET_CHAIN_ID,
|
|
195
188
|
name: 'dYdX',
|
|
196
189
|
nativeCurrency: {
|
|
197
190
|
symbol: 'DYDX',
|
|
@@ -228,17 +221,17 @@ exports.dydxChain = {
|
|
|
228
221
|
* Info on the supported chains of FunkitConnect
|
|
229
222
|
* Added into coresdk because it is used in here too.
|
|
230
223
|
*/
|
|
231
|
-
|
|
224
|
+
export const FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
232
225
|
/** MAINNETS **/
|
|
233
|
-
[
|
|
234
|
-
name:
|
|
226
|
+
[mainnet.id.toString()]: {
|
|
227
|
+
name: mainnet.name,
|
|
235
228
|
nativeCurrency: {
|
|
236
|
-
symbol:
|
|
237
|
-
decimals:
|
|
238
|
-
name:
|
|
229
|
+
symbol: mainnet.nativeCurrency.symbol,
|
|
230
|
+
decimals: mainnet.nativeCurrency.decimals,
|
|
231
|
+
name: mainnet.nativeCurrency.name,
|
|
239
232
|
},
|
|
240
|
-
chainInfo:
|
|
241
|
-
explorerInfo:
|
|
233
|
+
chainInfo: mainnet,
|
|
234
|
+
explorerInfo: mainnet.blockExplorers.default,
|
|
242
235
|
isCheckoutSupported: true,
|
|
243
236
|
checkoutAssetWhitelist: ['*'],
|
|
244
237
|
isFunWalletSupported: true,
|
|
@@ -247,15 +240,15 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
247
240
|
pickPriority: 4,
|
|
248
241
|
isStandardEvmAddress: true,
|
|
249
242
|
},
|
|
250
|
-
[
|
|
251
|
-
name:
|
|
243
|
+
[base.id.toString()]: {
|
|
244
|
+
name: base.name,
|
|
252
245
|
nativeCurrency: {
|
|
253
|
-
symbol:
|
|
254
|
-
decimals:
|
|
255
|
-
name:
|
|
246
|
+
symbol: base.nativeCurrency.symbol,
|
|
247
|
+
decimals: base.nativeCurrency.decimals,
|
|
248
|
+
name: base.nativeCurrency.name,
|
|
256
249
|
},
|
|
257
|
-
chainInfo:
|
|
258
|
-
explorerInfo:
|
|
250
|
+
chainInfo: base,
|
|
251
|
+
explorerInfo: base.blockExplorers.default,
|
|
259
252
|
isCheckoutSupported: true,
|
|
260
253
|
checkoutAssetWhitelist: ['*'],
|
|
261
254
|
isFunWalletSupported: true,
|
|
@@ -264,15 +257,15 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
264
257
|
pickPriority: 2,
|
|
265
258
|
isStandardEvmAddress: true,
|
|
266
259
|
},
|
|
267
|
-
[
|
|
268
|
-
name:
|
|
260
|
+
[polygon.id.toString()]: {
|
|
261
|
+
name: polygon.name,
|
|
269
262
|
nativeCurrency: {
|
|
270
|
-
symbol:
|
|
271
|
-
decimals:
|
|
272
|
-
name:
|
|
263
|
+
symbol: polygon.nativeCurrency.symbol,
|
|
264
|
+
decimals: polygon.nativeCurrency.decimals,
|
|
265
|
+
name: polygon.nativeCurrency.name,
|
|
273
266
|
},
|
|
274
|
-
chainInfo:
|
|
275
|
-
explorerInfo:
|
|
267
|
+
chainInfo: polygon,
|
|
268
|
+
explorerInfo: polygon.blockExplorers.default,
|
|
276
269
|
isCheckoutSupported: true,
|
|
277
270
|
checkoutAssetWhitelist: ['*'],
|
|
278
271
|
isFunWalletSupported: true,
|
|
@@ -281,15 +274,15 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
281
274
|
pickPriority: 1,
|
|
282
275
|
isStandardEvmAddress: true,
|
|
283
276
|
},
|
|
284
|
-
[
|
|
277
|
+
[arbitrum.id.toString()]: {
|
|
285
278
|
name: 'Arbitrum', // arbitrum.name returns 'Arbitrum One' which is too wordy for us.
|
|
286
279
|
nativeCurrency: {
|
|
287
|
-
symbol:
|
|
288
|
-
decimals:
|
|
289
|
-
name:
|
|
280
|
+
symbol: arbitrum.nativeCurrency.symbol,
|
|
281
|
+
decimals: arbitrum.nativeCurrency.decimals,
|
|
282
|
+
name: arbitrum.nativeCurrency.name,
|
|
290
283
|
},
|
|
291
|
-
chainInfo:
|
|
292
|
-
explorerInfo:
|
|
284
|
+
chainInfo: arbitrum,
|
|
285
|
+
explorerInfo: arbitrum.blockExplorers.default,
|
|
293
286
|
isCheckoutSupported: true,
|
|
294
287
|
checkoutAssetWhitelist: ['*'],
|
|
295
288
|
isFunWalletSupported: true,
|
|
@@ -298,15 +291,15 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
298
291
|
pickPriority: 3,
|
|
299
292
|
isStandardEvmAddress: true,
|
|
300
293
|
},
|
|
301
|
-
[
|
|
302
|
-
name:
|
|
294
|
+
[optimism.id.toString()]: {
|
|
295
|
+
name: optimism.name,
|
|
303
296
|
nativeCurrency: {
|
|
304
|
-
symbol:
|
|
305
|
-
decimals:
|
|
306
|
-
name:
|
|
297
|
+
symbol: optimism.nativeCurrency.symbol,
|
|
298
|
+
decimals: optimism.nativeCurrency.decimals,
|
|
299
|
+
name: optimism.nativeCurrency.name,
|
|
307
300
|
},
|
|
308
|
-
chainInfo:
|
|
309
|
-
explorerInfo:
|
|
301
|
+
chainInfo: optimism,
|
|
302
|
+
explorerInfo: optimism.blockExplorers.default,
|
|
310
303
|
// Not supported for checkouts on backend yet
|
|
311
304
|
isCheckoutSupported: false,
|
|
312
305
|
checkoutAssetWhitelist: [],
|
|
@@ -317,15 +310,15 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
317
310
|
pickPriority: Number.MAX_SAFE_INTEGER,
|
|
318
311
|
isStandardEvmAddress: true,
|
|
319
312
|
},
|
|
320
|
-
[
|
|
313
|
+
[zkSync.id.toString()]: {
|
|
321
314
|
name: 'zkSync',
|
|
322
315
|
nativeCurrency: {
|
|
323
|
-
symbol:
|
|
324
|
-
decimals:
|
|
325
|
-
name:
|
|
316
|
+
symbol: zkSync.nativeCurrency.symbol,
|
|
317
|
+
decimals: zkSync.nativeCurrency.decimals,
|
|
318
|
+
name: zkSync.nativeCurrency.name,
|
|
326
319
|
},
|
|
327
|
-
chainInfo:
|
|
328
|
-
explorerInfo:
|
|
320
|
+
chainInfo: zkSync,
|
|
321
|
+
explorerInfo: zkSync.blockExplorers.default,
|
|
329
322
|
isCheckoutSupported: true,
|
|
330
323
|
checkoutAssetWhitelist: ['*'],
|
|
331
324
|
isFunWalletSupported: false,
|
|
@@ -334,15 +327,15 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
334
327
|
pickPriority: 5,
|
|
335
328
|
isStandardEvmAddress: true,
|
|
336
329
|
},
|
|
337
|
-
[
|
|
338
|
-
name:
|
|
330
|
+
[mantle.id.toString()]: {
|
|
331
|
+
name: mantle.name,
|
|
339
332
|
nativeCurrency: {
|
|
340
|
-
symbol:
|
|
341
|
-
decimals:
|
|
342
|
-
name:
|
|
333
|
+
symbol: mantle.nativeCurrency.symbol,
|
|
334
|
+
decimals: mantle.nativeCurrency.decimals,
|
|
335
|
+
name: mantle.nativeCurrency.name,
|
|
343
336
|
},
|
|
344
|
-
chainInfo:
|
|
345
|
-
explorerInfo:
|
|
337
|
+
chainInfo: mantle,
|
|
338
|
+
explorerInfo: mantle.blockExplorers.default,
|
|
346
339
|
isCheckoutSupported: true,
|
|
347
340
|
checkoutAssetWhitelist: [
|
|
348
341
|
// USDC.e
|
|
@@ -356,15 +349,15 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
356
349
|
pickPriority: 6,
|
|
357
350
|
isStandardEvmAddress: false,
|
|
358
351
|
},
|
|
359
|
-
[
|
|
360
|
-
name:
|
|
352
|
+
[dydxChain.id.toString()]: {
|
|
353
|
+
name: dydxChain.name,
|
|
361
354
|
nativeCurrency: {
|
|
362
|
-
symbol:
|
|
363
|
-
decimals:
|
|
364
|
-
name:
|
|
355
|
+
symbol: dydxChain.nativeCurrency.symbol,
|
|
356
|
+
decimals: dydxChain.nativeCurrency.decimals,
|
|
357
|
+
name: dydxChain.nativeCurrency.name,
|
|
365
358
|
},
|
|
366
|
-
chainInfo:
|
|
367
|
-
explorerInfo:
|
|
359
|
+
chainInfo: dydxChain,
|
|
360
|
+
explorerInfo: dydxChain.blockExplorers.default,
|
|
368
361
|
// We cannot pay with dYdX / cosmos tokens yet
|
|
369
362
|
isCheckoutSupported: false,
|
|
370
363
|
checkoutAssetWhitelist: [
|
|
@@ -378,15 +371,15 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
378
371
|
isStandardEvmAddress: false,
|
|
379
372
|
},
|
|
380
373
|
/** TESTNETS **/
|
|
381
|
-
[
|
|
382
|
-
name:
|
|
374
|
+
[goerli.id.toString()]: {
|
|
375
|
+
name: goerli.name,
|
|
383
376
|
nativeCurrency: {
|
|
384
|
-
symbol:
|
|
385
|
-
decimals:
|
|
386
|
-
name:
|
|
377
|
+
symbol: goerli.nativeCurrency.symbol,
|
|
378
|
+
decimals: goerli.nativeCurrency.decimals,
|
|
379
|
+
name: goerli.nativeCurrency.name,
|
|
387
380
|
},
|
|
388
|
-
chainInfo:
|
|
389
|
-
explorerInfo:
|
|
381
|
+
chainInfo: goerli,
|
|
382
|
+
explorerInfo: goerli.blockExplorers.default,
|
|
390
383
|
isCheckoutSupported: true,
|
|
391
384
|
checkoutAssetWhitelist: ['*'],
|
|
392
385
|
isFunWalletSupported: true,
|
|
@@ -396,14 +389,14 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
396
389
|
pickPriority: Number.MAX_SAFE_INTEGER,
|
|
397
390
|
isStandardEvmAddress: true,
|
|
398
391
|
},
|
|
399
|
-
[
|
|
400
|
-
name:
|
|
392
|
+
[arbitrumSepolia.id.toString()]: {
|
|
393
|
+
name: arbitrumSepolia.name,
|
|
401
394
|
nativeCurrency: {
|
|
402
|
-
symbol:
|
|
403
|
-
decimals:
|
|
404
|
-
name:
|
|
395
|
+
symbol: arbitrumSepolia.nativeCurrency.symbol,
|
|
396
|
+
decimals: arbitrumSepolia.nativeCurrency.decimals,
|
|
397
|
+
name: arbitrumSepolia.nativeCurrency.name,
|
|
405
398
|
},
|
|
406
|
-
chainInfo:
|
|
399
|
+
chainInfo: arbitrumSepolia,
|
|
407
400
|
explorerInfo: {
|
|
408
401
|
name: 'Arbiscan',
|
|
409
402
|
url: 'https://sepolia.arbiscan.io',
|
|
@@ -418,12 +411,12 @@ exports.FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = {
|
|
|
418
411
|
isStandardEvmAddress: false,
|
|
419
412
|
},
|
|
420
413
|
};
|
|
421
|
-
|
|
422
|
-
|
|
414
|
+
export const FUNKIT_CONNECT_SUPPORTED_CHAINS_ID_LIST = Object.keys(FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO);
|
|
415
|
+
export const FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO_LIST = Object.values(FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO).map((item) => item.chainInfo);
|
|
423
416
|
// checkout supported + mainnet
|
|
424
|
-
|
|
425
|
-
|
|
417
|
+
export const FUNKIT_CONNECT_SUPPORTED_CHECKOUT_CHAINS_INFO_LIST = FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO_LIST.filter((chainInfo) => FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO[chainInfo.id]?.isCheckoutSupported &&
|
|
418
|
+
FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO[chainInfo.id]?.isMainnet);
|
|
426
419
|
// The native currency fake address used for checkout operation in funkitconnect (socket-specific requirement)
|
|
427
420
|
// Reference: https://fun-xyz.slack.com/archives/C04Q5T1MQP3/p1701901749677069?thread_ts=1701829172.857709&cid=C04Q5T1MQP3
|
|
428
|
-
|
|
421
|
+
export const FUNKIT_CONNECT_CHECKOUT_NATIVE_CURRENCY_ADDRESS = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';
|
|
429
422
|
//# sourceMappingURL=constants.js.map
|