Deployed contracts
Stake 1INCH (relevant only for UP optional strategy)
| Repository |
limit-order-settlement |
| Contract |
st1inch.sol |
| Contract address |
0x9A0C8Ff858d273f57072D714bca7411D717501D7 |
| Methods |
Staking |
- deposit(uint256 amount, uint256 duration)
- depositWithPermit(uint256 amount, uint256 duration, bytes calldata permit)
- depositFor(address account, uint256 amount, uint256 duration)
- depositForWithPermit(address account, uint256 amount, uint256 duration, bytes calldata permit) |
| Description | Stakes 1inch to get staking power according to the lock time |
JavaScript
await st1inch.deposit(ether("100"), time.duration.days("1"));
Register delegation pod (relevant only for UP optional strategy)
| Repository |
limit-order-settlement |
| Contract |
PowerPod.sol |
| Contract address |
0xAccfAc2339e16DC80c50d2fa81b5c2B049B4f947 |
| Methods |
addPod(address pod) |
| Description |
Register pod usage for the tx sender. Needed for: |
- Resolvers to enable resolver’s and delegated staking power usage for whitelisting
- Stakers to enable unicorn power delegation |
JavaScript
await st1inch.connect(resolver).addPod(delegation.address);
Register delegation share token (relevant only for UP optional strategy)
| Repository |
limit-order-settlement |
| Contract |
PowerPod.sol |
| Contract address |
0xAccfAc2339e16DC80c50d2fa81b5c2B049B4f947 |
| Methods |
register(string memory name, string memory symbol, uint256 maxUserFarms) |
| Description |
Creates a resolvers share token to count delegated staked power shares and accrue rewards |
JavaScript
await delegation.register("resolver token share", "RTS");
Delegate resolver’s staking power to self (relevant only for UP optional strategy)
| Repository |
limit-order-settlement |
| Contract |
PowerPod.sol |
| Contract address |
0xAccfAc2339e16DC80c50d2fa81b5c2B049B4f947 |
| Methods |
delegate(address delegatee) |
| Description |
delegate(address delegatee) |
JavaScript
await delegation.connect(resolver).delegate(resolver.address);
Whitelist resolver
| Repository |
limit-order-settlement |
| Contract |
WhitelistRegistry.sol |
| Contract address |
0xF55684BC536487394B423e70567413faB8e45E26 |
| Methods |
register() |
| Description |
Checks if sender is eligible to be whitelisted and put it into the whitelist sorted by staking power descending |
JavaScript
await whitelist.connect(resolver).register();
FeeBank
| Repository |
limit-order-settlement |
| Contract |
FeeBank.sol |
| Contract address |
0xa0844e046a5B7Db55Bb8DcdFfbF0bBF9c6dc6546 |
| Methods |
|
| - deposit(uint256 amount) |
|
- depositFor(address account, uint256 amount)
- depositWithPermit(uint256 amount, bytes calldata permit)
- depositForWithPermit |
| Description | Deposits 1INCH for fee deduction when filling orders |
JavaScript
await feeBank.connect(resolver).deposit(amount);
Resolving
Solidity
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
struct Order {
uint256 salt;
address makerAsset;
address takerAsset;
address maker;
address receiver;
address allowedSender;
uint256 makingAmount;
uint256 takingAmount;
uint256 offsets;
bytes interactions;
}
| Repository |
limit-order-settlement |
| Contract |
Settlement.sol |
| Contract address |
0xA88800CD213dA5Ae406ce248380802BD53b47647 |
| Methods |
.settleOrders(bytes calldata data) |
| Description |
Settles an order |