@airdao/astra-cl-periphery
Version:
🎚 Peripheral smart contracts for interacting with AstraDEX Concentrated Liquidity version
395 lines (394 loc) • 20.4 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "LiquidityAmountsTest",
"sourceName": "contracts/test/LiquidityAmountsTest.sol",
"abi": [
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint128",
"name": "liquidity",
"type": "uint128"
}
],
"name": "getAmount0ForLiquidity",
"outputs": [
{
"internalType": "uint256",
"name": "amount0",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint128",
"name": "liquidity",
"type": "uint128"
}
],
"name": "getAmount1ForLiquidity",
"outputs": [
{
"internalType": "uint256",
"name": "amount1",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint128",
"name": "liquidity",
"type": "uint128"
}
],
"name": "getAmountsForLiquidity",
"outputs": [
{
"internalType": "uint256",
"name": "amount0",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "amount1",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint128",
"name": "liquidity",
"type": "uint128"
}
],
"name": "getGasCostOfGetAmount0ForLiquidity",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint128",
"name": "liquidity",
"type": "uint128"
}
],
"name": "getGasCostOfGetAmount1ForLiquidity",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint128",
"name": "liquidity",
"type": "uint128"
}
],
"name": "getGasCostOfGetAmountsForLiquidity",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint256",
"name": "amount0",
"type": "uint256"
}
],
"name": "getGasCostOfGetLiquidityForAmount0",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint256",
"name": "amount1",
"type": "uint256"
}
],
"name": "getGasCostOfGetLiquidityForAmount1",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint256",
"name": "amount0",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "amount1",
"type": "uint256"
}
],
"name": "getGasCostOfGetLiquidityForAmounts",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint256",
"name": "amount0",
"type": "uint256"
}
],
"name": "getLiquidityForAmount0",
"outputs": [
{
"internalType": "uint128",
"name": "liquidity",
"type": "uint128"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint256",
"name": "amount1",
"type": "uint256"
}
],
"name": "getLiquidityForAmount1",
"outputs": [
{
"internalType": "uint128",
"name": "liquidity",
"type": "uint128"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint160",
"name": "sqrtRatioX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioAX96",
"type": "uint160"
},
{
"internalType": "uint160",
"name": "sqrtRatioBX96",
"type": "uint160"
},
{
"internalType": "uint256",
"name": "amount0",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "amount1",
"type": "uint256"
}
],
"name": "getLiquidityForAmounts",
"outputs": [
{
"internalType": "uint128",
"name": "liquidity",
"type": "uint128"
}
],
"stateMutability": "pure",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b50610b44806100206000396000f3fe608060405234801561001057600080fd5b50600436106100d45760003560e01c8063bf1d2c7111610081578063d22462091161005b578063d2246209146103f5578063e26274bd14610438578063f721210314610494576100d4565b8063bf1d2c71146102e7578063c72e160b1461033d578063cb1b9496146103b2576100d4565b80636098fd4a116100b25780636098fd4a146101ff57806367df6e891461024e5780636ac69a8e14610291576100d4565b806308c0f795146100d9578063290984621461014157806329e24cb7146101a9575b600080fd5b61011c600480360360608110156100ef57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135811691602081013590911690604001356104e3565b604080516fffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6101976004803603606081101561015757600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013590911690604001356fffffffffffffffffffffffffffffffff166104fa565b60408051918252519081900360200190f35b610197600480360360608110156101bf57600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013590911690604001356fffffffffffffffffffffffffffffffff16610517565b61011c600480360360a081101561021557600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101358216916040820135169060608101359060800135610524565b61011c6004803603606081101561026457600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020810135909116906040013561053f565b610197600480360360608110156102a757600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013590911690604001356fffffffffffffffffffffffffffffffff1661054c565b610197600480360360608110156102fd57600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013590911690604001356fffffffffffffffffffffffffffffffff16610559565b6103996004803603608081101561035357600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013582169160408201351690606001356fffffffffffffffffffffffffffffffff1661057c565b6040805192835260208301919091528051918290030190f35b610197600480360360608110156103c857600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060400135610599565b6101976004803603606081101561040b57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135811691602081013590911690604001356105aa565b6101976004803603608081101561044e57600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013582169160408201351690606001356fffffffffffffffffffffffffffffffff166105bb565b610197600480360360a08110156104aa57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135811691602081013582169160408201351690606081013590608001356105db565b60006104f08484846105fc565b90505b9392505050565b6000805a905061050b85858561066e565b505a9003949350505050565b60006104f0848484610721565b6000610533868686868661079d565b90505b95945050505050565b60006104f08484846108b5565b60006104f084848461066e565b6000805a905061050b8585856fffffffffffffffffffffffffffffffff166105fc565b60008061058b8686868661095d565b915091505b94509492505050565b6000805a905061050b8585856105fc565b6000805a905061050b8585856108b5565b6000805a90506105cd8686868661095d565b50505a900395945050505050565b6000805a90506105ee878787878761079d565b505a90039695505050505050565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161115610636579192915b6104f0610669836c0100000000000000000000000087870373ffffffffffffffffffffffffffffffffffffffff16610a46565b610b13565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1611156106a8579192915b8373ffffffffffffffffffffffffffffffffffffffff16610711606060ff16846fffffffffffffffffffffffffffffffff16901b86860373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16610a46565b8161071857fe5b04949350505050565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16111561075b579192915b6104f0826fffffffffffffffffffffffffffffffff1685850373ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000610a46565b60008373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1611156107d7579293925b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161161081c576108158585856108b5565b9050610536565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1610156108aa57600061085d8786866108b5565b9050600061086c8789866105fc565b9050806fffffffffffffffffffffffffffffffff16826fffffffffffffffffffffffffffffffff161061089f57806108a1565b815b92505050610536565b6105338585846105fc565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1611156108ef579192915b60006109358573ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000610a46565b9050610536610669848388880373ffffffffffffffffffffffffffffffffffffffff16610a46565b6000808373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161115610998579293925b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16116109dd576109d685858561066e565b9150610590565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161015610a3057610a1c86858561066e565b9150610a29858785610721565b9050610590565b610a3b858585610721565b905094509492505050565b600080807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85870986860292508281109083900303905080610a9a5760008411610a8f57600080fd5b5082900490506104f3565b808411610aa657600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b806fffffffffffffffffffffffffffffffff81168114610b3257600080fd5b91905056fea164736f6c6343000706000a",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100d45760003560e01c8063bf1d2c7111610081578063d22462091161005b578063d2246209146103f5578063e26274bd14610438578063f721210314610494576100d4565b8063bf1d2c71146102e7578063c72e160b1461033d578063cb1b9496146103b2576100d4565b80636098fd4a116100b25780636098fd4a146101ff57806367df6e891461024e5780636ac69a8e14610291576100d4565b806308c0f795146100d9578063290984621461014157806329e24cb7146101a9575b600080fd5b61011c600480360360608110156100ef57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135811691602081013590911690604001356104e3565b604080516fffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6101976004803603606081101561015757600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013590911690604001356fffffffffffffffffffffffffffffffff166104fa565b60408051918252519081900360200190f35b610197600480360360608110156101bf57600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013590911690604001356fffffffffffffffffffffffffffffffff16610517565b61011c600480360360a081101561021557600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101358216916040820135169060608101359060800135610524565b61011c6004803603606081101561026457600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020810135909116906040013561053f565b610197600480360360608110156102a757600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013590911690604001356fffffffffffffffffffffffffffffffff1661054c565b610197600480360360608110156102fd57600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013590911690604001356fffffffffffffffffffffffffffffffff16610559565b6103996004803603608081101561035357600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013582169160408201351690606001356fffffffffffffffffffffffffffffffff1661057c565b6040805192835260208301919091528051918290030190f35b610197600480360360608110156103c857600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060400135610599565b6101976004803603606081101561040b57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135811691602081013590911690604001356105aa565b6101976004803603608081101561044e57600080fd5b50803573ffffffffffffffffffffffffffffffffffffffff90811691602081013582169160408201351690606001356fffffffffffffffffffffffffffffffff166105bb565b610197600480360360a08110156104aa57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135811691602081013582169160408201351690606081013590608001356105db565b60006104f08484846105fc565b90505b9392505050565b6000805a905061050b85858561066e565b505a9003949350505050565b60006104f0848484610721565b6000610533868686868661079d565b90505b95945050505050565b60006104f08484846108b5565b60006104f084848461066e565b6000805a905061050b8585856fffffffffffffffffffffffffffffffff166105fc565b60008061058b8686868661095d565b915091505b94509492505050565b6000805a905061050b8585856105fc565b6000805a905061050b8585856108b5565b6000805a90506105cd8686868661095d565b50505a900395945050505050565b6000805a90506105ee878787878761079d565b505a90039695505050505050565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161115610636579192915b6104f0610669836c0100000000000000000000000087870373ffffffffffffffffffffffffffffffffffffffff16610a46565b610b13565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1611156106a8579192915b8373ffffffffffffffffffffffffffffffffffffffff16610711606060ff16846fffffffffffffffffffffffffffffffff16901b86860373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16610a46565b8161071857fe5b04949350505050565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16111561075b579192915b6104f0826fffffffffffffffffffffffffffffffff1685850373ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000610a46565b60008373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1611156107d7579293925b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161161081c576108158585856108b5565b9050610536565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1610156108aa57600061085d8786866108b5565b9050600061086c8789866105fc565b9050806fffffffffffffffffffffffffffffffff16826fffffffffffffffffffffffffffffffff161061089f57806108a1565b815b92505050610536565b6105338585846105fc565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1611156108ef579192915b60006109358573ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000610a46565b9050610536610669848388880373ffffffffffffffffffffffffffffffffffffffff16610a46565b6000808373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161115610998579293925b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16116109dd576109d685858561066e565b9150610590565b8373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161015610a3057610a1c86858561066e565b9150610a29858785610721565b9050610590565b610a3b858585610721565b905094509492505050565b600080807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85870986860292508281109083900303905080610a9a5760008411610a8f57600080fd5b5082900490506104f3565b808411610aa657600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b806fffffffffffffffffffffffffffffffff81168114610b3257600080fd5b91905056fea164736f6c6343000706000a",
"linkReferences": {},
"deployedLinkReferences": {}
}