├── .env.example ├── .gitattributes ├── .gitignore ├── .mocharc.json ├── .openzeppelin └── unknown-56.json ├── .prettierrc ├── .waffle.json ├── .yarnrc ├── LICENSE ├── README.md ├── contracts ├── ApeRouter.sol ├── Migrations.sol ├── Mock │ └── ERC20Mock.sol ├── examples │ ├── ExampleOracleSimple.sol │ ├── ExampleSlidingWindowOracle.sol │ ├── ExampleSwapToPrice.sol │ └── README.md ├── interfaces │ ├── IApeFactory.sol │ ├── IApeMigrator.sol │ ├── IApePair.sol │ ├── IApeRouter01.sol │ ├── IApeRouter02.sol │ ├── IERC20.sol │ └── IWETH.sol ├── libraries │ ├── ApeLibrary.sol │ ├── ApeOracleLibrary.sol │ └── SafeMath.sol ├── test │ ├── DeflatingERC20.sol │ ├── ERC20.sol │ ├── RouterEventEmitter.sol │ └── WETH9.sol ├── utils │ ├── ApeOnlyPriceGetterArbitrum.sol │ ├── ApeOnlyPriceGetterBSC.sol │ ├── IPriceGetter.sol │ ├── Multicall2.sol │ ├── Sweeper.sol │ ├── SweeperNFTsUpgradeable.sol │ └── SweeperUpgradeable.sol └── wraps │ └── WMATIC.sol ├── init_code_hashes.md ├── migration-config.js ├── migrations ├── 1_initial_migration.js └── 2_deploy_ape_router.js ├── migrations_ ├── 2_deploy_multicall.js └── 2_deploy_price_getter.js ├── package.json ├── scripts ├── queryLPTokens.ts └── utils │ ├── files.ts │ └── multicall.ts ├── test-environment.config.js ├── test ├── ExampleOracleSimple.spec.ts ├── ExampleSlidingWindowOracle.spec.ts ├── ExampleSwapToPrice.spec.ts ├── LPFeeManager.spec.js ├── UniswapV2Router02.spec.ts └── shared │ ├── fixtures.ts │ └── utilities.ts ├── truffle-config.js ├── tsconfig.json └── yarn.lock /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/.env.example -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.sol linguist-language=Solidity -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | build/ 2 | node_modules/ 3 | .env 4 | .vscode/ 5 | -------------------------------------------------------------------------------- /.mocharc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/.mocharc.json -------------------------------------------------------------------------------- /.openzeppelin/unknown-56.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/.openzeppelin/unknown-56.json -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/.prettierrc -------------------------------------------------------------------------------- /.waffle.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/.waffle.json -------------------------------------------------------------------------------- /.yarnrc: -------------------------------------------------------------------------------- 1 | ignore-scripts true 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/README.md -------------------------------------------------------------------------------- /contracts/ApeRouter.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/ApeRouter.sol -------------------------------------------------------------------------------- /contracts/Migrations.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/Migrations.sol -------------------------------------------------------------------------------- /contracts/Mock/ERC20Mock.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/Mock/ERC20Mock.sol -------------------------------------------------------------------------------- /contracts/examples/ExampleOracleSimple.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/examples/ExampleOracleSimple.sol -------------------------------------------------------------------------------- /contracts/examples/ExampleSlidingWindowOracle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/examples/ExampleSlidingWindowOracle.sol -------------------------------------------------------------------------------- /contracts/examples/ExampleSwapToPrice.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/examples/ExampleSwapToPrice.sol -------------------------------------------------------------------------------- /contracts/examples/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/examples/README.md -------------------------------------------------------------------------------- /contracts/interfaces/IApeFactory.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/interfaces/IApeFactory.sol -------------------------------------------------------------------------------- /contracts/interfaces/IApeMigrator.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/interfaces/IApeMigrator.sol -------------------------------------------------------------------------------- /contracts/interfaces/IApePair.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/interfaces/IApePair.sol -------------------------------------------------------------------------------- /contracts/interfaces/IApeRouter01.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/interfaces/IApeRouter01.sol -------------------------------------------------------------------------------- /contracts/interfaces/IApeRouter02.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/interfaces/IApeRouter02.sol -------------------------------------------------------------------------------- /contracts/interfaces/IERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/interfaces/IERC20.sol -------------------------------------------------------------------------------- /contracts/interfaces/IWETH.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/interfaces/IWETH.sol -------------------------------------------------------------------------------- /contracts/libraries/ApeLibrary.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/libraries/ApeLibrary.sol -------------------------------------------------------------------------------- /contracts/libraries/ApeOracleLibrary.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/libraries/ApeOracleLibrary.sol -------------------------------------------------------------------------------- /contracts/libraries/SafeMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/libraries/SafeMath.sol -------------------------------------------------------------------------------- /contracts/test/DeflatingERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/test/DeflatingERC20.sol -------------------------------------------------------------------------------- /contracts/test/ERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/test/ERC20.sol -------------------------------------------------------------------------------- /contracts/test/RouterEventEmitter.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/test/RouterEventEmitter.sol -------------------------------------------------------------------------------- /contracts/test/WETH9.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/test/WETH9.sol -------------------------------------------------------------------------------- /contracts/utils/ApeOnlyPriceGetterArbitrum.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/utils/ApeOnlyPriceGetterArbitrum.sol -------------------------------------------------------------------------------- /contracts/utils/ApeOnlyPriceGetterBSC.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/utils/ApeOnlyPriceGetterBSC.sol -------------------------------------------------------------------------------- /contracts/utils/IPriceGetter.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/utils/IPriceGetter.sol -------------------------------------------------------------------------------- /contracts/utils/Multicall2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/utils/Multicall2.sol -------------------------------------------------------------------------------- /contracts/utils/Sweeper.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/utils/Sweeper.sol -------------------------------------------------------------------------------- /contracts/utils/SweeperNFTsUpgradeable.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/utils/SweeperNFTsUpgradeable.sol -------------------------------------------------------------------------------- /contracts/utils/SweeperUpgradeable.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/utils/SweeperUpgradeable.sol -------------------------------------------------------------------------------- /contracts/wraps/WMATIC.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/contracts/wraps/WMATIC.sol -------------------------------------------------------------------------------- /init_code_hashes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/init_code_hashes.md -------------------------------------------------------------------------------- /migration-config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/migration-config.js -------------------------------------------------------------------------------- /migrations/1_initial_migration.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/migrations/1_initial_migration.js -------------------------------------------------------------------------------- /migrations/2_deploy_ape_router.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/migrations/2_deploy_ape_router.js -------------------------------------------------------------------------------- /migrations_/2_deploy_multicall.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/migrations_/2_deploy_multicall.js -------------------------------------------------------------------------------- /migrations_/2_deploy_price_getter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/migrations_/2_deploy_price_getter.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/package.json -------------------------------------------------------------------------------- /scripts/queryLPTokens.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/scripts/queryLPTokens.ts -------------------------------------------------------------------------------- /scripts/utils/files.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/scripts/utils/files.ts -------------------------------------------------------------------------------- /scripts/utils/multicall.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/scripts/utils/multicall.ts -------------------------------------------------------------------------------- /test-environment.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/test-environment.config.js -------------------------------------------------------------------------------- /test/ExampleOracleSimple.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/test/ExampleOracleSimple.spec.ts -------------------------------------------------------------------------------- /test/ExampleSlidingWindowOracle.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/test/ExampleSlidingWindowOracle.spec.ts -------------------------------------------------------------------------------- /test/ExampleSwapToPrice.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/test/ExampleSwapToPrice.spec.ts -------------------------------------------------------------------------------- /test/LPFeeManager.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/test/LPFeeManager.spec.js -------------------------------------------------------------------------------- /test/UniswapV2Router02.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/test/UniswapV2Router02.spec.ts -------------------------------------------------------------------------------- /test/shared/fixtures.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/test/shared/fixtures.ts -------------------------------------------------------------------------------- /test/shared/utilities.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/test/shared/utilities.ts -------------------------------------------------------------------------------- /truffle-config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/truffle-config.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ApeSwapFinance/apeswap-swap-periphery/HEAD/yarn.lock --------------------------------------------------------------------------------