@dodoex/dodo-contract-request 1.0.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/.cache/contract-info/BuyoutModel.json +1 -0
- package/.cache/contract-info/CP.json +1 -0
- package/.cache/contract-info/CloneFactory.json +1 -0
- package/.cache/contract-info/CrowdPoolingFactory.json +1 -0
- package/.cache/contract-info/CustomERC20.json +1 -0
- package/.cache/contract-info/CustomMintableERC20.json +1 -0
- package/.cache/contract-info/D3Proxy.json +1 -0
- package/.cache/contract-info/D3Vault.json +1 -0
- package/.cache/contract-info/DODOApprove.json +1 -0
- package/.cache/contract-info/DODOApproveProxy.json +1 -0
- package/.cache/contract-info/DODOCalleeHelper.json +1 -0
- package/.cache/contract-info/DODOCirculationHelper.json +1 -0
- package/.cache/contract-info/DODOCpProxy.json +148 -0
- package/.cache/contract-info/DODOCpProxyWithoutGlobalQuota.json +1 -0
- package/.cache/contract-info/DODODppProxy.json +1 -0
- package/.cache/contract-info/DODODspProxy.json +1 -0
- package/.cache/contract-info/DODODspProxyWithoutGSP.json +1 -0
- package/.cache/contract-info/DODOIncentive.json +1 -0
- package/.cache/contract-info/DODOMineV2Factory.json +1 -0
- package/.cache/contract-info/DODOMineV3Proxy.json +373 -0
- package/.cache/contract-info/DODOMineV3ProxyWithoutPlatform.json +1 -0
- package/.cache/contract-info/DODOMineV3Registry.json +1 -0
- package/.cache/contract-info/DODONFT.json +1 -0
- package/.cache/contract-info/DODONFT1155.json +1 -0
- package/.cache/contract-info/DODONFTApprove.json +1 -0
- package/.cache/contract-info/DODONFTPoolProxy.json +1 -0
- package/.cache/contract-info/DODONFTProxy.json +1 -0
- package/.cache/contract-info/DODONFTRegistry.json +1 -0
- package/.cache/contract-info/DODONFTRouteHelper.json +1 -0
- package/.cache/contract-info/DODOSellHelper.json +1 -0
- package/.cache/contract-info/DODOStarterProxy.json +1 -0
- package/.cache/contract-info/DODOV1.json +1 -0
- package/.cache/contract-info/DODOV1Adapter.json +1 -0
- package/.cache/contract-info/DODOV1PmmHelper.json +88 -0
- package/.cache/contract-info/DODOV1Proxy.json +1 -0
- package/.cache/contract-info/DODOV2Proxy02.json +1 -0
- package/.cache/contract-info/DODOV2RouteHelper.json +1 -0
- package/.cache/contract-info/DPPAdvanced.json +1 -0
- package/.cache/contract-info/DPPAdvancedAdmin.json +1 -0
- package/.cache/contract-info/DPPFactory.json +1 -0
- package/.cache/contract-info/DSP.json +1 -0
- package/.cache/contract-info/DSPFactory.json +1 -0
- package/.cache/contract-info/DVM.json +1 -0
- package/.cache/contract-info/DVMFactory.json +1 -0
- package/.cache/contract-info/ERC20.json +1 -0
- package/.cache/contract-info/ERC20Helper.json +1 -0
- package/.cache/contract-info/ERC20MineV3.json +1 -0
- package/.cache/contract-info/ERC20V3Factory.json +1 -0
- package/.cache/contract-info/FeeRateDIP3Impl.json +1 -0
- package/.cache/contract-info/FeeRateModel.json +1 -0
- package/.cache/contract-info/GSP.json +1 -0
- package/.cache/contract-info/GSPFactory.json +1 -0
- package/.cache/contract-info/InitializableERC20.json +1 -0
- package/.cache/contract-info/LimitOrder.json +1 -0
- package/.cache/contract-info/LimitOrderBot.json +1 -0
- package/.cache/contract-info/MulticallWithValid.json +1 -0
- package/.cache/contract-info/PermissionManager.json +1 -0
- package/.cache/contract-info/dodoTeam.json +1 -0
- package/.cache/contract-info/vDODOToken.json +1 -0
- package/.env.sample +1 -0
- package/.releaserc.json +31 -0
- package/CHANGELOG.md +16 -0
- package/README.md +75 -0
- package/babel.config.js +6 -0
- package/contract-config/arbitrum.json +85 -0
- package/contract-config/aurora.json +84 -0
- package/contract-config/avalanche.json +84 -0
- package/contract-config/base.json +84 -0
- package/contract-config/berachain-testnet.json +65 -0
- package/contract-config/bitlayer.json +84 -0
- package/contract-config/bsc.json +85 -0
- package/contract-config/conflux.json +84 -0
- package/contract-config/eth.json +90 -0
- package/contract-config/linea.json +84 -0
- package/contract-config/manta.json +84 -0
- package/contract-config/mantle.json +85 -0
- package/contract-config/morph.json +65 -0
- package/contract-config/optimism.json +84 -0
- package/contract-config/polygon.json +84 -0
- package/contract-config/scroll.json +84 -0
- package/contract-config/sepolia.json +85 -0
- package/contract-config/taiko.json +65 -0
- package/contract-config/x-layer.json +84 -0
- package/contract-config/zero-mainnet.json +65 -0
- package/contract-config/zircuit-mainnet.json +84 -0
- package/dist/config.js +1 -0
- package/dist/index.js +1 -0
- package/dist/types/config/arbitrum.d.ts +40 -0
- package/dist/types/config/aurora.d.ts +25 -0
- package/dist/types/config/avalanche.d.ts +27 -0
- package/dist/types/config/base.d.ts +23 -0
- package/dist/types/config/berachain-testnet.d.ts +30 -0
- package/dist/types/config/bitlayer.d.ts +24 -0
- package/dist/types/config/bsc.d.ts +40 -0
- package/dist/types/config/conflux.d.ts +23 -0
- package/dist/types/config/ethereum.d.ts +45 -0
- package/dist/types/config/index.d.ts +179 -0
- package/dist/types/config/linea.d.ts +24 -0
- package/dist/types/config/manta.d.ts +24 -0
- package/dist/types/config/mantle.d.ts +24 -0
- package/dist/types/config/morph.d.ts +30 -0
- package/dist/types/config/optimism.d.ts +26 -0
- package/dist/types/config/polygon.d.ts +38 -0
- package/dist/types/config/scroll.d.ts +24 -0
- package/dist/types/config/sepolia.d.ts +27 -0
- package/dist/types/config/taiko.d.ts +30 -0
- package/dist/types/config/x-layer.d.ts +25 -0
- package/dist/types/config/zero-mainnet.d.ts +30 -0
- package/dist/types/config/zircuit-mainnet.d.ts +24 -0
- package/dist/types/contract/BuyoutModel.d.ts +83 -0
- package/dist/types/contract/CP.d.ts +317 -0
- package/dist/types/contract/CloneFactory.d.ts +6 -0
- package/dist/types/contract/CrowdPoolingFactory.d.ts +207 -0
- package/dist/types/contract/CustomERC20.d.ts +145 -0
- package/dist/types/contract/CustomMintableERC20.d.ts +158 -0
- package/dist/types/contract/D3Proxy.d.ts +104 -0
- package/dist/types/contract/D3Vault.d.ts +639 -0
- package/dist/types/contract/DODOApprove.d.ts +89 -0
- package/dist/types/contract/DODOApproveProxy.d.ts +103 -0
- package/dist/types/contract/DODOCalleeHelper.d.ts +42 -0
- package/dist/types/contract/DODOCirculationHelper.d.ts +74 -0
- package/dist/types/contract/DODOCpProxy.d.ts +40 -0
- package/dist/types/contract/DODOCpProxyWithoutGlobalQuota.d.ts +40 -0
- package/dist/types/contract/DODODppProxy.d.ts +45 -0
- package/dist/types/contract/DODODspProxy.d.ts +67 -0
- package/dist/types/contract/DODODspProxyWithoutGSP.d.ts +45 -0
- package/dist/types/contract/DODOIncentive.d.ts +137 -0
- package/dist/types/contract/DODOMineV2Factory.d.ts +99 -0
- package/dist/types/contract/DODOMineV3Proxy.d.ts +88 -0
- package/dist/types/contract/DODOMineV3ProxyWithoutPlatform.d.ts +88 -0
- package/dist/types/contract/DODOMineV3Registry.d.ts +89 -0
- package/dist/types/contract/DODONFT.d.ts +172 -0
- package/dist/types/contract/DODONFT1155.d.ts +117 -0
- package/dist/types/contract/DODONFTApprove.d.ts +117 -0
- package/dist/types/contract/DODONFTPoolProxy.d.ts +181 -0
- package/dist/types/contract/DODONFTProxy.d.ts +152 -0
- package/dist/types/contract/DODONFTRegistry.d.ts +101 -0
- package/dist/types/contract/DODONFTRouteHelper.d.ts +16 -0
- package/dist/types/contract/DODOSellHelper.d.ts +17 -0
- package/dist/types/contract/DODOStarterProxy.d.ts +22 -0
- package/dist/types/contract/DODOV1.d.ts +514 -0
- package/dist/types/contract/DODOV1Adapter.d.ts +23 -0
- package/dist/types/contract/DODOV1PmmHelper.d.ts +8 -0
- package/dist/types/contract/DODOV1Proxy.d.ts +55 -0
- package/dist/types/contract/DODOV2Proxy02.d.ts +280 -0
- package/dist/types/contract/DODOV2RouteHelper.d.ts +28 -0
- package/dist/types/contract/DPPAdvanced.d.ts +320 -0
- package/dist/types/contract/DPPAdvancedAdmin.d.ts +115 -0
- package/dist/types/contract/DPPFactory.d.ts +194 -0
- package/dist/types/contract/DSP.d.ts +392 -0
- package/dist/types/contract/DSPFactory.d.ts +134 -0
- package/dist/types/contract/DVM.d.ts +363 -0
- package/dist/types/contract/DVMFactory.d.ts +134 -0
- package/dist/types/contract/ERC20.d.ts +79 -0
- package/dist/types/contract/ERC20Helper.d.ts +67 -0
- package/dist/types/contract/ERC20MineV3.d.ts +204 -0
- package/dist/types/contract/ERC20V3Factory.d.ts +161 -0
- package/dist/types/contract/FeeRateDIP3Impl.d.ts +158 -0
- package/dist/types/contract/FeeRateModel.d.ts +53 -0
- package/dist/types/contract/GSP.d.ts +488 -0
- package/dist/types/contract/GSPFactory.d.ts +137 -0
- package/dist/types/contract/InitializableERC20.d.ts +84 -0
- package/dist/types/contract/LimitOrder.d.ts +164 -0
- package/dist/types/contract/LimitOrderBot.d.ts +102 -0
- package/dist/types/contract/MulticallWithValid.d.ts +51 -0
- package/dist/types/contract/PermissionManager.d.ts +83 -0
- package/dist/types/contract/dodoTeam.d.ts +244 -0
- package/dist/types/contract/vDODOToken.d.ts +309 -0
- package/dist/types/contractRequests.d.ts +3 -0
- package/dist/types/index.d.ts +60 -0
- package/package.json +41 -0
- package/rollup.config.mjs +51 -0
- package/scripts/contract-generate.ts +192 -0
- package/src/config/arbitrum.ts +4 -0
- package/src/config/aurora.ts +4 -0
- package/src/config/avalanche.ts +4 -0
- package/src/config/base.ts +4 -0
- package/src/config/berachain-testnet.ts +4 -0
- package/src/config/bitlayer.ts +4 -0
- package/src/config/bsc.ts +4 -0
- package/src/config/conflux.ts +4 -0
- package/src/config/ethereum.ts +4 -0
- package/src/config/index.ts +95 -0
- package/src/config/linea.ts +4 -0
- package/src/config/manta.ts +4 -0
- package/src/config/mantle.ts +4 -0
- package/src/config/morph.ts +4 -0
- package/src/config/optimism.ts +4 -0
- package/src/config/polygon.ts +4 -0
- package/src/config/scroll.ts +4 -0
- package/src/config/sepolia.ts +4 -0
- package/src/config/taiko.ts +4 -0
- package/src/config/x-layer.ts +4 -0
- package/src/config/zero-mainnet.ts +4 -0
- package/src/config/zircuit-mainnet.ts +4 -0
- package/src/contract/BuyoutModel.ts +158 -0
- package/src/contract/CP.ts +532 -0
- package/src/contract/CloneFactory.ts +15 -0
- package/src/contract/CrowdPoolingFactory.ts +397 -0
- package/src/contract/CustomERC20.ts +241 -0
- package/src/contract/CustomMintableERC20.ts +262 -0
- package/src/contract/D3Proxy.ts +177 -0
- package/src/contract/D3Vault.ts +1124 -0
- package/src/contract/DODOApprove.ts +172 -0
- package/src/contract/DODOApproveProxy.ts +197 -0
- package/src/contract/DODOCalleeHelper.ts +74 -0
- package/src/contract/DODOCirculationHelper.ts +152 -0
- package/src/contract/DODOCpProxy.ts +78 -0
- package/src/contract/DODOCpProxyWithoutGlobalQuota.ts +78 -0
- package/src/contract/DODODppProxy.ts +83 -0
- package/src/contract/DODODspProxy.ts +116 -0
- package/src/contract/DODODspProxyWithoutGSP.ts +83 -0
- package/src/contract/DODOIncentive.ts +259 -0
- package/src/contract/DODOMineV2Factory.ts +189 -0
- package/src/contract/DODOMineV3Proxy.ts +167 -0
- package/src/contract/DODOMineV3ProxyWithoutPlatform.ts +167 -0
- package/src/contract/DODOMineV3Registry.ts +168 -0
- package/src/contract/DODONFT.ts +323 -0
- package/src/contract/DODONFT1155.ts +214 -0
- package/src/contract/DODONFTApprove.ts +212 -0
- package/src/contract/DODONFTPoolProxy.ts +316 -0
- package/src/contract/DODONFTProxy.ts +293 -0
- package/src/contract/DODONFTRegistry.ts +187 -0
- package/src/contract/DODONFTRouteHelper.ts +39 -0
- package/src/contract/DODOSellHelper.ts +40 -0
- package/src/contract/DODOStarterProxy.ts +49 -0
- package/src/contract/DODOV1.ts +854 -0
- package/src/contract/DODOV1Adapter.ts +47 -0
- package/src/contract/DODOV1PmmHelper.ts +24 -0
- package/src/contract/DODOV1Proxy.ts +99 -0
- package/src/contract/DODOV2Proxy02.ts +456 -0
- package/src/contract/DODOV2RouteHelper.ts +65 -0
- package/src/contract/DPPAdvanced.ts +492 -0
- package/src/contract/DPPAdvancedAdmin.ts +191 -0
- package/src/contract/DPPFactory.ts +353 -0
- package/src/contract/DSP.ts +608 -0
- package/src/contract/DSPFactory.ts +248 -0
- package/src/contract/DVM.ts +564 -0
- package/src/contract/DVMFactory.ts +248 -0
- package/src/contract/ERC20.ts +134 -0
- package/src/contract/ERC20Helper.ts +104 -0
- package/src/contract/ERC20MineV3.ts +326 -0
- package/src/contract/ERC20V3Factory.ts +291 -0
- package/src/contract/FeeRateDIP3Impl.ts +281 -0
- package/src/contract/FeeRateModel.ts +94 -0
- package/src/contract/GSP.ts +766 -0
- package/src/contract/GSPFactory.ts +248 -0
- package/src/contract/InitializableERC20.ts +140 -0
- package/src/contract/LimitOrder.ts +267 -0
- package/src/contract/LimitOrderBot.ts +189 -0
- package/src/contract/MulticallWithValid.ts +113 -0
- package/src/contract/PermissionManager.ts +144 -0
- package/src/contract/dodoTeam.ts +415 -0
- package/src/contract/vDODOToken.ts +592 -0
- package/src/contractRequests.ts +10 -0
- package/src/index.ts +61 -0
- package/tsconfig.json +21 -0
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import { defaultAbiCoder, concat, hexlify } from '@dodoex/contract-request';
|
|
2
|
+
|
|
3
|
+
import { contractRequests } from '../contractRequests';
|
|
4
|
+
|
|
5
|
+
export function getLimitOrderBotContractAddressByChainId(chainId: number) {
|
|
6
|
+
const contractAddressObject = {"1":"0xD9B825d16E09f28D0c715fe004364046E5524Dbb","56":"0x187da347dEbf4221B861EeAFC9808d8Cf89cF5fE","137":"0xA7263eb38b9A61B72397c884b5f9bFb5C34A7840","42161":"0x0F278Ee5FDd139f9aE8c6498Cca0f2c2208684a2"};
|
|
7
|
+
const result = contractAddressObject[String(chainId) as keyof typeof contractAddressObject];
|
|
8
|
+
if (!result) throw new Error(`Not support ChainId: ${chainId}.`)
|
|
9
|
+
return result
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* fetch _DODO_APPROVE_
|
|
14
|
+
* @param {number} chainId - number
|
|
15
|
+
* @returns {string} __output0 - address
|
|
16
|
+
*/
|
|
17
|
+
export function fetchLimitOrderBot_DODO_APPROVE_(chainId: number) {
|
|
18
|
+
const __to = getLimitOrderBotContractAddressByChainId(chainId);
|
|
19
|
+
|
|
20
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
21
|
+
const __data = hexlify(concat(['0x46e74298', __encodeData]));
|
|
22
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["address"])
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* fetch _DODO_LIMIT_ORDER_
|
|
27
|
+
* @param {number} chainId - number
|
|
28
|
+
* @returns {string} __output0 - address
|
|
29
|
+
*/
|
|
30
|
+
export function fetchLimitOrderBot_DODO_LIMIT_ORDER_(chainId: number) {
|
|
31
|
+
const __to = getLimitOrderBotContractAddressByChainId(chainId);
|
|
32
|
+
|
|
33
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
34
|
+
const __data = hexlify(concat(['0xb074a789', __encodeData]));
|
|
35
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["address"])
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* fetch _NEW_OWNER_
|
|
40
|
+
* @param {number} chainId - number
|
|
41
|
+
* @returns {string} __output0 - address
|
|
42
|
+
*/
|
|
43
|
+
export function fetchLimitOrderBot_NEW_OWNER_(chainId: number) {
|
|
44
|
+
const __to = getLimitOrderBotContractAddressByChainId(chainId);
|
|
45
|
+
|
|
46
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
47
|
+
const __data = hexlify(concat(['0x8456db15', __encodeData]));
|
|
48
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["address"])
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* fetch _OWNER_
|
|
53
|
+
* @param {number} chainId - number
|
|
54
|
+
* @returns {string} __output0 - address
|
|
55
|
+
*/
|
|
56
|
+
export function fetchLimitOrderBot_OWNER_(chainId: number) {
|
|
57
|
+
const __to = getLimitOrderBotContractAddressByChainId(chainId);
|
|
58
|
+
|
|
59
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
60
|
+
const __data = hexlify(concat(['0x16048bc4', __encodeData]));
|
|
61
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["address"])
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* fetch _TOKEN_RECEIVER_
|
|
66
|
+
* @param {number} chainId - number
|
|
67
|
+
* @returns {string} __output0 - address
|
|
68
|
+
*/
|
|
69
|
+
export function fetchLimitOrderBot_TOKEN_RECEIVER_(chainId: number) {
|
|
70
|
+
const __to = getLimitOrderBotContractAddressByChainId(chainId);
|
|
71
|
+
|
|
72
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
73
|
+
const __data = hexlify(concat(['0x3b66b615', __encodeData]));
|
|
74
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["address"])
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* fetch isAdminListed
|
|
79
|
+
* @param {number} chainId - number
|
|
80
|
+
* @param {string} __input1 - address
|
|
81
|
+
* @returns {boolean} __output0 - bool
|
|
82
|
+
*/
|
|
83
|
+
export function fetchLimitOrderBotIsAdminListed(chainId: number, __input1: string) {
|
|
84
|
+
const __to = getLimitOrderBotContractAddressByChainId(chainId);
|
|
85
|
+
|
|
86
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [__input1]);
|
|
87
|
+
const __data = hexlify(concat(['0x1822c0c0', __encodeData]));
|
|
88
|
+
return contractRequests.batchCall<boolean>(chainId, __to, __data, ["bool"])
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* encode addAdminList
|
|
93
|
+
* @param {string} userAddr - address
|
|
94
|
+
* @returns {string} encode data
|
|
95
|
+
*/
|
|
96
|
+
export function encodeLimitOrderBotAddAdminList(userAddr: string) {
|
|
97
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [userAddr]);
|
|
98
|
+
return hexlify(concat(['0xae52aae7', __encodeData]));
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* encode changeTokenReceiver
|
|
103
|
+
* @param {string} newTokenReceiver - address
|
|
104
|
+
* @returns {string} encode data
|
|
105
|
+
*/
|
|
106
|
+
export function encodeLimitOrderBotChangeTokenReceiver(newTokenReceiver: string) {
|
|
107
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [newTokenReceiver]);
|
|
108
|
+
return hexlify(concat(['0xbc2790c8', __encodeData]));
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* encode claimOwnership
|
|
113
|
+
|
|
114
|
+
* @returns {string} encode data
|
|
115
|
+
*/
|
|
116
|
+
export function encodeLimitOrderBotClaimOwnership() {
|
|
117
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
118
|
+
return hexlify(concat(['0x4e71e0c8', __encodeData]));
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* encode doLimitOrderSwap
|
|
123
|
+
* @param {number} curTakerFillAmount - uint256
|
|
124
|
+
* @param {number} curMakerFillAmount - uint256
|
|
125
|
+
* @param {string} makerToken - address
|
|
126
|
+
* @param {string} takerToken - address
|
|
127
|
+
* @param {string} dodoRouteProxy - address
|
|
128
|
+
* @param {string} dodoApiData - bytes
|
|
129
|
+
* @returns {string} encode data
|
|
130
|
+
*/
|
|
131
|
+
export function encodeLimitOrderBotDoLimitOrderSwap(curTakerFillAmount: number, curMakerFillAmount: number, makerToken: string, takerToken: string, dodoRouteProxy: string, dodoApiData: string) {
|
|
132
|
+
const __encodeData = defaultAbiCoder.encode(["uint256","uint256","address","address","address","bytes"], [curTakerFillAmount,curMakerFillAmount,makerToken,takerToken,dodoRouteProxy,dodoApiData]);
|
|
133
|
+
return hexlify(concat(['0x89143c25', __encodeData]));
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* encode fillDODOLimitOrder
|
|
138
|
+
* @param {string} callExternalData - bytes
|
|
139
|
+
* @param {string} takerToken - address
|
|
140
|
+
* @param {number} minTakerTokenAmount - uint256
|
|
141
|
+
* @returns {string} encode data
|
|
142
|
+
*/
|
|
143
|
+
export function encodeLimitOrderBotFillDODOLimitOrder(callExternalData: string, takerToken: string, minTakerTokenAmount: number) {
|
|
144
|
+
const __encodeData = defaultAbiCoder.encode(["bytes","address","uint256"], [callExternalData,takerToken,minTakerTokenAmount]);
|
|
145
|
+
return hexlify(concat(['0x272a16bd', __encodeData]));
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* encode init
|
|
150
|
+
* @param {string} owner - address
|
|
151
|
+
* @param {string} dodoLimitOrder - address
|
|
152
|
+
* @param {string} tokenReceiver - address
|
|
153
|
+
* @param {string} dodoApprove - address
|
|
154
|
+
* @returns {string} encode data
|
|
155
|
+
*/
|
|
156
|
+
export function encodeLimitOrderBotInit(owner: string, dodoLimitOrder: string, tokenReceiver: string, dodoApprove: string) {
|
|
157
|
+
const __encodeData = defaultAbiCoder.encode(["address","address","address","address"], [owner,dodoLimitOrder,tokenReceiver,dodoApprove]);
|
|
158
|
+
return hexlify(concat(['0x06552ff3', __encodeData]));
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* encode initOwner
|
|
163
|
+
* @param {string} newOwner - address
|
|
164
|
+
* @returns {string} encode data
|
|
165
|
+
*/
|
|
166
|
+
export function encodeLimitOrderBotInitOwner(newOwner: string) {
|
|
167
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [newOwner]);
|
|
168
|
+
return hexlify(concat(['0x0d009297', __encodeData]));
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* encode removeAdminList
|
|
173
|
+
* @param {string} userAddr - address
|
|
174
|
+
* @returns {string} encode data
|
|
175
|
+
*/
|
|
176
|
+
export function encodeLimitOrderBotRemoveAdminList(userAddr: string) {
|
|
177
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [userAddr]);
|
|
178
|
+
return hexlify(concat(['0xfd8bd849', __encodeData]));
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
/**
|
|
182
|
+
* encode transferOwnership
|
|
183
|
+
* @param {string} newOwner - address
|
|
184
|
+
* @returns {string} encode data
|
|
185
|
+
*/
|
|
186
|
+
export function encodeLimitOrderBotTransferOwnership(newOwner: string) {
|
|
187
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [newOwner]);
|
|
188
|
+
return hexlify(concat(['0xf2fde38b', __encodeData]));
|
|
189
|
+
}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { defaultAbiCoder, concat, hexlify } from '@dodoex/contract-request';
|
|
2
|
+
|
|
3
|
+
import { contractRequests } from '../contractRequests';
|
|
4
|
+
|
|
5
|
+
export function getMulticallWithValidContractAddressByChainId(chainId: number) {
|
|
6
|
+
const contractAddressObject = {"1":"0x0Cd61B78fF75701eA23fCaec5a22D464F7E1Dc1e","10":"0x9b5f2020a3121684bed861e7b5C64D2AF3f33841","56":"0xdcd53616CFf1Aec6342d8C813Ee393c1eC7D7807","137":"0xBd2456637cb7621984e1B7E60189a9856aA60813","196":"0xdf45fe87c36616a5ffdfe05d54a63f29afe91d9f","1030":"0x44023441f2bad375b6b5c6354b03c3e9ad01e269","2818":"0x388371233439cF57bB8C9f2e4835954841cfCb15","5000":"0x65934e2f228Fde069A6255F46E6A15Bc9DE38545","8453":"0xee7210fc88E1FFdB6aFb305E8F68b4f1d20FEdAd","10169":"0x6D3bd005A8a75d6522C9cFE7d309BB1Cf9650e03","42161":"0x3b49d23C0322ecD24D01c7b35f26a57Ec7cF7901","43114":"0xbcd2FDC3B884Cf0dfD932f55Ec2Fe1fB7e8c62Da","48900":"0xDF45Fe87c36616a5fFDFe05D54A63f29AfE91d9f","59144":"0x1172035A744Ea18161497e94f0bbCe244d51de9F","80084":"0x701855ae3a8b2A989DC8ACCf02Dd2b96f8B21671","167000":"0x388371233439cF57bB8C9f2e4835954841cfCb15","200901":"0xd5cf3f9dfcfc1c3f8b476d881f2f7e79142e319b","534352":"0x6433407a29706Bbdd43b36cd402a53A174f066a1","543210":"0x12Bea73C7117feC468Ae1Dd97923d0b3E41d6928","11155111":"0x1fC8EC204549C865a17b4059A57decA66A4Bd4cC","1313161554":"0x5a0C840a7089aa222c4458b3BE0947fe5a5006DE"};
|
|
7
|
+
const result = contractAddressObject[String(chainId) as keyof typeof contractAddressObject];
|
|
8
|
+
if (!result) throw new Error(`Not support ChainId: ${chainId}.`)
|
|
9
|
+
return result
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* fetch getBlockHash
|
|
14
|
+
* @param {number} chainId - number
|
|
15
|
+
* @param {number} blockNumber - uint256
|
|
16
|
+
* @returns {string} blockHash - bytes32
|
|
17
|
+
*/
|
|
18
|
+
export function fetchMulticallWithValidGetBlockHash(chainId: number, blockNumber: number) {
|
|
19
|
+
const __to = getMulticallWithValidContractAddressByChainId(chainId);
|
|
20
|
+
|
|
21
|
+
const __encodeData = defaultAbiCoder.encode(["uint256"], [blockNumber]);
|
|
22
|
+
const __data = hexlify(concat(['0xee82ac5e', __encodeData]));
|
|
23
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["bytes32"])
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* fetch getCurrentBlockCoinbase
|
|
28
|
+
* @param {number} chainId - number
|
|
29
|
+
* @returns {string} coinbase - address
|
|
30
|
+
*/
|
|
31
|
+
export function fetchMulticallWithValidGetCurrentBlockCoinbase(chainId: number) {
|
|
32
|
+
const __to = getMulticallWithValidContractAddressByChainId(chainId);
|
|
33
|
+
|
|
34
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
35
|
+
const __data = hexlify(concat(['0xa8b0574e', __encodeData]));
|
|
36
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["address"])
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* fetch getCurrentBlockDifficulty
|
|
41
|
+
* @param {number} chainId - number
|
|
42
|
+
* @returns {bigint} difficulty - uint256
|
|
43
|
+
*/
|
|
44
|
+
export function fetchMulticallWithValidGetCurrentBlockDifficulty(chainId: number) {
|
|
45
|
+
const __to = getMulticallWithValidContractAddressByChainId(chainId);
|
|
46
|
+
|
|
47
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
48
|
+
const __data = hexlify(concat(['0x72425d9d', __encodeData]));
|
|
49
|
+
return contractRequests.batchCall<bigint>(chainId, __to, __data, ["uint256"])
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* fetch getCurrentBlockGasLimit
|
|
54
|
+
* @param {number} chainId - number
|
|
55
|
+
* @returns {bigint} gaslimit - uint256
|
|
56
|
+
*/
|
|
57
|
+
export function fetchMulticallWithValidGetCurrentBlockGasLimit(chainId: number) {
|
|
58
|
+
const __to = getMulticallWithValidContractAddressByChainId(chainId);
|
|
59
|
+
|
|
60
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
61
|
+
const __data = hexlify(concat(['0x86d516e8', __encodeData]));
|
|
62
|
+
return contractRequests.batchCall<bigint>(chainId, __to, __data, ["uint256"])
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* fetch getCurrentBlockTimestamp
|
|
67
|
+
* @param {number} chainId - number
|
|
68
|
+
* @returns {bigint} timestamp - uint256
|
|
69
|
+
*/
|
|
70
|
+
export function fetchMulticallWithValidGetCurrentBlockTimestamp(chainId: number) {
|
|
71
|
+
const __to = getMulticallWithValidContractAddressByChainId(chainId);
|
|
72
|
+
|
|
73
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
74
|
+
const __data = hexlify(concat(['0x0f28c97d', __encodeData]));
|
|
75
|
+
return contractRequests.batchCall<bigint>(chainId, __to, __data, ["uint256"])
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* fetch getEthBalance
|
|
80
|
+
* @param {number} chainId - number
|
|
81
|
+
* @param {string} addr - address
|
|
82
|
+
* @returns {bigint} balance - uint256
|
|
83
|
+
*/
|
|
84
|
+
export function fetchMulticallWithValidGetEthBalance(chainId: number, addr: string) {
|
|
85
|
+
const __to = getMulticallWithValidContractAddressByChainId(chainId);
|
|
86
|
+
|
|
87
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [addr]);
|
|
88
|
+
const __data = hexlify(concat(['0x4d2301cc', __encodeData]));
|
|
89
|
+
return contractRequests.batchCall<bigint>(chainId, __to, __data, ["uint256"])
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* fetch getLastBlockHash
|
|
94
|
+
* @param {number} chainId - number
|
|
95
|
+
* @returns {string} blockHash - bytes32
|
|
96
|
+
*/
|
|
97
|
+
export function fetchMulticallWithValidGetLastBlockHash(chainId: number) {
|
|
98
|
+
const __to = getMulticallWithValidContractAddressByChainId(chainId);
|
|
99
|
+
|
|
100
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
101
|
+
const __data = hexlify(concat(['0x27e86d6e', __encodeData]));
|
|
102
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["bytes32"])
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* encode aggregate
|
|
107
|
+
* @param {[string, string]} calls - tuple[]
|
|
108
|
+
* @returns {string} encode data
|
|
109
|
+
*/
|
|
110
|
+
export function encodeMulticallWithValidAggregate(calls: [string, string]) {
|
|
111
|
+
const __encodeData = defaultAbiCoder.encode(["tuple(address, bytes)[]"], [calls]);
|
|
112
|
+
return hexlify(concat(['0xd0707b67', __encodeData]));
|
|
113
|
+
}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import { defaultAbiCoder, concat, hexlify } from '@dodoex/contract-request';
|
|
2
|
+
|
|
3
|
+
import { contractRequests } from '../contractRequests';
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* fetch _NEW_OWNER_
|
|
9
|
+
* @param {number} chainId - number
|
|
10
|
+
* @param {string} __to - string
|
|
11
|
+
* @returns {string} __output0 - address
|
|
12
|
+
*/
|
|
13
|
+
export function fetchPermissionManager_NEW_OWNER_(chainId: number, __to: string) {
|
|
14
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
15
|
+
const __data = hexlify(concat(['0x8456db15', __encodeData]));
|
|
16
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["address"])
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* fetch _OWNER_
|
|
21
|
+
* @param {number} chainId - number
|
|
22
|
+
* @param {string} __to - string
|
|
23
|
+
* @returns {string} __output0 - address
|
|
24
|
+
*/
|
|
25
|
+
export function fetchPermissionManager_OWNER_(chainId: number, __to: string) {
|
|
26
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
27
|
+
const __data = hexlify(concat(['0x16048bc4', __encodeData]));
|
|
28
|
+
return contractRequests.batchCall<string>(chainId, __to, __data, ["address"])
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* fetch _WHITELIST_MODE_ON_
|
|
33
|
+
* @param {number} chainId - number
|
|
34
|
+
* @param {string} __to - string
|
|
35
|
+
* @returns {boolean} __output0 - bool
|
|
36
|
+
*/
|
|
37
|
+
export function fetchPermissionManager_WHITELIST_MODE_ON_(chainId: number, __to: string) {
|
|
38
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
39
|
+
const __data = hexlify(concat(['0x63e9cad6', __encodeData]));
|
|
40
|
+
return contractRequests.batchCall<boolean>(chainId, __to, __data, ["bool"])
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* fetch isAllowed
|
|
45
|
+
* @param {number} chainId - number
|
|
46
|
+
* @param {string} __to - string
|
|
47
|
+
* @param {string} account - address
|
|
48
|
+
* @returns {boolean} __output0 - bool
|
|
49
|
+
*/
|
|
50
|
+
export function fetchPermissionManagerIsAllowed(chainId: number, __to: string, account: string) {
|
|
51
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [account]);
|
|
52
|
+
const __data = hexlify(concat(['0xbabcc539', __encodeData]));
|
|
53
|
+
return contractRequests.batchCall<boolean>(chainId, __to, __data, ["bool"])
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* encode addToBlacklist
|
|
58
|
+
* @param {string} account - address
|
|
59
|
+
* @returns {string} encode data
|
|
60
|
+
*/
|
|
61
|
+
export function encodePermissionManagerAddToBlacklist(account: string) {
|
|
62
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [account]);
|
|
63
|
+
return hexlify(concat(['0x44337ea1', __encodeData]));
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* encode addToWhitelist
|
|
68
|
+
* @param {string} account - address
|
|
69
|
+
* @returns {string} encode data
|
|
70
|
+
*/
|
|
71
|
+
export function encodePermissionManagerAddToWhitelist(account: string) {
|
|
72
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [account]);
|
|
73
|
+
return hexlify(concat(['0xe43252d7', __encodeData]));
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* encode claimOwnership
|
|
78
|
+
|
|
79
|
+
* @returns {string} encode data
|
|
80
|
+
*/
|
|
81
|
+
export function encodePermissionManagerClaimOwnership() {
|
|
82
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
83
|
+
return hexlify(concat(['0x4e71e0c8', __encodeData]));
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* encode initOwner
|
|
88
|
+
* @param {string} newOwner - address
|
|
89
|
+
* @returns {string} encode data
|
|
90
|
+
*/
|
|
91
|
+
export function encodePermissionManagerInitOwner(newOwner: string) {
|
|
92
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [newOwner]);
|
|
93
|
+
return hexlify(concat(['0x0d009297', __encodeData]));
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* encode openBlacklistMode
|
|
98
|
+
|
|
99
|
+
* @returns {string} encode data
|
|
100
|
+
*/
|
|
101
|
+
export function encodePermissionManagerOpenBlacklistMode() {
|
|
102
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
103
|
+
return hexlify(concat(['0xecbb003f', __encodeData]));
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* encode openWhitelistMode
|
|
108
|
+
|
|
109
|
+
* @returns {string} encode data
|
|
110
|
+
*/
|
|
111
|
+
export function encodePermissionManagerOpenWhitelistMode() {
|
|
112
|
+
const __encodeData = defaultAbiCoder.encode([], []);
|
|
113
|
+
return hexlify(concat(['0x71e52505', __encodeData]));
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* encode removeFromBlacklist
|
|
118
|
+
* @param {string} account - address
|
|
119
|
+
* @returns {string} encode data
|
|
120
|
+
*/
|
|
121
|
+
export function encodePermissionManagerRemoveFromBlacklist(account: string) {
|
|
122
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [account]);
|
|
123
|
+
return hexlify(concat(['0x537df3b6', __encodeData]));
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* encode removeFromWhitelist
|
|
128
|
+
* @param {string} account - address
|
|
129
|
+
* @returns {string} encode data
|
|
130
|
+
*/
|
|
131
|
+
export function encodePermissionManagerRemoveFromWhitelist(account: string) {
|
|
132
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [account]);
|
|
133
|
+
return hexlify(concat(['0x8ab1d681', __encodeData]));
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* encode transferOwnership
|
|
138
|
+
* @param {string} newOwner - address
|
|
139
|
+
* @returns {string} encode data
|
|
140
|
+
*/
|
|
141
|
+
export function encodePermissionManagerTransferOwnership(newOwner: string) {
|
|
142
|
+
const __encodeData = defaultAbiCoder.encode(["address"], [newOwner]);
|
|
143
|
+
return hexlify(concat(['0xf2fde38b', __encodeData]));
|
|
144
|
+
}
|