mirror of
https://github.com/Instadapp/dsa-connectors.git
synced 2024-07-29 22:37:00 +00:00
fix small issues
This commit is contained in:
parent
08d24f1ef5
commit
ab29b12a4e
|
@ -15,9 +15,9 @@ abstract contract Helpers is DSMath, Basic {
|
||||||
/**
|
/**
|
||||||
* @dev uniswap v3 NFT Position Manager & Swap Router
|
* @dev uniswap v3 NFT Position Manager & Swap Router
|
||||||
*/
|
*/
|
||||||
INonfungiblePositionManager nftManager =
|
INonfungiblePositionManager constant nftManager =
|
||||||
INonfungiblePositionManager(0xC36442b4a4522E871399CD717aBDD847Ab11FE88);
|
INonfungiblePositionManager(0xC36442b4a4522E871399CD717aBDD847Ab11FE88);
|
||||||
ISwapRouter swapRouter =
|
ISwapRouter constant swapRouter =
|
||||||
ISwapRouter(0xE592427A0AEce92De3Edee1F18E0157C05861564);
|
ISwapRouter(0xE592427A0AEce92De3Edee1F18E0157C05861564);
|
||||||
|
|
||||||
struct MintParams {
|
struct MintParams {
|
||||||
|
@ -88,7 +88,9 @@ abstract contract Helpers is DSMath, Basic {
|
||||||
function _addLiquidity(
|
function _addLiquidity(
|
||||||
uint256 _tokenId,
|
uint256 _tokenId,
|
||||||
uint256 _amount0Desired,
|
uint256 _amount0Desired,
|
||||||
uint256 _amount1Desired
|
uint256 _amount1Desired,
|
||||||
|
uint256 _amount0Min,
|
||||||
|
uint256 _amount1Min,
|
||||||
)
|
)
|
||||||
internal
|
internal
|
||||||
returns (
|
returns (
|
||||||
|
@ -102,8 +104,8 @@ abstract contract Helpers is DSMath, Basic {
|
||||||
_tokenId,
|
_tokenId,
|
||||||
_amount0Desired,
|
_amount0Desired,
|
||||||
_amount1Desired,
|
_amount1Desired,
|
||||||
0,
|
_amount0Min,
|
||||||
0,
|
_amount1Min,
|
||||||
block.timestamp
|
block.timestamp
|
||||||
);
|
);
|
||||||
(liquidity, amount0, amount1) = nftManager.increaseLiquidity(params);
|
(liquidity, amount0, amount1) = nftManager.increaseLiquidity(params);
|
||||||
|
@ -114,14 +116,16 @@ abstract contract Helpers is DSMath, Basic {
|
||||||
*/
|
*/
|
||||||
function _decreaseLiquidity(
|
function _decreaseLiquidity(
|
||||||
uint256 _tokenId,
|
uint256 _tokenId,
|
||||||
uint128 _liquidity
|
uint128 _liquidity,
|
||||||
|
uint256 _amount0Min,
|
||||||
|
uint256 _amount1Min,
|
||||||
) internal returns (uint256 amount0, uint256 amount1) {
|
) internal returns (uint256 amount0, uint256 amount1) {
|
||||||
INonfungiblePositionManager.DecreaseLiquidityParams
|
INonfungiblePositionManager.DecreaseLiquidityParams
|
||||||
memory params = INonfungiblePositionManager.DecreaseLiquidityParams(
|
memory params = INonfungiblePositionManager.DecreaseLiquidityParams(
|
||||||
_tokenId,
|
_tokenId,
|
||||||
_liquidity,
|
_liquidity,
|
||||||
0,
|
_amount0Min,
|
||||||
0,
|
_amount0Min,
|
||||||
block.timestamp
|
block.timestamp
|
||||||
);
|
);
|
||||||
(amount0, amount1) = nftManager.decreaseLiquidity(params);
|
(amount0, amount1) = nftManager.decreaseLiquidity(params);
|
||||||
|
|
|
@ -45,6 +45,8 @@ abstract contract UniswapResolver is Helpers, Events {
|
||||||
* @param tokenId: NFT LP Token ID.
|
* @param tokenId: NFT LP Token ID.
|
||||||
* @param amountA: tokenA amounts.
|
* @param amountA: tokenA amounts.
|
||||||
* @param amountB: tokenB amounts.
|
* @param amountB: tokenB amounts.
|
||||||
|
* @param amountAMin: Min amount of tokenA.
|
||||||
|
* @param amountBMin: Min amount of tokenB.
|
||||||
* @param getIds: IDs to retrieve token amounts
|
* @param getIds: IDs to retrieve token amounts
|
||||||
* @param setId: stores the amount of LP token
|
* @param setId: stores the amount of LP token
|
||||||
*/
|
*/
|
||||||
|
@ -52,6 +54,8 @@ abstract contract UniswapResolver is Helpers, Events {
|
||||||
uint256 tokenId,
|
uint256 tokenId,
|
||||||
uint256 amountA,
|
uint256 amountA,
|
||||||
uint256 amountB,
|
uint256 amountB,
|
||||||
|
uint256 amountAMin,
|
||||||
|
uint256 amountBMin,
|
||||||
uint256[] calldata getIds,
|
uint256[] calldata getIds,
|
||||||
uint256 setId
|
uint256 setId
|
||||||
)
|
)
|
||||||
|
@ -65,7 +69,9 @@ abstract contract UniswapResolver is Helpers, Events {
|
||||||
(uint256 _liquidity, uint256 _amtA, uint256 _amtB) = _addLiquidity(
|
(uint256 _liquidity, uint256 _amtA, uint256 _amtB) = _addLiquidity(
|
||||||
tokenId,
|
tokenId,
|
||||||
amtA,
|
amtA,
|
||||||
amtB
|
amtB,
|
||||||
|
amountAMin,
|
||||||
|
amountBMin
|
||||||
);
|
);
|
||||||
setUint(setId, _liquidity);
|
setUint(setId, _liquidity);
|
||||||
|
|
||||||
|
@ -77,12 +83,16 @@ abstract contract UniswapResolver is Helpers, Events {
|
||||||
* @dev Decrease Liquidity
|
* @dev Decrease Liquidity
|
||||||
* @param tokenId: NFT LP Token ID.
|
* @param tokenId: NFT LP Token ID.
|
||||||
* @param liquidity: LP Token amount.
|
* @param liquidity: LP Token amount.
|
||||||
|
* @param amountAMin: Min amount of tokenA.
|
||||||
|
* @param amountBMin: Min amount of tokenB.
|
||||||
* @param getId: ID to retrieve LP token amounts
|
* @param getId: ID to retrieve LP token amounts
|
||||||
* @param setIds: stores the amount of output tokens
|
* @param setIds: stores the amount of output tokens
|
||||||
*/
|
*/
|
||||||
function decreateLiquidity(
|
function decreateLiquidity(
|
||||||
uint256 tokenId,
|
uint256 tokenId,
|
||||||
uint128 liquidity,
|
uint128 liquidity,
|
||||||
|
uint256 amountAMin,
|
||||||
|
uint256 amountBMin,
|
||||||
uint256 getId,
|
uint256 getId,
|
||||||
uint256[] calldata setIds
|
uint256[] calldata setIds
|
||||||
)
|
)
|
||||||
|
@ -94,7 +104,9 @@ abstract contract UniswapResolver is Helpers, Events {
|
||||||
|
|
||||||
(uint256 _amtA, uint256 _amtB) = _decreaseLiquidity(
|
(uint256 _amtA, uint256 _amtB) = _decreaseLiquidity(
|
||||||
tokenId,
|
tokenId,
|
||||||
_liquidity
|
_liquidity,
|
||||||
|
amountAMin,
|
||||||
|
amountBMin
|
||||||
);
|
);
|
||||||
|
|
||||||
setUint(setIds[0], _amtA);
|
setUint(setIds[0], _amtA);
|
||||||
|
@ -138,6 +150,39 @@ abstract contract UniswapResolver is Helpers, Events {
|
||||||
_eventName = "swap(address,address,uint256,uint256)";
|
_eventName = "swap(address,address,uint256,uint256)";
|
||||||
_eventParam = abi.encode(tokenIn, tokenOut, _amountIn, amountOut);
|
_eventParam = abi.encode(tokenIn, tokenOut, _amountIn, amountOut);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @dev Collect function
|
||||||
|
* @param tokenId: NFT LP Token ID.
|
||||||
|
* @param amount0Max: Max amount of token0.
|
||||||
|
* @param amount1Max: Max amount of token1.
|
||||||
|
* @param getIds: IDs to retrieve amounts
|
||||||
|
* @param setIds: stores the amount of output tokens
|
||||||
|
*/
|
||||||
|
function collect(
|
||||||
|
uint256 tokenId,
|
||||||
|
uint128 amount0Max,
|
||||||
|
uint128 amount1Max,
|
||||||
|
uint256[] calldata getIds,
|
||||||
|
uint256[] calldata setIds
|
||||||
|
)
|
||||||
|
external
|
||||||
|
payable
|
||||||
|
returns (string memory _eventName, bytes memory _eventParam)
|
||||||
|
{
|
||||||
|
uint128 _amount0Max = getUint(getIds[0], amount0Max);
|
||||||
|
uint128 _amount1Max = getUint(getIds[1], amount1Max);
|
||||||
|
(uint256 amount0, uint256 amount1) = _collect(
|
||||||
|
tokenId,
|
||||||
|
_amount0Max,
|
||||||
|
_amount1Max
|
||||||
|
);
|
||||||
|
|
||||||
|
setUint(setIds[0], amount0);
|
||||||
|
setUint(setIds[1], amount1);
|
||||||
|
_eventName = "collect(uint256,uint256,uint256)";
|
||||||
|
_eventParam = abi.encode(tokenId, amount0, amount1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
contract ConnectV2UniswapV3 is UniswapResolver {
|
contract ConnectV2UniswapV3 is UniswapResolver {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user