UNPKG

@airdao/astra-cl-periphery

Version:

🎚 Peripheral smart contracts for interacting with AstraDEX Concentrated Liquidity version

395 lines (394 loc) • 20.4 kB
{ "_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": {} }