{"_id":"@astarexchange/token-list-bridge-utils","name":"@astarexchange/token-list-bridge-utils","dist-tags":{"latest":"1.3.2"},"versions":{"1.3.2":{"author":{"name":"Justin Domingue"},"devDependencies":{"@size-limit/preset-small-lib":"^7.0.8","@tsconfig/recommended":"^1.0.1","@types/jest":"^27.4.1","@types/lodash":"^4.14.179","@astarexchange/token-lists":"^1.0.0","dts-cli":"^1.4.0","husky":"^7.0.4","size-limit":"^7.0.8","tslib":"^2.3.1","typescript":"^4.5.5"},"engines":{"node":">=12"},"husky":{"hooks":{"pre-commit":"dts lint"}},"jest":{"testEnvironment":"node"},"license":"GPL-3.0-or-later","main":"dist/index.js","module":"dist/token-list-bridge-utils.esm.js","name":"@astarexchange/token-list-bridge-utils","publishConfig":{"access":"public"},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"scripts":{"analyze":"size-limit --why","build":"dts build","lint":"dts lint","prepare":"dts build","size":"size-limit","start":"dts watch","test":"dts test"},"size-limit":[{"limit":"10 KB","path":"dist/token-list-bridge-utils.cjs.production.min.js"},{"limit":"10 KB","path":"dist/token-list-bridge-utils.esm.js"}],"typings":"dist/index.d.ts","version":"1.3.2","dependencies":{"@arbitrum/sdk":"^1.1.4","@astarexchange/sdk-core":"^1.0.0","axios":"^0.26.0","dotenv":"^16.0.1","ethers":"^5.6.5","lodash":"^4.17.21","prettier":"^2.7.1","web3":"^1.7.3"},"gitHead":"1ef6eb00025fcfa389a4ab41722b358d5ca83acf","description":"## Description This package contains utility functions used for converting an L1 token list into a cross-chain tokenlist by adding cross-chain mapping information for Arbitrum, Optimism, and Polygon to a given L1 list.","_id":"@astarexchange/token-list-bridge-utils@1.3.2","_nodeVersion":"14.21.3","_npmVersion":"6.14.18","dist":{"integrity":"sha512-yGXNZTZpf2AttpuPLINSJkdQ86RXhDqezeihTsesor3D8sKPiBkCAnxbDIyxYmStxaoK2FfsuuuUbPxlgYeCgQ==","shasum":"261301bcb04637a6d539a5a3039ef05217c5ab75","tarball":"https://registry.npmjs.org/@astarexchange/token-list-bridge-utils/-/token-list-bridge-utils-1.3.2.tgz","fileCount":47,"unpackedSize":842822,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDeL0RIIr318SOgcjcalziteYthKqjzwBUAnAZWabk+pAIhAOtndtoYFvWYFlWwX8afzRMEvFP07eQVzTHLGQhPddJ5"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkFhOdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpz1Q/+KAfCNmp+p9YymkIUTB5AZVQsWe29OlCUe3RDV7znf1FPnX2Z\r\nFmO9MJPcE5KWrwv2ZFSo7Ym7o4AKEOjxf+s4fG7j4bMv6aChF9fGhksyv+hY\r\nkoA6n8WSaX0hX5uaXOFutFmAAkdO6KZ5B/rTam7XJtp3eg3QpsddELX/4qMY\r\nUWTKwvxfOWYD6MUDpfo2h89/8JMn5Ru8MiuaDIMorUDMR7TwToveLyyvJRD1\r\n/apUyjPMn+5CmHm1YWasscsN4eaSas8SktUjm5iGpKljUO/xIOGueenohl3Y\r\nPXPBv1Ig+k3s77dZCYYLU5OpEHosqtoeucUKSRSSKNL3iicTub0FnEw6qRx4\r\nEBCwwdcTr776e5FnyofcEwOBV76yAeRt20JIPZeGnjZJSyrDZ+OVeaf6qfxg\r\n5KpoAO2tExiHwTRVBTD6HwurcNyuOtoyaMz9C9KtBDy6G3r/DvfiNY4wOE5N\r\nPlAQmnILjpa5qbIZ94/6h8V51Mx07qXmO64ygnNnHhExjRUgvh1deWK45c6p\r\n5op6+8Ax/J8ZHA82ScNjdtLOfzSiQ+F7KF1rErFba+FlFPWzvvNXDZZmRPk2\r\nyQm5rz4l7JRsab0XY85V4vdAo9TI0/FrHp/mHbnGJYrklf7isLyrFYoUm83U\r\nwrD0v6/lhZoNnVPPBijhiTelf+8Nj1NbRlY=\r\n=Lx9q\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"astarexchange","email":"astarexchange@gmail.com"},"directories":{},"maintainers":[{"name":"astarexchange","email":"astarexchange@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/token-list-bridge-utils_1.3.2_1679168413125_0.12387427630808623"},"_hasShrinkwrap":false}},"time":{"created":"2023-03-18T19:40:13.024Z","1.3.2":"2023-03-18T19:40:13.331Z","modified":"2023-03-18T19:40:13.517Z"},"maintainers":[{"name":"astarexchange","email":"astarexchange@gmail.com"}],"description":"## Description This package contains utility functions used for converting an L1 token list into a cross-chain tokenlist by adding cross-chain mapping information for Arbitrum, Optimism, and Polygon to a given L1 list.","author":{"name":"Justin Domingue"},"license":"GPL-3.0-or-later","readme":"# Token List Bridge Utils\n\n## Description\nThis package contains utility functions used for converting an L1 token list into a cross-chain tokenlist by adding cross-chain mapping information for Arbitrum, Optimism, and Polygon to a given L1 list.\n\nMappings get added in the form of an extensions field, following this [schema](https://github.com/Uniswap/token-lists/issues/51#issuecomment-952268629).\n(Currently does not fill information for origin and destination bridge addresses)\n\nex:\n\n      \"name\": \"Uniswap\",\n      \"address\": \"0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984\",\n      \"symbol\": \"UNI\",\n      \"decimals\": 18,\n      \"chainId\": 1,\n      \"logoURI\": \"ipfs://QmXttGpZrECX5qCyXbBQiqgQNytVGeZW5Anewvh2jc4psg\",\n      \"extensions\": {\n        \"bridgeInfo\": {\n          \"10\": {\n            \"tokenAddress\": \"0x6fd9d7AD17242c41f7131d257212c54A0e816691\"\n          },\n          \"137\": {\n            \"tokenAddress\": \"0xb33EaAd8d922B1083446DC23f610c2567fB5180f\"\n          },\n          \"42161\": {\n            \"tokenAddress\": \"0xFa7F8980b0f1E64A2062791cc3b0871572f1F7f0\"\n          }\n        }\n      }}\nAlso adds a \"root-level\" token entry for each of the L2's that a token maps to.\n\nex. for Optimism:\n\n\n    {\n      \"name\": \"Uniswap\",\n      \"address\": \"0x6fd9d7AD17242c41f7131d257212c54A0e816691\",\n      \"symbol\": \"UNI\",\n      \"decimals\": 18,\n      \"chainId\": 10,\n      \"logoURI\": \"ipfs://QmXttGpZrECX5qCyXbBQiqgQNytVGeZW5Anewvh2jc4psg\",\n      \"extensions\": {\n        \"bridgeInfo\": {\n          \"1\": {\n            \"tokenAddress\": \"0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984\"\n          }\n        }\n      }\n    }\n\n\n## Functions Overview\n\nchainify\n\n * Adds bridgeInfo to the given token list for Optimism, Polygon and Arbitrum.\n * @param l1TokenListOrPathOrUrl\n * @returns TokenList with l2 bridgeInfo filled\n\n\nchainifyTokenList\n\n * Given a chain ID (Optimism, Polygon, or Arbitrum) and a TokenList, returns the TokenList with `extensions` filled.\n * @param chainId chainId to operate on\n * @param l1TokenListOrPathOrUrl either an L1 TokenList object or a path/url to a TokenList\n * @returns L1 TokenList with `extensions` filled for the given network\n\n\nmergeTokenLists\n * Merges two token lists, resolving conflicts to primary list.\n * @param primary primary token list to resolve conflicts to\n * @param secondary secondary token list\n * @returns merged token list\n\n## Usage (from external package):\n### Install Package\n`yarn add @uniswap/token-list-bridge-utils`\n\nor\n\n`npm i @uniswap/token-list-bridge-utils`\n\n### Create .env file (Optional)\n- By default, the library uses `https://cloudflare-eth.com/` as the MAINNET_RPC env variable value required by arbitrum-sdk. You can override this value by creating a .env file in your root directory and setting a value for MAINNET_RPC.\n\n  - Sample .env file contents:\n\n    `MAINNET_RPC=\"https://mainnet.infura.io/v3/<infura key>\"`\n- Note: If this is not set correctly, the library will throw a NETWORK_ERROR error code.\n\n### Call Function\n#### CommonJS\n`const bridge_utils  = require('@uniswap/token-list-bridge-utils');`\n\n`let chainifiedList = await bridge_utils.chainify(tokenList);`\n#### ESM\n`import { chainify } from '@uniswap/token-list-bridge-utils';`\n\n`let chainifiedList = await chainify(tokenList);`\n\n## Run Tests\n\n`yarn install`\n\n`yarn test`\n\n## DTS User Guide\n\nDTS scaffolds your new library inside `/src`.\n\nTo run DTS, use:\n\n```bash\nnpm start # or yarn start\n```\n\nThis builds to `/dist` and runs the project in watch mode so any edits you save inside `src` causes a rebuild to `/dist`.\n\nTo do a one-off build, use `npm run build` or `yarn build`.","readmeFilename":"README.md"}