{"_id":"@cytoswap/swap-router-contracts","_rev":"3-5235c7e545acd57ce3ac84ed195b1abc","name":"@cytoswap/swap-router-contracts","dist-tags":{"latest":"1.0.5"},"versions":{"1.0.2":{"name":"@cytoswap/swap-router-contracts","version":"1.0.2","keywords":["cytoswap","v3"],"license":"GPL-2.0-or-later","_id":"@cytoswap/swap-router-contracts@1.0.2","maintainers":[{"name":"snap.devs","email":"devs@snapresearch.io"}],"homepage":"https://cytoswap.com","dist":{"shasum":"b35d60685a589cf4d23453d2f7ef2e3434656c26","tarball":"https://registry.npmjs.org/@cytoswap/swap-router-contracts/-/swap-router-contracts-1.0.2.tgz","fileCount":51,"integrity":"sha512-FCtzP7mhQNGhZsJKazClQ8a71RiKXCPxbwrSaQLO2gSXu+mAClSw7WlUYJLG/FmU14gbcs9ZeMu+sD+UAhS6Aw==","signatures":[{"sig":"MEYCIQDslNEow1EJ1eqlNXzcHmfA2HjeQ6Q/xHxfEd5MoWPH9wIhAJ223xesWF6xRfqgvbzNyZ6iTIPFre1nPu+horOd/FUi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":398889},"engines":{"node":">=10"},"gitHead":"ad0835cdb20544e68be6bdbc193d79d89a62da62","scripts":{"test":"hardhat test","compile":"hardhat compile"},"_npmUser":{"name":"snap.devs","email":"devs@snapresearch.io"},"repository":{"url":"https://gitlab.snapresearch.io/swapnity/swap-router-contracts","type":"git"},"_npmVersion":"9.6.7","description":"Smart contracts for swapping on Cytoswap V3","directories":{},"_nodeVersion":"20.11.1","dependencies":{"dotenv":"^14.2.0","hardhat-watcher":"^2.1.1","@uniswap/v2-core":"^1.0.1","@cytoswap/v3-core":"^1.0.2","@cytoswap/v3-periphery":"^1.4.8","@openzeppelin/contracts":"3.4.2-solc-0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.2.0","mocha":"^6.2.2","ethers":"^5.0.8","is-svg":"^4.3.1","hardhat":"^2.6.8","solhint":"^3.2.1","ts-node":"^8.5.4","prettier":"^2.0.5","typechain":"^4.0.0","decimal.js":"^10.2.1","typescript":"^3.7.3","@types/chai":"^4.2.6","@types/mocha":"^5.2.7","ts-generator":"^0.1.1","ethereum-waffle":"^3.0.2","hardhat-typechain":"^0.3.5","@typechain/ethers-v5":"^4.0.0","solhint-plugin-prettier":"^0.0.5","mocha-chai-jest-snapshot":"^1.1.0","prettier-plugin-solidity":"^1.0.0-beta.10","@nomiclabs/hardhat-ethers":"^2.0.2","@nomiclabs/hardhat-waffle":"^2.0.1","@nomiclabs/hardhat-etherscan":"^2.1.8"},"_npmOperationalInternal":{"tmp":"tmp/swap-router-contracts_1.0.2_1708601014388_0.12877797071121044","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@cytoswap/swap-router-contracts","version":"1.0.3","keywords":["cytoswap","v3"],"license":"GPL-2.0-or-later","_id":"@cytoswap/swap-router-contracts@1.0.3","maintainers":[{"name":"snap.devs","email":"devs@snapresearch.io"}],"homepage":"https://cytoswap.com","dist":{"shasum":"3915ac2fc69b902e3f50eeb300545bb2fab1f0b8","tarball":"https://registry.npmjs.org/@cytoswap/swap-router-contracts/-/swap-router-contracts-1.0.3.tgz","fileCount":51,"integrity":"sha512-/vHk+Z3TG5RKC1R5aFd9JlNSGW6tB2qthL05jaS76sWuSaQXPTRytCIIXdPVUjWgGkVvbBh9CAalbjx0WLxfHg==","signatures":[{"sig":"MEQCIGqLy0rLO0E0e3OBuFirfoxPhC/X/nuhFkjE//q66+pGAiAGBB60HWmxtOq46T/9Uc2G8Dv9cXzhqaIw/L9llqeX8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":398889},"engines":{"node":">=10"},"gitHead":"7dfd9813d914201924256b02fddfdf8230939ca5","scripts":{"test":"hardhat test","compile":"hardhat compile"},"_npmUser":{"name":"snap.devs","email":"devs@snapresearch.io"},"repository":{"url":"https://gitlab.snapresearch.io/swapnity/swap-router-contracts","type":"git"},"_npmVersion":"9.6.7","description":"Smart contracts for swapping on Cytoswap V3","directories":{},"_nodeVersion":"20.11.1","dependencies":{"dotenv":"^14.2.0","hardhat-watcher":"^2.1.1","@uniswap/v2-core":"^1.0.1","@cytoswap/v3-core":"^1.0.2","@cytoswap/v3-periphery":"^1.4.8","@openzeppelin/contracts":"3.4.2-solc-0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.2.0","mocha":"^6.2.2","ethers":"^5.0.8","is-svg":"^4.3.1","hardhat":"^2.6.8","solhint":"^3.2.1","ts-node":"^8.5.4","prettier":"^2.0.5","typechain":"^4.0.0","decimal.js":"^10.2.1","typescript":"^3.7.3","@types/chai":"^4.2.6","@types/mocha":"^5.2.7","ts-generator":"^0.1.1","ethereum-waffle":"^3.0.2","hardhat-typechain":"^0.3.5","@typechain/ethers-v5":"^4.0.0","solhint-plugin-prettier":"^0.0.5","mocha-chai-jest-snapshot":"^1.1.0","prettier-plugin-solidity":"^1.0.0-beta.10","@nomiclabs/hardhat-ethers":"^2.0.2","@nomiclabs/hardhat-waffle":"^2.0.1","@nomiclabs/hardhat-etherscan":"^2.1.8"},"_npmOperationalInternal":{"tmp":"tmp/swap-router-contracts_1.0.3_1708601208295_0.08364862089101366","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"@cytoswap/swap-router-contracts","version":"1.0.4","keywords":["cytoswap","v3"],"license":"GPL-2.0-or-later","_id":"@cytoswap/swap-router-contracts@1.0.4","maintainers":[{"name":"snap.devs","email":"devs@snapresearch.io"}],"homepage":"https://cytoswap.com","dist":{"shasum":"8445648a3b0964add013bf4d852c6062c8e05f1c","tarball":"https://registry.npmjs.org/@cytoswap/swap-router-contracts/-/swap-router-contracts-1.0.4.tgz","fileCount":51,"integrity":"sha512-gDa+zV01d/sf9bTAfHHX/Ej6tPMJBCoU+/JJ1PlPhmtC+O52UGMCkcethudGDFqfiIDkZG6T5sg0agaQgApjcA==","signatures":[{"sig":"MEQCIC9QuoOWPorLCrNSZhTpbxXTrNDNKdacbwFCzwP4rkMgAiBE1mArJTlUhKhvcMCNjBa9xNE3oyTuwsFRUarTeqAjMA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":398889},"engines":{"node":">=10"},"gitHead":"20deaabb899c79b617fafc20bd484cb654bf842f","scripts":{"test":"hardhat test","compile":"hardhat compile"},"_npmUser":{"name":"snap.devs","email":"devs@snapresearch.io"},"repository":{"url":"https://gitlab.snapresearch.io/swapnity/swap-router-contracts","type":"git"},"_npmVersion":"9.6.7","description":"Smart contracts for swapping on Cytoswap V3","directories":{},"_nodeVersion":"18.19.1","dependencies":{"dotenv":"^14.2.0","hardhat-watcher":"^2.1.1","@uniswap/v2-core":"^1.0.1","@cytoswap/v3-core":"^1.0.2","@cytoswap/v3-periphery":"^1.4.9","@openzeppelin/contracts":"3.4.2-solc-0.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^4.2.0","mocha":"^6.2.2","ethers":"^5.0.8","is-svg":"^4.3.1","hardhat":"^2.6.8","solhint":"^3.2.1","ts-node":"^8.5.4","prettier":"^2.0.5","typechain":"^4.0.0","decimal.js":"^10.2.1","typescript":"^3.7.3","@types/chai":"^4.2.6","@types/mocha":"^5.2.7","ts-generator":"^0.1.1","ethereum-waffle":"^3.0.2","hardhat-typechain":"^0.3.5","@typechain/ethers-v5":"^4.0.0","solhint-plugin-prettier":"^0.0.5","mocha-chai-jest-snapshot":"^1.1.0","prettier-plugin-solidity":"^1.0.0-beta.10","@nomiclabs/hardhat-ethers":"^2.0.2","@nomiclabs/hardhat-waffle":"^2.0.1","@nomiclabs/hardhat-etherscan":"^2.1.8"},"_npmOperationalInternal":{"tmp":"tmp/swap-router-contracts_1.0.4_1709089756909_0.9302425188131749","host":"s3://npm-registry-packages"}},"1.0.5":{"name":"@cytoswap/swap-router-contracts","description":"Smart contracts for swapping on Cytoswap V3","license":"GPL-2.0-or-later","publishConfig":{"access":"public"},"version":"1.0.5","homepage":"https://cytoswap.com","keywords":["cytoswap","v3"],"repository":{"type":"git","url":"git+https://github.com/hela-cytoswap/swap-router-contracts.git"},"engines":{"node":">=10"},"dependencies":{"@cytoswap/v3-core":"^1.0.3","@cytoswap/v3-periphery":"^1.5.0","@openzeppelin/contracts":"3.4.2-solc-0.7","@uniswap/v2-core":"^1.0.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"},"gitHead":"27391dbe80477ecb8e427876fe4fd2acd868b326","bugs":{"url":"https://github.com/hela-cytoswap/swap-router-contracts/issues"},"_id":"@cytoswap/swap-router-contracts@1.0.5","_nodeVersion":"18.19.1","_npmVersion":"9.6.7","dist":{"integrity":"sha512-GlNZwReP7851qHhZGE7xus7zCapLqFymDyDxahZBtRg0QjwnjTezMKpnAMTv1oNlfOXoJ6H+xGjX6rdYRHb9Qw==","shasum":"0b1471007ff4c4366dcd903d0f14c2a1cb0a8736","tarball":"https://registry.npmjs.org/@cytoswap/swap-router-contracts/-/swap-router-contracts-1.0.5.tgz","fileCount":51,"unpackedSize":398882,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKAGOjMZd+biKtX6ioHcedDXn7/e1XmwBqSSHsxB7+JAIhAKv6IiX884jcDmCUw8Czzqj1H1SxWDlPKfSdzgAcKwAp"}]},"_npmUser":{"name":"snap.devs","email":"devs@snapresearch.io"},"directories":{},"maintainers":[{"name":"snap.devs","email":"devs@snapresearch.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/swap-router-contracts_1.0.5_1734603672506_0.6378914236605673"},"_hasShrinkwrap":false}},"time":{"created":"2024-02-22T11:23:34.310Z","modified":"2024-12-19T10:21:12.918Z","1.0.2":"2024-02-22T11:23:34.523Z","1.0.3":"2024-02-22T11:26:48.457Z","1.0.4":"2024-02-28T03:09:17.123Z","1.0.5":"2024-12-19T10:21:12.677Z"},"license":"GPL-2.0-or-later","homepage":"https://cytoswap.com","keywords":["cytoswap","v3"],"repository":{"type":"git","url":"git+https://github.com/hela-cytoswap/swap-router-contracts.git"},"description":"Smart contracts for swapping on Cytoswap V3","maintainers":[{"name":"snap.devs","email":"devs@snapresearch.io"}],"readme":"# Cytoswap Swap Router\r\n\r\nThis repository contains smart contracts for swapping on the Cytoswap V3 protocols.\r\n\r\n## Bug bounty\r\n\r\nThis repository is subject to the Cytoswap V3 bug bounty program,\r\nper the terms defined [here](./bug-bounty.md).\r\n\r\n## Local deployment\r\n\r\nIn order to deploy this code to a local testnet, you should install the npm package\r\n`@cytoswap/swap-router-contracts`\r\nand import bytecode imported from artifacts located at\r\n`@cytoswap/swap-router-contracts/artifacts/contracts/*/*.json`.\r\nFor example:\r\n\r\n```typescript\r\nimport {\r\n  abi as SWAP_ROUTER_ABI,\r\n  bytecode as SWAP_ROUTER_BYTECODE,\r\n} from '@cytoswap/swap-router-contracts/artifacts/contracts/SwapRouter02.sol/SwapRouter02.json'\r\n\r\n// deploy the bytecode\r\n```\r\n\r\nThis will ensure that you are testing against the same bytecode that is deployed to\r\nmainnet and public testnets, and all Cytoswap code will correctly interoperate with\r\nyour local deployment.\r\n\r\n## Using solidity interfaces\r\n\r\nThe swap router contract interfaces are available for import into solidity smart contracts\r\nvia the npm artifact `@cytoswap/swap-router-contracts`, e.g.:\r\n\r\n```solidity\r\nimport '@cytoswap/swap-router-contracts/contracts/interfaces/ISwapRouter02.sol';\r\n\r\ncontract MyContract {\r\n  ISwapRouter02 router;\r\n\r\n  function doSomethingWithSwapRouter() {\r\n    // router.exactInput(...);\r\n  }\r\n}\r\n\r\n```\r\n\r\n## Tests\r\n\r\nSome tests use Hardhat mainnet forking and therefore require an archive node.\r\nEither create a `.env` file in the workspace root containing:\r\n\r\n```\r\nARCHIVE_RPC_URL='...'\r\n```\r\n\r\nOr set the variable when running tests:\r\n\r\n```\r\nexport ARCHIVE_RPC_URL='...' && npm run test\r\n```\r\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/hela-cytoswap/swap-router-contracts/issues"}}