{"_id":"@bede-labs/swap-router-contracts","name":"@bede-labs/swap-router-contracts","dist-tags":{"latest":"1.3.0"},"versions":{"1.3.0":{"name":"@bede-labs/swap-router-contracts","description":"Smart contracts for swapping on Uniswap V2 and V3","license":"GPL-2.0-or-later","publishConfig":{"access":"public"},"version":"1.3.0","homepage":"https://uniswap.org","keywords":["uniswap","v2","v3"],"repository":{"type":"git","url":"git+https://github.com/bede-labs/swap-router-contracts.git"},"engines":{"node":">=10"},"dependencies":{"@openzeppelin/contracts":"3.4.2-solc-0.7","@uniswap/v2-core":"1.0.1","@uniswap/v3-core":"1.0.0","@uniswap/v3-periphery":"1.4.1","dotenv":"^14.2.0","hardhat-watcher":"^2.1.1"},"devDependencies":{"@nomiclabs/hardhat-ethers":"^2.0.2","@nomiclabs/hardhat-etherscan":"^2.1.8","@nomiclabs/hardhat-waffle":"^2.0.1","@typechain/ethers-v5":"^4.0.0","@types/chai":"^4.2.6","@types/mocha":"^5.2.7","chai":"^4.2.0","decimal.js":"^10.2.1","ethereum-waffle":"^3.0.2","ethers":"^5.0.8","hardhat":"^2.6.8","hardhat-typechain":"^0.3.5","is-svg":"^4.3.1","mocha":"^6.2.2","mocha-chai-jest-snapshot":"^1.1.0","prettier":"^2.0.5","prettier-plugin-solidity":"^1.0.0-beta.10","solhint":"^3.2.1","solhint-plugin-prettier":"^0.0.5","ts-generator":"^0.1.1","ts-node":"^8.5.4","typechain":"^4.0.0","typescript":"^3.7.3"},"scripts":{"compile":"hardhat compile","test":"hardhat test"},"bugs":{"url":"https://github.com/bede-labs/swap-router-contracts/issues"},"_id":"@bede-labs/swap-router-contracts@1.3.0","_nodeVersion":"18.17.1","_npmVersion":"9.6.7","dist":{"integrity":"sha512-e1WJ7E+WbLAdR9v68LBasHJmZjbig8ucSI7D6gaTlXb9VAq69iywYS6JenDS/PrZs95BheNZcHRugD9zDVul2g==","shasum":"2dc5814398b0d3372682e2b74f7efabf5798c3bd","tarball":"https://registry.npmjs.org/@bede-labs/swap-router-contracts/-/swap-router-contracts-1.3.0.tgz","fileCount":51,"unpackedSize":397500,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCXi5rzaEir7t024kom/kCw8tG2JDbBoOurnfr5X+ESVQIhAI/LaRt5ABDwgMDe6r0w36gj5VMBAMlkPdnzMxnCDCNk"}]},"_npmUser":{"name":"bede-labs","email":"btc.huuduy@gmail.com"},"directories":{},"maintainers":[{"name":"bede-labs","email":"btc.huuduy@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/swap-router-contracts_1.3.0_1740502843104_0.19545296866439732"},"_hasShrinkwrap":false}},"time":{"created":"2025-02-25T17:00:43.042Z","1.3.0":"2025-02-25T17:00:43.330Z","modified":"2025-02-25T17:00:43.571Z"},"maintainers":[{"name":"bede-labs","email":"btc.huuduy@gmail.com"}],"description":"Smart contracts for swapping on Uniswap V2 and V3","homepage":"https://uniswap.org","keywords":["uniswap","v2","v3"],"repository":{"type":"git","url":"git+https://github.com/bede-labs/swap-router-contracts.git"},"bugs":{"url":"https://github.com/bede-labs/swap-router-contracts/issues"},"license":"GPL-2.0-or-later","readme":"# Uniswap Swap Router\n\n[![Tests](https://github.com/Uniswap/swap-router-contracts/workflows/Tests/badge.svg)](https://github.com/Uniswap/swap-router-contracts/actions?query=workflow%3ATests)\n[![Lint](https://github.com/Uniswap/swap-router-contracts/workflows/Lint/badge.svg)](https://github.com/Uniswap/swap-router-contracts/actions?query=workflow%3ALint)\n\nThis repository contains smart contracts for swapping on the Uniswap V2 and V3 protocols.\n\n## Bug bounty\n\nThis repository is subject to the Uniswap V3 bug bounty program,\nper the terms defined [here](./bug-bounty.md).\n\n## Local deployment\n\nIn order to deploy this code to a local testnet, you should install the npm package\n`@uniswap/swap-router-contracts`\nand import bytecode imported from artifacts located at\n`@uniswap/swap-router-contracts/artifacts/contracts/*/*.json`.\nFor example:\n\n```typescript\nimport {\n  abi as SWAP_ROUTER_ABI,\n  bytecode as SWAP_ROUTER_BYTECODE,\n} from '@uniswap/swap-router-contracts/artifacts/contracts/SwapRouter02.sol/SwapRouter02.json'\n\n// deploy the bytecode\n```\n\nThis will ensure that you are testing against the same bytecode that is deployed to\nmainnet and public testnets, and all Uniswap code will correctly interoperate with\nyour local deployment.\n\n## Using solidity interfaces\n\nThe swap router contract interfaces are available for import into solidity smart contracts\nvia the npm artifact `@uniswap/swap-router-contracts`, e.g.:\n\n```solidity\nimport '@uniswap/swap-router-contracts/contracts/interfaces/ISwapRouter02.sol';\n\ncontract MyContract {\n  ISwapRouter02 router;\n\n  function doSomethingWithSwapRouter() {\n    // router.exactInput(...);\n  }\n}\n\n```\n\n## Tests\n\nSome tests use Hardhat mainnet forking and therefore require an archive node.\nEither create a `.env` file in the workspace root containing:\n\n```\nARCHIVE_RPC_URL='...'\n```\n\nOr set the variable when running tests:\n\n```\nexport ARCHIVE_RPC_URL='...' && npm run test\n```\n","readmeFilename":"README.md"}