├── .github ├── ISSUE_TEMPLATE │ └── token-request.md └── workflows │ ├── deploy.yaml │ └── tests.yaml ├── .gitignore ├── LICENSE ├── README.md ├── package.json ├── src ├── buildList.js ├── tokens │ ├── avalanche.json │ ├── bsc-testnet.json │ ├── bsc.json │ ├── fantom-testnet.json │ ├── fantom.json │ ├── fuji.json │ ├── goerli.json │ ├── harmony-testnet.json │ ├── harmony.json │ ├── heco-testnet.json │ ├── heco.json │ ├── kovan.json │ ├── mainnet.json │ ├── matic-testnet.json │ ├── matic.json │ ├── moonbase.json │ ├── rinkeby.json │ ├── ropsten.json │ └── xdai.json └── write.js ├── test └── sushiswap-default.test.js └── yarn.lock /.github/ISSUE_TEMPLATE/token-request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Token Request 3 | about: Request a token addition 4 | title: 'Add {TOKEN_SYMBOL}: {TOKEN_NAME}' 5 | labels: token request 6 | assignees: '' 7 | --- 8 | 9 | - [ ] I understand that token listing is not required to use the SushiSwap Interface with a token. 10 | - [ ] I understand that filing an issue or adding liquidity does not guarantee addition to the Uniswap default token list. 11 | - [ ] I will not ping the Discord about this listing request. 12 | 13 | **Please provide the following information for your token.** 14 | 15 | Token Address: 16 | Token Name (from contract): 17 | Token Decimals (from contract): 18 | Token Symbol (from contract): 19 | SushiSwap V2 Pair Address of Token: 20 | 21 | Link to the official homepage of token: 22 | Link to CoinMarketCap or CoinGecko page of token: 23 | -------------------------------------------------------------------------------- /.github/workflows/deploy.yaml: -------------------------------------------------------------------------------- 1 | name: Deploy 2 | on: 3 | # manual trigger 4 | workflow_dispatch: 5 | 6 | jobs: 7 | deploy: 8 | name: Deploy 9 | runs-on: ubuntu-latest 10 | steps: 11 | - name: Checkout 12 | uses: actions/checkout@v1 13 | 14 | - name: Setup Node 15 | uses: actions/setup-node@v1 16 | with: 17 | node-version: '12' 18 | 19 | - name: Install dependencies 20 | run: npm install 21 | 22 | - name: Tests pass 23 | run: npm test 24 | 25 | - name: Publish to NPM 26 | uses: JS-DevTools/npm-publish@18351461ae08dde235c0ccee0633ec905f0b9a52 27 | with: 28 | token: ${{ secrets.NPM_TOKEN }} 29 | 30 | - name: Pin to IPFS 31 | id: upload 32 | uses: anantaramdas/ipfs-pinata-deploy-action@v1.6.3 33 | with: 34 | pin-name: Uniswap Default Token List ${{ needs.bump_version.outputs.new_tag }} 35 | path: 'build/uniswap-default.tokenlist.json' 36 | pinata-api-key: ${{ secrets.PINATA_API_KEY }} 37 | pinata-secret-api-key: ${{ secrets.PINATA_API_SECRET_KEY }} 38 | 39 | - name: Update DNS with new IPFS hash 40 | env: 41 | CLOUDFLARE_TOKEN: ${{ secrets.CLOUDFLARE_TOKEN }} 42 | RECORD_DOMAIN: 'uniswap.org' 43 | RECORD_NAME: '_dnslink.tokens' 44 | CLOUDFLARE_ZONE_ID: ${{ secrets.CLOUDFLARE_ZONE_ID }} 45 | uses: textileio/cloudflare-update-dnslink@0fe7b7a1ffc865db3a4da9773f0f987447ad5848 46 | with: 47 | cid: ${{ steps.upload.outputs.hash }} 48 | 49 | -------------------------------------------------------------------------------- /.github/workflows/tests.yaml: -------------------------------------------------------------------------------- 1 | name: Tests 2 | on: [push, pull_request] 3 | jobs: 4 | test: 5 | runs-on: ubuntu-latest 6 | name: Unit Tests 7 | steps: 8 | - uses: actions/checkout@v2 9 | - name: Setup node 10 | uses: actions/setup-node@v1 11 | with: 12 | node-version: 12 13 | - run: npm install 14 | - run: npm test -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | node_modules 3 | build/ -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | GNU GENERAL PUBLIC LICENSE 2 | Version 3, 29 June 2007 3 | 4 | Copyright (C) 2007 Free Software Foundation, Inc. 5 | Everyone is permitted to copy and distribute verbatim copies 6 | of this license document, but changing it is not allowed. 7 | 8 | Preamble 9 | 10 | The GNU General Public License is a free, copyleft license for 11 | software and other kinds of works. 12 | 13 | The licenses for most software and other practical works are designed 14 | to take away your freedom to share and change the works. By contrast, 15 | the GNU General Public License is intended to guarantee your freedom to 16 | share and change all versions of a program--to make sure it remains free 17 | software for all its users. We, the Free Software Foundation, use the 18 | GNU General Public License for most of our software; it applies also to 19 | any other work released this way by its authors. You can apply it to 20 | your programs, too. 21 | 22 | When we speak of free software, we are referring to freedom, not 23 | price. Our General Public Licenses are designed to make sure that you 24 | have the freedom to distribute copies of free software (and charge for 25 | them if you wish), that you receive source code or can get it if you 26 | want it, that you can change the software or use pieces of it in new 27 | free programs, and that you know you can do these things. 28 | 29 | To protect your rights, we need to prevent others from denying you 30 | these rights or asking you to surrender the rights. Therefore, you have 31 | certain responsibilities if you distribute copies of the software, or if 32 | you modify it: responsibilities to respect the freedom of others. 33 | 34 | For example, if you distribute copies of such a program, whether 35 | gratis or for a fee, you must pass on to the recipients the same 36 | freedoms that you received. You must make sure that they, too, receive 37 | or can get the source code. And you must show them these terms so they 38 | know their rights. 39 | 40 | Developers that use the GNU GPL protect your rights with two steps: 41 | (1) assert copyright on the software, and (2) offer you this License 42 | giving you legal permission to copy, distribute and/or modify it. 43 | 44 | For the developers' and authors' protection, the GPL clearly explains 45 | that there is no warranty for this free software. For both users' and 46 | authors' sake, the GPL requires that modified versions be marked as 47 | changed, so that their problems will not be attributed erroneously to 48 | authors of previous versions. 49 | 50 | Some devices are designed to deny users access to install or run 51 | modified versions of the software inside them, although the manufacturer 52 | can do so. This is fundamentally incompatible with the aim of 53 | protecting users' freedom to change the software. The systematic 54 | pattern of such abuse occurs in the area of products for individuals to 55 | use, which is precisely where it is most unacceptable. Therefore, we 56 | have designed this version of the GPL to prohibit the practice for those 57 | products. If such problems arise substantially in other domains, we 58 | stand ready to extend this provision to those domains in future versions 59 | of the GPL, as needed to protect the freedom of users. 60 | 61 | Finally, every program is threatened constantly by software patents. 62 | States should not allow patents to restrict development and use of 63 | software on general-purpose computers, but in those that do, we wish to 64 | avoid the special danger that patents applied to a free program could 65 | make it effectively proprietary. To prevent this, the GPL assures that 66 | patents cannot be used to render the program non-free. 67 | 68 | The precise terms and conditions for copying, distribution and 69 | modification follow. 70 | 71 | TERMS AND CONDITIONS 72 | 73 | 0. Definitions. 74 | 75 | "This License" refers to version 3 of the GNU General Public License. 76 | 77 | "Copyright" also means copyright-like laws that apply to other kinds of 78 | works, such as semiconductor masks. 79 | 80 | "The Program" refers to any copyrightable work licensed under this 81 | License. Each licensee is addressed as "you". "Licensees" and 82 | "recipients" may be individuals or organizations. 83 | 84 | To "modify" a work means to copy from or adapt all or part of the work 85 | in a fashion requiring copyright permission, other than the making of an 86 | exact copy. The resulting work is called a "modified version" of the 87 | earlier work or a work "based on" the earlier work. 88 | 89 | A "covered work" means either the unmodified Program or a work based 90 | on the Program. 91 | 92 | To "propagate" a work means to do anything with it that, without 93 | permission, would make you directly or secondarily liable for 94 | infringement under applicable copyright law, except executing it on a 95 | computer or modifying a private copy. Propagation includes copying, 96 | distribution (with or without modification), making available to the 97 | public, and in some countries other activities as well. 98 | 99 | To "convey" a work means any kind of propagation that enables other 100 | parties to make or receive copies. Mere interaction with a user through 101 | a computer network, with no transfer of a copy, is not conveying. 102 | 103 | An interactive user interface displays "Appropriate Legal Notices" 104 | to the extent that it includes a convenient and prominently visible 105 | feature that (1) displays an appropriate copyright notice, and (2) 106 | tells the user that there is no warranty for the work (except to the 107 | extent that warranties are provided), that licensees may convey the 108 | work under this License, and how to view a copy of this License. If 109 | the interface presents a list of user commands or options, such as a 110 | menu, a prominent item in the list meets this criterion. 111 | 112 | 1. Source Code. 113 | 114 | The "source code" for a work means the preferred form of the work 115 | for making modifications to it. "Object code" means any non-source 116 | form of a work. 117 | 118 | A "Standard Interface" means an interface that either is an official 119 | standard defined by a recognized standards body, or, in the case of 120 | interfaces specified for a particular programming language, one that 121 | is widely used among developers working in that language. 122 | 123 | The "System Libraries" of an executable work include anything, other 124 | than the work as a whole, that (a) is included in the normal form of 125 | packaging a Major Component, but which is not part of that Major 126 | Component, and (b) serves only to enable use of the work with that 127 | Major Component, or to implement a Standard Interface for which an 128 | implementation is available to the public in source code form. A 129 | "Major Component", in this context, means a major essential component 130 | (kernel, window system, and so on) of the specific operating system 131 | (if any) on which the executable work runs, or a compiler used to 132 | produce the work, or an object code interpreter used to run it. 133 | 134 | The "Corresponding Source" for a work in object code form means all 135 | the source code needed to generate, install, and (for an executable 136 | work) run the object code and to modify the work, including scripts to 137 | control those activities. However, it does not include the work's 138 | System Libraries, or general-purpose tools or generally available free 139 | programs which are used unmodified in performing those activities but 140 | which are not part of the work. For example, Corresponding Source 141 | includes interface definition files associated with source files for 142 | the work, and the source code for shared libraries and dynamically 143 | linked subprograms that the work is specifically designed to require, 144 | such as by intimate data communication or control flow between those 145 | subprograms and other parts of the work. 146 | 147 | The Corresponding Source need not include anything that users 148 | can regenerate automatically from other parts of the Corresponding 149 | Source. 150 | 151 | The Corresponding Source for a work in source code form is that 152 | same work. 153 | 154 | 2. Basic Permissions. 155 | 156 | All rights granted under this License are granted for the term of 157 | copyright on the Program, and are irrevocable provided the stated 158 | conditions are met. This License explicitly affirms your unlimited 159 | permission to run the unmodified Program. The output from running a 160 | covered work is covered by this License only if the output, given its 161 | content, constitutes a covered work. This License acknowledges your 162 | rights of fair use or other equivalent, as provided by copyright law. 163 | 164 | You may make, run and propagate covered works that you do not 165 | convey, without conditions so long as your license otherwise remains 166 | in force. You may convey covered works to others for the sole purpose 167 | of having them make modifications exclusively for you, or provide you 168 | with facilities for running those works, provided that you comply with 169 | the terms of this License in conveying all material for which you do 170 | not control copyright. Those thus making or running the covered works 171 | for you must do so exclusively on your behalf, under your direction 172 | and control, on terms that prohibit them from making any copies of 173 | your copyrighted material outside their relationship with you. 174 | 175 | Conveying under any other circumstances is permitted solely under 176 | the conditions stated below. Sublicensing is not allowed; section 10 177 | makes it unnecessary. 178 | 179 | 3. Protecting Users' Legal Rights From Anti-Circumvention Law. 180 | 181 | No covered work shall be deemed part of an effective technological 182 | measure under any applicable law fulfilling obligations under article 183 | 11 of the WIPO copyright treaty adopted on 20 December 1996, or 184 | similar laws prohibiting or restricting circumvention of such 185 | measures. 186 | 187 | When you convey a covered work, you waive any legal power to forbid 188 | circumvention of technological measures to the extent such circumvention 189 | is effected by exercising rights under this License with respect to 190 | the covered work, and you disclaim any intention to limit operation or 191 | modification of the work as a means of enforcing, against the work's 192 | users, your or third parties' legal rights to forbid circumvention of 193 | technological measures. 194 | 195 | 4. Conveying Verbatim Copies. 196 | 197 | You may convey verbatim copies of the Program's source code as you 198 | receive it, in any medium, provided that you conspicuously and 199 | appropriately publish on each copy an appropriate copyright notice; 200 | keep intact all notices stating that this License and any 201 | non-permissive terms added in accord with section 7 apply to the code; 202 | keep intact all notices of the absence of any warranty; and give all 203 | recipients a copy of this License along with the Program. 204 | 205 | You may charge any price or no price for each copy that you convey, 206 | and you may offer support or warranty protection for a fee. 207 | 208 | 5. Conveying Modified Source Versions. 209 | 210 | You may convey a work based on the Program, or the modifications to 211 | produce it from the Program, in the form of source code under the 212 | terms of section 4, provided that you also meet all of these conditions: 213 | 214 | a) The work must carry prominent notices stating that you modified 215 | it, and giving a relevant date. 216 | 217 | b) The work must carry prominent notices stating that it is 218 | released under this License and any conditions added under section 219 | 7. This requirement modifies the requirement in section 4 to 220 | "keep intact all notices". 221 | 222 | c) You must license the entire work, as a whole, under this 223 | License to anyone who comes into possession of a copy. This 224 | License will therefore apply, along with any applicable section 7 225 | additional terms, to the whole of the work, and all its parts, 226 | regardless of how they are packaged. This License gives no 227 | permission to license the work in any other way, but it does not 228 | invalidate such permission if you have separately received it. 229 | 230 | d) If the work has interactive user interfaces, each must display 231 | Appropriate Legal Notices; however, if the Program has interactive 232 | interfaces that do not display Appropriate Legal Notices, your 233 | work need not make them do so. 234 | 235 | A compilation of a covered work with other separate and independent 236 | works, which are not by their nature extensions of the covered work, 237 | and which are not combined with it such as to form a larger program, 238 | in or on a volume of a storage or distribution medium, is called an 239 | "aggregate" if the compilation and its resulting copyright are not 240 | used to limit the access or legal rights of the compilation's users 241 | beyond what the individual works permit. Inclusion of a covered work 242 | in an aggregate does not cause this License to apply to the other 243 | parts of the aggregate. 244 | 245 | 6. Conveying Non-Source Forms. 246 | 247 | You may convey a covered work in object code form under the terms 248 | of sections 4 and 5, provided that you also convey the 249 | machine-readable Corresponding Source under the terms of this License, 250 | in one of these ways: 251 | 252 | a) Convey the object code in, or embodied in, a physical product 253 | (including a physical distribution medium), accompanied by the 254 | Corresponding Source fixed on a durable physical medium 255 | customarily used for software interchange. 256 | 257 | b) Convey the object code in, or embodied in, a physical product 258 | (including a physical distribution medium), accompanied by a 259 | written offer, valid for at least three years and valid for as 260 | long as you offer spare parts or customer support for that product 261 | model, to give anyone who possesses the object code either (1) a 262 | copy of the Corresponding Source for all the software in the 263 | product that is covered by this License, on a durable physical 264 | medium customarily used for software interchange, for a price no 265 | more than your reasonable cost of physically performing this 266 | conveying of source, or (2) access to copy the 267 | Corresponding Source from a network server at no charge. 268 | 269 | c) Convey individual copies of the object code with a copy of the 270 | written offer to provide the Corresponding Source. This 271 | alternative is allowed only occasionally and noncommercially, and 272 | only if you received the object code with such an offer, in accord 273 | with subsection 6b. 274 | 275 | d) Convey the object code by offering access from a designated 276 | place (gratis or for a charge), and offer equivalent access to the 277 | Corresponding Source in the same way through the same place at no 278 | further charge. You need not require recipients to copy the 279 | Corresponding Source along with the object code. If the place to 280 | copy the object code is a network server, the Corresponding Source 281 | may be on a different server (operated by you or a third party) 282 | that supports equivalent copying facilities, provided you maintain 283 | clear directions next to the object code saying where to find the 284 | Corresponding Source. Regardless of what server hosts the 285 | Corresponding Source, you remain obligated to ensure that it is 286 | available for as long as needed to satisfy these requirements. 287 | 288 | e) Convey the object code using peer-to-peer transmission, provided 289 | you inform other peers where the object code and Corresponding 290 | Source of the work are being offered to the general public at no 291 | charge under subsection 6d. 292 | 293 | A separable portion of the object code, whose source code is excluded 294 | from the Corresponding Source as a System Library, need not be 295 | included in conveying the object code work. 296 | 297 | A "User Product" is either (1) a "consumer product", which means any 298 | tangible personal property which is normally used for personal, family, 299 | or household purposes, or (2) anything designed or sold for incorporation 300 | into a dwelling. In determining whether a product is a consumer product, 301 | doubtful cases shall be resolved in favor of coverage. For a particular 302 | product received by a particular user, "normally used" refers to a 303 | typical or common use of that class of product, regardless of the status 304 | of the particular user or of the way in which the particular user 305 | actually uses, or expects or is expected to use, the product. A product 306 | is a consumer product regardless of whether the product has substantial 307 | commercial, industrial or non-consumer uses, unless such uses represent 308 | the only significant mode of use of the product. 309 | 310 | "Installation Information" for a User Product means any methods, 311 | procedures, authorization keys, or other information required to install 312 | and execute modified versions of a covered work in that User Product from 313 | a modified version of its Corresponding Source. The information must 314 | suffice to ensure that the continued functioning of the modified object 315 | code is in no case prevented or interfered with solely because 316 | modification has been made. 317 | 318 | If you convey an object code work under this section in, or with, or 319 | specifically for use in, a User Product, and the conveying occurs as 320 | part of a transaction in which the right of possession and use of the 321 | User Product is transferred to the recipient in perpetuity or for a 322 | fixed term (regardless of how the transaction is characterized), the 323 | Corresponding Source conveyed under this section must be accompanied 324 | by the Installation Information. But this requirement does not apply 325 | if neither you nor any third party retains the ability to install 326 | modified object code on the User Product (for example, the work has 327 | been installed in ROM). 328 | 329 | The requirement to provide Installation Information does not include a 330 | requirement to continue to provide support service, warranty, or updates 331 | for a work that has been modified or installed by the recipient, or for 332 | the User Product in which it has been modified or installed. Access to a 333 | network may be denied when the modification itself materially and 334 | adversely affects the operation of the network or violates the rules and 335 | protocols for communication across the network. 336 | 337 | Corresponding Source conveyed, and Installation Information provided, 338 | in accord with this section must be in a format that is publicly 339 | documented (and with an implementation available to the public in 340 | source code form), and must require no special password or key for 341 | unpacking, reading or copying. 342 | 343 | 7. Additional Terms. 344 | 345 | "Additional permissions" are terms that supplement the terms of this 346 | License by making exceptions from one or more of its conditions. 347 | Additional permissions that are applicable to the entire Program shall 348 | be treated as though they were included in this License, to the extent 349 | that they are valid under applicable law. If additional permissions 350 | apply only to part of the Program, that part may be used separately 351 | under those permissions, but the entire Program remains governed by 352 | this License without regard to the additional permissions. 353 | 354 | When you convey a copy of a covered work, you may at your option 355 | remove any additional permissions from that copy, or from any part of 356 | it. (Additional permissions may be written to require their own 357 | removal in certain cases when you modify the work.) You may place 358 | additional permissions on material, added by you to a covered work, 359 | for which you have or can give appropriate copyright permission. 360 | 361 | Notwithstanding any other provision of this License, for material you 362 | add to a covered work, you may (if authorized by the copyright holders of 363 | that material) supplement the terms of this License with terms: 364 | 365 | a) Disclaiming warranty or limiting liability differently from the 366 | terms of sections 15 and 16 of this License; or 367 | 368 | b) Requiring preservation of specified reasonable legal notices or 369 | author attributions in that material or in the Appropriate Legal 370 | Notices displayed by works containing it; or 371 | 372 | c) Prohibiting misrepresentation of the origin of that material, or 373 | requiring that modified versions of such material be marked in 374 | reasonable ways as different from the original version; or 375 | 376 | d) Limiting the use for publicity purposes of names of licensors or 377 | authors of the material; or 378 | 379 | e) Declining to grant rights under trademark law for use of some 380 | trade names, trademarks, or service marks; or 381 | 382 | f) Requiring indemnification of licensors and authors of that 383 | material by anyone who conveys the material (or modified versions of 384 | it) with contractual assumptions of liability to the recipient, for 385 | any liability that these contractual assumptions directly impose on 386 | those licensors and authors. 387 | 388 | All other non-permissive additional terms are considered "further 389 | restrictions" within the meaning of section 10. If the Program as you 390 | received it, or any part of it, contains a notice stating that it is 391 | governed by this License along with a term that is a further 392 | restriction, you may remove that term. If a license document contains 393 | a further restriction but permits relicensing or conveying under this 394 | License, you may add to a covered work material governed by the terms 395 | of that license document, provided that the further restriction does 396 | not survive such relicensing or conveying. 397 | 398 | If you add terms to a covered work in accord with this section, you 399 | must place, in the relevant source files, a statement of the 400 | additional terms that apply to those files, or a notice indicating 401 | where to find the applicable terms. 402 | 403 | Additional terms, permissive or non-permissive, may be stated in the 404 | form of a separately written license, or stated as exceptions; 405 | the above requirements apply either way. 406 | 407 | 8. Termination. 408 | 409 | You may not propagate or modify a covered work except as expressly 410 | provided under this License. Any attempt otherwise to propagate or 411 | modify it is void, and will automatically terminate your rights under 412 | this License (including any patent licenses granted under the third 413 | paragraph of section 11). 414 | 415 | However, if you cease all violation of this License, then your 416 | license from a particular copyright holder is reinstated (a) 417 | provisionally, unless and until the copyright holder explicitly and 418 | finally terminates your license, and (b) permanently, if the copyright 419 | holder fails to notify you of the violation by some reasonable means 420 | prior to 60 days after the cessation. 421 | 422 | Moreover, your license from a particular copyright holder is 423 | reinstated permanently if the copyright holder notifies you of the 424 | violation by some reasonable means, this is the first time you have 425 | received notice of violation of this License (for any work) from that 426 | copyright holder, and you cure the violation prior to 30 days after 427 | your receipt of the notice. 428 | 429 | Termination of your rights under this section does not terminate the 430 | licenses of parties who have received copies or rights from you under 431 | this License. If your rights have been terminated and not permanently 432 | reinstated, you do not qualify to receive new licenses for the same 433 | material under section 10. 434 | 435 | 9. Acceptance Not Required for Having Copies. 436 | 437 | You are not required to accept this License in order to receive or 438 | run a copy of the Program. Ancillary propagation of a covered work 439 | occurring solely as a consequence of using peer-to-peer transmission 440 | to receive a copy likewise does not require acceptance. However, 441 | nothing other than this License grants you permission to propagate or 442 | modify any covered work. These actions infringe copyright if you do 443 | not accept this License. Therefore, by modifying or propagating a 444 | covered work, you indicate your acceptance of this License to do so. 445 | 446 | 10. Automatic Licensing of Downstream Recipients. 447 | 448 | Each time you convey a covered work, the recipient automatically 449 | receives a license from the original licensors, to run, modify and 450 | propagate that work, subject to this License. You are not responsible 451 | for enforcing compliance by third parties with this License. 452 | 453 | An "entity transaction" is a transaction transferring control of an 454 | organization, or substantially all assets of one, or subdividing an 455 | organization, or merging organizations. If propagation of a covered 456 | work results from an entity transaction, each party to that 457 | transaction who receives a copy of the work also receives whatever 458 | licenses to the work the party's predecessor in interest had or could 459 | give under the previous paragraph, plus a right to possession of the 460 | Corresponding Source of the work from the predecessor in interest, if 461 | the predecessor has it or can get it with reasonable efforts. 462 | 463 | You may not impose any further restrictions on the exercise of the 464 | rights granted or affirmed under this License. For example, you may 465 | not impose a license fee, royalty, or other charge for exercise of 466 | rights granted under this License, and you may not initiate litigation 467 | (including a cross-claim or counterclaim in a lawsuit) alleging that 468 | any patent claim is infringed by making, using, selling, offering for 469 | sale, or importing the Program or any portion of it. 470 | 471 | 11. Patents. 472 | 473 | A "contributor" is a copyright holder who authorizes use under this 474 | License of the Program or a work on which the Program is based. The 475 | work thus licensed is called the contributor's "contributor version". 476 | 477 | A contributor's "essential patent claims" are all patent claims 478 | owned or controlled by the contributor, whether already acquired or 479 | hereafter acquired, that would be infringed by some manner, permitted 480 | by this License, of making, using, or selling its contributor version, 481 | but do not include claims that would be infringed only as a 482 | consequence of further modification of the contributor version. For 483 | purposes of this definition, "control" includes the right to grant 484 | patent sublicenses in a manner consistent with the requirements of 485 | this License. 486 | 487 | Each contributor grants you a non-exclusive, worldwide, royalty-free 488 | patent license under the contributor's essential patent claims, to 489 | make, use, sell, offer for sale, import and otherwise run, modify and 490 | propagate the contents of its contributor version. 491 | 492 | In the following three paragraphs, a "patent license" is any express 493 | agreement or commitment, however denominated, not to enforce a patent 494 | (such as an express permission to practice a patent or covenant not to 495 | sue for patent infringement). To "grant" such a patent license to a 496 | party means to make such an agreement or commitment not to enforce a 497 | patent against the party. 498 | 499 | If you convey a covered work, knowingly relying on a patent license, 500 | and the Corresponding Source of the work is not available for anyone 501 | to copy, free of charge and under the terms of this License, through a 502 | publicly available network server or other readily accessible means, 503 | then you must either (1) cause the Corresponding Source to be so 504 | available, or (2) arrange to deprive yourself of the benefit of the 505 | patent license for this particular work, or (3) arrange, in a manner 506 | consistent with the requirements of this License, to extend the patent 507 | license to downstream recipients. "Knowingly relying" means you have 508 | actual knowledge that, but for the patent license, your conveying the 509 | covered work in a country, or your recipient's use of the covered work 510 | in a country, would infringe one or more identifiable patents in that 511 | country that you have reason to believe are valid. 512 | 513 | If, pursuant to or in connection with a single transaction or 514 | arrangement, you convey, or propagate by procuring conveyance of, a 515 | covered work, and grant a patent license to some of the parties 516 | receiving the covered work authorizing them to use, propagate, modify 517 | or convey a specific copy of the covered work, then the patent license 518 | you grant is automatically extended to all recipients of the covered 519 | work and works based on it. 520 | 521 | A patent license is "discriminatory" if it does not include within 522 | the scope of its coverage, prohibits the exercise of, or is 523 | conditioned on the non-exercise of one or more of the rights that are 524 | specifically granted under this License. You may not convey a covered 525 | work if you are a party to an arrangement with a third party that is 526 | in the business of distributing software, under which you make payment 527 | to the third party based on the extent of your activity of conveying 528 | the work, and under which the third party grants, to any of the 529 | parties who would receive the covered work from you, a discriminatory 530 | patent license (a) in connection with copies of the covered work 531 | conveyed by you (or copies made from those copies), or (b) primarily 532 | for and in connection with specific products or compilations that 533 | contain the covered work, unless you entered into that arrangement, 534 | or that patent license was granted, prior to 28 March 2007. 535 | 536 | Nothing in this License shall be construed as excluding or limiting 537 | any implied license or other defenses to infringement that may 538 | otherwise be available to you under applicable patent law. 539 | 540 | 12. No Surrender of Others' Freedom. 541 | 542 | If conditions are imposed on you (whether by court order, agreement or 543 | otherwise) that contradict the conditions of this License, they do not 544 | excuse you from the conditions of this License. If you cannot convey a 545 | covered work so as to satisfy simultaneously your obligations under this 546 | License and any other pertinent obligations, then as a consequence you may 547 | not convey it at all. For example, if you agree to terms that obligate you 548 | to collect a royalty for further conveying from those to whom you convey 549 | the Program, the only way you could satisfy both those terms and this 550 | License would be to refrain entirely from conveying the Program. 551 | 552 | 13. Use with the GNU Affero General Public License. 553 | 554 | Notwithstanding any other provision of this License, you have 555 | permission to link or combine any covered work with a work licensed 556 | under version 3 of the GNU Affero General Public License into a single 557 | combined work, and to convey the resulting work. The terms of this 558 | License will continue to apply to the part which is the covered work, 559 | but the special requirements of the GNU Affero General Public License, 560 | section 13, concerning interaction through a network will apply to the 561 | combination as such. 562 | 563 | 14. Revised Versions of this License. 564 | 565 | The Free Software Foundation may publish revised and/or new versions of 566 | the GNU General Public License from time to time. Such new versions will 567 | be similar in spirit to the present version, but may differ in detail to 568 | address new problems or concerns. 569 | 570 | Each version is given a distinguishing version number. If the 571 | Program specifies that a certain numbered version of the GNU General 572 | Public License "or any later version" applies to it, you have the 573 | option of following the terms and conditions either of that numbered 574 | version or of any later version published by the Free Software 575 | Foundation. If the Program does not specify a version number of the 576 | GNU General Public License, you may choose any version ever published 577 | by the Free Software Foundation. 578 | 579 | If the Program specifies that a proxy can decide which future 580 | versions of the GNU General Public License can be used, that proxy's 581 | public statement of acceptance of a version permanently authorizes you 582 | to choose that version for the Program. 583 | 584 | Later license versions may give you additional or different 585 | permissions. However, no additional obligations are imposed on any 586 | author or copyright holder as a result of your choosing to follow a 587 | later version. 588 | 589 | 15. Disclaimer of Warranty. 590 | 591 | THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY 592 | APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT 593 | HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY 594 | OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, 595 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 596 | PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM 597 | IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF 598 | ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 599 | 600 | 16. Limitation of Liability. 601 | 602 | IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 603 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS 604 | THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY 605 | GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE 606 | USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF 607 | DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD 608 | PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), 609 | EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF 610 | SUCH DAMAGES. 611 | 612 | 17. Interpretation of Sections 15 and 16. 613 | 614 | If the disclaimer of warranty and limitation of liability provided 615 | above cannot be given local legal effect according to their terms, 616 | reviewing courts shall apply local law that most closely approximates 617 | an absolute waiver of all civil liability in connection with the 618 | Program, unless a warranty or assumption of liability accompanies a 619 | copy of the Program in return for a fee. 620 | 621 | END OF TERMS AND CONDITIONS 622 | 623 | How to Apply These Terms to Your New Programs 624 | 625 | If you develop a new program, and you want it to be of the greatest 626 | possible use to the public, the best way to achieve this is to make it 627 | free software which everyone can redistribute and change under these terms. 628 | 629 | To do so, attach the following notices to the program. It is safest 630 | to attach them to the start of each source file to most effectively 631 | state the exclusion of warranty; and each file should have at least 632 | the "copyright" line and a pointer to where the full notice is found. 633 | 634 | 635 | Copyright (C) 636 | 637 | This program is free software: you can redistribute it and/or modify 638 | it under the terms of the GNU General Public License as published by 639 | the Free Software Foundation, either version 3 of the License, or 640 | (at your option) any later version. 641 | 642 | This program is distributed in the hope that it will be useful, 643 | but WITHOUT ANY WARRANTY; without even the implied warranty of 644 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 645 | GNU General Public License for more details. 646 | 647 | You should have received a copy of the GNU General Public License 648 | along with this program. If not, see . 649 | 650 | Also add information on how to contact you by electronic and paper mail. 651 | 652 | If the program does terminal interaction, make it output a short 653 | notice like this when it starts in an interactive mode: 654 | 655 | Copyright (C) 656 | This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 657 | This is free software, and you are welcome to redistribute it 658 | under certain conditions; type `show c' for details. 659 | 660 | The hypothetical commands `show w' and `show c' should show the appropriate 661 | parts of the General Public License. Of course, your program's commands 662 | might be different; for a GUI interface, you would use an "about box". 663 | 664 | You should also get your employer (if you work as a programmer) or school, 665 | if any, to sign a "copyright disclaimer" for the program, if necessary. 666 | For more information on this, and how to apply and follow the GNU GPL, see 667 | . 668 | 669 | The GNU General Public License does not permit incorporating your program 670 | into proprietary programs. If your program is a subroutine library, you 671 | may consider it more useful to permit linking proprietary applications with 672 | the library. If this is what you want to do, use the GNU Lesser General 673 | Public License instead of this License. But first, please read 674 | . 675 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # @sushiswap/default-token-list 2 | 3 | [![Tests](https://github.com/sushiswap/token-lists/workflows/Tests/badge.svg)](https://github.com/sushiswap/default-token-list/actions?query=workflow%3ATests) 4 | [![npm](https://img.shields.io/npm/v/@sushiswap/default-token-list)](https://unpkg.com/@sushiswap/default-token-list@latest/) 5 | 6 | This NPM module and GitHub repo contains the default token list used in the SushiSwap interface. 7 | 8 | ## Adding a token 9 | 10 | To request that we add a token to the list, 11 | [file an issue](https://github.com/sushiswap/default-token-list/issues/new?assignees=&labels=token+request&template=token-request.md&title=Add+%7BTOKEN_SYMBOL%7D%3A+%7BTOKEN_NAME%7D). 12 | 13 | ### Disclaimer 14 | 15 | Note filing an issue does not guarantee addition to this default token list. 16 | We do not review token addition requests in any particular order, and we do not 17 | guarantee that we will review your request to add the token to the default list. 18 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@sushiswap/default-token-list", 3 | "version": "5.10.0", 4 | "description": "◦ The SushiSwap default token list", 5 | "main": "build/sushiswap-default.tokenlist.json", 6 | "scripts": { 7 | "test": "mocha", 8 | "build": "rimraf build && mkdir -p build && node src/write.js > build/sushiswap-default.tokenlist.json", 9 | "prepublishOnly": "npm test && npm run build" 10 | }, 11 | "files": [ 12 | "build/sushiswap-default.tokenlist.json" 13 | ], 14 | "repository": { 15 | "type": "git", 16 | "url": "git+https://github.com/sushiswap/default-token-list.git" 17 | }, 18 | "keywords": [ 19 | "sushiswap", 20 | "default", 21 | "token", 22 | "list" 23 | ], 24 | "author": "Matthew Lilley ", 25 | "license": "GPL-3.0-or-later", 26 | "bugs": { 27 | "url": "https://github.com/sushiswap/default-token-list/issues" 28 | }, 29 | "homepage": "https://github.com/sushiswap/default-token-list#readme", 30 | "devDependencies": { 31 | "@ethersproject/address": "^5.0.2", 32 | "@uniswap/token-lists": "^1.0.0-beta.19", 33 | "ajv": "^6.12.3", 34 | "chai": "^4.2.0", 35 | "mocha": "^8.0.1", 36 | "rimraf": "^3.0.2" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/buildList.js: -------------------------------------------------------------------------------- 1 | const { version } = require("../package.json"); 2 | 3 | const mainnet = require("./tokens/mainnet.json"); 4 | const ropsten = require("./tokens/ropsten.json"); 5 | const rinkeby = require("./tokens/rinkeby.json"); 6 | const goerli = require("./tokens/goerli.json"); 7 | const kovan = require("./tokens/kovan.json"); 8 | const fantom = require("./tokens/fantom.json"); 9 | const fantomTestnet = require("./tokens/fantom-testnet.json"); 10 | const matic = require("./tokens/matic.json"); 11 | const maticTestnet = require("./tokens/matic-testnet.json"); 12 | const xdai = require("./tokens/xdai.json"); 13 | const bsc = require("./tokens/bsc.json"); 14 | const bscTestnet = require("./tokens/bsc-testnet.json"); 15 | const moonbase = require("./tokens/moonbase.json"); 16 | const avalanche = require("./tokens/avalanche.json"); 17 | const fuji = require("./tokens/fuji.json"); 18 | const heco = require("./tokens/heco.json"); 19 | const hecoTestnet = require("./tokens/heco-testnet.json"); 20 | const harmony = require("./tokens/harmony.json"); 21 | const harmonyTestnet = require("./tokens/harmony-testnet.json"); 22 | 23 | module.exports = function buildList() { 24 | const parsed = version.split("."); 25 | return { 26 | name: "SushiSwap Menu", 27 | timestamp: new Date().toISOString(), 28 | version: { 29 | major: +parsed[0], 30 | minor: +parsed[1], 31 | patch: +parsed[2], 32 | }, 33 | tags: {}, 34 | logoURI: "https://raw.githubusercontent.com/sushiswap/art/master/sushi/logo-256x256.png", 35 | keywords: ["sushiswap", "default"], 36 | tokens: [ 37 | ...mainnet, 38 | ...ropsten, 39 | ...goerli, 40 | ...kovan, 41 | ...rinkeby, 42 | ...fantom, 43 | ...fantomTestnet, 44 | ...matic, 45 | ...maticTestnet, 46 | ...xdai, 47 | ...bsc, 48 | ...bscTestnet, 49 | ...moonbase, 50 | ...avalanche, 51 | ...fuji, 52 | ...heco, 53 | ...hecoTestnet, 54 | ...harmony, 55 | ...harmonyTestnet 56 | ] 57 | // sort them by symbol for easy readability 58 | .sort((t1, t2) => { 59 | if (t1.chainId === t2.chainId) { 60 | return t1.symbol.toLowerCase() < t2.symbol.toLowerCase() ? -1 : 1; 61 | } 62 | return t1.chainId < t2.chainId ? -1 : 1; 63 | }), 64 | }; 65 | }; 66 | -------------------------------------------------------------------------------- /src/tokens/bsc-testnet.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "WBNB Token", 4 | "symbol": "WBNB", 5 | "address": "0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd", 6 | "chainId": 97, 7 | "decimals": 18, 8 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/binance/info/logo.png" 9 | }, 10 | { 11 | "name": "BUSD Token", 12 | "symbol": "BUSD", 13 | "address": "0xeD24FC36d5Ee211Ea25A80239Fb8C4Cfd80f12Ee", 14 | "chainId": 97, 15 | "decimals": 18, 16 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/binance/assets/BUSD-BD1/logo.png" 17 | }, 18 | { 19 | "name": "USDT Token", 20 | "symbol": "USDT", 21 | "address": "0x337610d27c682E347C9cD60BD4b3b107C9d34dDd", 22 | "chainId": 97, 23 | "decimals": 18, 24 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/binance/assets/USDT-6D8/logo.png" 25 | } 26 | ] 27 | -------------------------------------------------------------------------------- /src/tokens/bsc.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Bakery Token", 4 | "symbol": "BAKE", 5 | "address": "0xE02dF9e3e622DeBdD69fb838bB799E3F168902c5", 6 | "chainId": 56, 7 | "decimals": 18, 8 | "logoURI": "https://bscscan.com/token/images/bakeryswap_32.png" 9 | }, 10 | { 11 | "name": "BUSD Token", 12 | "symbol": "BUSD", 13 | "address": "0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56", 14 | "chainId": 56, 15 | "decimals": 18, 16 | "logoURI": "https://bscscan.com/token/images/busd_32.png" 17 | }, 18 | { 19 | "name": "Ethereum Token", 20 | "symbol": "ETH", 21 | "address": "0x2170Ed0880ac9A755fd29B2688956BD959F933F8", 22 | "chainId": 56, 23 | "decimals": 18, 24 | "logoURI": "https://bscscan.com/token/images/ethereum_32.png" 25 | }, 26 | { 27 | "name": "BTCB Token", 28 | "symbol": "BTCB", 29 | "address": "0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c", 30 | "chainId": 56, 31 | "decimals": 18, 32 | "logoURI": "https://bscscan.com/token/images/btcb_32.png" 33 | }, 34 | { 35 | "name": "BAND Protocol Token", 36 | "symbol": "BAND", 37 | "address": "0xAD6cAEb32CD2c308980a548bD0Bc5AA4306c6c18", 38 | "chainId": 56, 39 | "decimals": 18, 40 | "logoURI": "https://bscscan.com/token/images/bandtoken_32.png" 41 | }, 42 | { 43 | "name": "EOS Token", 44 | "symbol": "EOS", 45 | "address": "0x56b6fB708fC5732DEC1Afc8D8556423A2EDcCbD6", 46 | "chainId": 56, 47 | "decimals": 18, 48 | "logoURI": "https://bscscan.com/token/images/eos_32.png" 49 | }, 50 | { 51 | "name": "Tether USD", 52 | "symbol": "USDT", 53 | "address": "0x55d398326f99059fF775485246999027B3197955", 54 | "chainId": 56, 55 | "decimals": 18, 56 | "logoURI": "https://bscscan.com/token/images/busdt_32.png" 57 | }, 58 | { 59 | "name": "XRP Token", 60 | "symbol": "XRP", 61 | "address": "0x1D2F0da169ceB9fC7B3144628dB156f3F6c60dBE", 62 | "chainId": 56, 63 | "decimals": 18, 64 | "logoURI": "https://bscscan.com/token/images/xrp_32.png" 65 | }, 66 | { 67 | "name": "Bitcoin Cash Token", 68 | "symbol": "BCH", 69 | "address": "0x8fF795a6F4D97E7887C79beA79aba5cc76444aDf", 70 | "chainId": 56, 71 | "decimals": 18, 72 | "logoURI": "https://bscscan.com/token/images/bitcoincash_32.png" 73 | }, 74 | { 75 | "name": "Litecoin Token", 76 | "symbol": "LTC", 77 | "address": "0x4338665CBB7B2485A8855A139b75D5e34AB0DB94", 78 | "chainId": 56, 79 | "decimals": 18, 80 | "logoURI": "https://bscscan.com/token/images/litecoin_32.png" 81 | }, 82 | { 83 | "name": "Cardano Token", 84 | "symbol": "ADA", 85 | "address": "0x3EE2200Efb3400fAbB9AacF31297cBdD1d435D47", 86 | "chainId": 56, 87 | "decimals": 18, 88 | "logoURI": "https://bscscan.com/token/images/cardano_32.png" 89 | }, 90 | { 91 | "name": "Cosmos Token", 92 | "symbol": "ATOM", 93 | "address": "0x0Eb3a705fc54725037CC9e008bDede697f62F335", 94 | "chainId": 56, 95 | "decimals": 18, 96 | "logoURI": "https://bscscan.com/token/images/cosmos_32.png" 97 | }, 98 | { 99 | "name": "Tezos Token", 100 | "symbol": "XTZ", 101 | "address": "0x16939ef78684453bfDFb47825F8a5F714f12623a", 102 | "chainId": 56, 103 | "decimals": 18, 104 | "logoURI": "https://bscscan.com/token/images/tezos_32.png" 105 | }, 106 | { 107 | "name": "Ontology Token", 108 | "symbol": "ONT", 109 | "address": "0xFd7B3A77848f1C2D67E05E54d78d174a0C850335", 110 | "chainId": 56, 111 | "decimals": 18, 112 | "logoURI": "https://bscscan.com/token/images/ontology_32.png" 113 | }, 114 | { 115 | "name": "Zcash Token", 116 | "symbol": "ZEC", 117 | "address": "0x1Ba42e5193dfA8B03D15dd1B86a3113bbBEF8Eeb", 118 | "chainId": 56, 119 | "decimals": 18, 120 | "logoURI": "https://bscscan.com/token/images/zcash_32.png" 121 | }, 122 | { 123 | "name": "Dai Token", 124 | "symbol": "DAI", 125 | "address": "0x1AF3F329e8BE154074D8769D1FFa4eE058B1DBc3", 126 | "chainId": 56, 127 | "decimals": 18, 128 | "logoURI": "https://bscscan.com/token/images/dai_32.png" 129 | }, 130 | { 131 | "name": "YFII.finance Token", 132 | "symbol": "YFII", 133 | "address": "0x7F70642d88cf1C4a3a7abb072B53B929b653edA5", 134 | "chainId": 56, 135 | "decimals": 18, 136 | "logoURI": "https://bscscan.com/token/images/dfimoney_32.png" 137 | }, 138 | { 139 | "name": "Cream", 140 | "symbol": "CREAM", 141 | "address": "0xd4CB328A82bDf5f03eB737f37Fa6B370aef3e888", 142 | "chainId": 56, 143 | "decimals": 18, 144 | "logoURI": "https://bscscan.com/token/images/creamfinance_32.png" 145 | }, 146 | { 147 | "name": "Prometeus", 148 | "symbol": "PROM", 149 | "address": "0xaF53d56ff99f1322515E54FdDE93FF8b3b7DAFd5", 150 | "chainId": 56, 151 | "decimals": 18, 152 | "logoURI": "https://bscscan.com/token/images/Prometeus_32.png" 153 | }, 154 | { 155 | "name": "CanYaCoin", 156 | "symbol": "CAN", 157 | "address": "0x007EA5C0Ea75a8DF45D288a4debdD5bb633F9e56", 158 | "chainId": 56, 159 | "decimals": 18, 160 | "logoURI": "https://bscscan.com/token/images/canya_32.png" 161 | }, 162 | { 163 | "name": "Polkadot Token", 164 | "symbol": "DOT", 165 | "address": "0x7083609fCE4d1d8Dc0C979AAb8c869Ea2C873402", 166 | "chainId": 56, 167 | "decimals": 18, 168 | "logoURI": "https://bscscan.com/token/images/polkadot_32.png" 169 | }, 170 | { 171 | "name": "PancakeSwap Token", 172 | "symbol": "CAKE", 173 | "address": "0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82", 174 | "chainId": 56, 175 | "decimals": 18, 176 | "logoURI": "https://bscscan.com/token/images/pancake_32.png" 177 | }, 178 | { 179 | "name": "Streamity", 180 | "symbol": "STM", 181 | "address": "0x90DF11a8ccE420675e73922419e3f4f3Fe13CCCb", 182 | "chainId": 56, 183 | "decimals": 18, 184 | "logoURI": "https://bscscan.com/token/images/streamity_32.png" 185 | }, 186 | { 187 | "name": "Ankr", 188 | "symbol": "ANKR", 189 | "address": "0xf307910A4c7bbc79691fD374889b36d8531B08e3", 190 | "chainId": 56, 191 | "decimals": 18, 192 | "logoURI": "https://bscscan.com/token/images/ankr_32.png" 193 | }, 194 | { 195 | "name": "ChainLink Token", 196 | "symbol": "LINK", 197 | "address": "0xF8A0BF9cF54Bb92F17374d9e9A321E6a111a51bD", 198 | "chainId": 56, 199 | "decimals": 18, 200 | "logoURI": "https://bscscan.com/token/images/chainlink_32.png" 201 | }, 202 | { 203 | "name": "Burger Swap", 204 | "symbol": "BURGER", 205 | "address": "0xAe9269f27437f0fcBC232d39Ec814844a51d6b8f", 206 | "chainId": 56, 207 | "decimals": 18, 208 | "logoURI": "https://bscscan.com/token/images/burgerswap_32.png" 209 | }, 210 | { 211 | "name": "Dice.finance Token", 212 | "symbol": "DICE", 213 | "address": "0x748AD98b14C814B28812eB42ad219C8672909879", 214 | "chainId": 56, 215 | "decimals": 18, 216 | "logoURI": "https://assets.coingecko.com/coins/images/12233/small/dice2.png?1598344967" 217 | }, 218 | { 219 | "name": "JNTR/b", 220 | "symbol": "JNTR/b", 221 | "address": "0x3c037C4c2296f280bB318D725D0b454B76c199b9", 222 | "chainId": 56, 223 | "decimals": 18, 224 | "logoURI": "https://assets.coingecko.com/coins/images/12830/small/jntr_logo.jpg?1602837322" 225 | }, 226 | { 227 | "name": "SPARTAN PROTOCOL TOKEN", 228 | "symbol": "SPARTA", 229 | "address": "0xE4Ae305ebE1AbE663f261Bc00534067C80ad677C", 230 | "chainId": 56, 231 | "decimals": 18, 232 | "logoURI": "https://assets.coingecko.com/coins/images/12638/small/1*OWy3ohA24pht-tFypfs-Tg.png?1601364302" 233 | }, 234 | { 235 | "name": "Trust Wallet", 236 | "symbol": "TWT", 237 | "address": "0x4B0F1812e5Df2A09796481Ff14017e6005508003", 238 | "chainId": 56, 239 | "decimals": 18, 240 | "logoURI": "https://bscscan.com/token/images/trust_32.png" 241 | }, 242 | { 243 | "name": "Venus", 244 | "symbol": "XVS", 245 | "address": "0xcF6BB5389c92Bdda8a3747Ddb454cB7a64626C63", 246 | "chainId": 56, 247 | "decimals": 18, 248 | "logoURI": "https://bscscan.com/token/images/venus_32.png" 249 | }, 250 | { 251 | "name": "AlphaToken", 252 | "symbol": "ALPHA", 253 | "address": "0xa1faa113cbE53436Df28FF0aEe54275c13B40975", 254 | "chainId": 56, 255 | "decimals": 18, 256 | "logoURI": "https://bscscan.com/token/images/alpha_32.png" 257 | }, 258 | { 259 | "name": "Beefy.finance", 260 | "symbol": "BIFI", 261 | "address": "0xCa3F508B8e4Dd382eE878A314789373D80A5190A", 262 | "chainId": 56, 263 | "decimals": 18, 264 | "logoURI": "https://assets.coingecko.com/coins/images/12704/small/token.png?1601876182" 265 | }, 266 | { 267 | "name": "yearn.finance", 268 | "symbol": "YFI", 269 | "address": "0x88f1A5ae2A3BF98AEAF342D26B30a79438c9142e", 270 | "chainId": 56, 271 | "decimals": 18, 272 | "logoURI": "https://bscscan.com/token/images/yfi_32.png" 273 | }, 274 | { 275 | "name": "Uniswap", 276 | "symbol": "UNI", 277 | "address": "0xBf5140A22578168FD562DCcF235E5D43A02ce9B1", 278 | "chainId": 56, 279 | "decimals": 18, 280 | "logoURI": "https://bscscan.com/token/images/uniswap_32.png" 281 | }, 282 | { 283 | "name": "fry.world", 284 | "symbol": "FRIES", 285 | "address": "0x393B312C01048b3ed2720bF1B090084C09e408A1", 286 | "chainId": 56, 287 | "decimals": 18, 288 | "logoURI": "https://assets.coingecko.com/coins/images/12741/small/fries_logo.png?1602147631" 289 | }, 290 | { 291 | "name": "StableXSwap", 292 | "symbol": "STAX", 293 | "address": "0x0Da6Ed8B13214Ff28e9Ca979Dd37439e8a88F6c4", 294 | "chainId": 56, 295 | "decimals": 18, 296 | "logoURI": "https://bscscan.com/token/images/stablexswap_32.png" 297 | }, 298 | { 299 | "name": "Filecoin", 300 | "symbol": "FIL", 301 | "address": "0x0D8Ce2A99Bb6e3B7Db580eD848240e4a0F9aE153", 302 | "chainId": 56, 303 | "decimals": 18, 304 | "logoURI": "https://assets.coingecko.com/coins/images/12817/small/filecoin.png?1602753933" 305 | }, 306 | { 307 | "name": "KAVA", 308 | "symbol": "KAVA", 309 | "address": "0x5F88AB06e8dfe89DF127B2430Bba4Af600866035", 310 | "chainId": 56, 311 | "decimals": 6, 312 | "logoURI": "https://assets.coingecko.com/coins/images/9761/small/Kava-icon.png?1585636197" 313 | }, 314 | { 315 | "name": "USDX", 316 | "symbol": "USDX", 317 | "address": "0x1203355742e76875154C0D13eB81DCD7711dC7d9", 318 | "chainId": 56, 319 | "decimals": 6, 320 | "logoURI": "https://assets.coingecko.com/coins/images/13056/small/USDX_coin.png?1604734048" 321 | }, 322 | { 323 | "name": "Injective Protocol", 324 | "symbol": "INJ", 325 | "address": "0xa2B726B1145A4773F68593CF171187d8EBe4d495", 326 | "chainId": 56, 327 | "decimals": 18, 328 | "logoURI": "https://assets.coingecko.com/coins/images/12882/small/Injective_Icon.png?1613669548" 329 | }, 330 | { 331 | "name": "Swipe", 332 | "symbol": "SXP", 333 | "address": "0x47BEAd2563dCBf3bF2c9407fEa4dC236fAbA485A", 334 | "chainId": 56, 335 | "decimals": 18, 336 | "logoURI": "https://assets.coingecko.com/coins/images/9368/small/swipe.png?1566792311" 337 | }, 338 | { 339 | "name": "Binance-Peg USD Coin", 340 | "symbol": "USDC", 341 | "address": "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d", 342 | "chainId": 56, 343 | "decimals": 18, 344 | "logoURI": "https://bscscan.com/token/images/centre-usdc_28.png" 345 | }, 346 | { 347 | "name": "CertiK Token", 348 | "symbol": "CTK", 349 | "address": "0xA8c2B8eec3d368C0253ad3dae65a5F2BBB89c929", 350 | "chainId": 56, 351 | "decimals": 6, 352 | "logoURI": "https://assets.coingecko.com/coins/images/12944/small/CertiK_Foundation_icon_96_96_-_round.png?1603772980" 353 | }, 354 | { 355 | "name": "NAR Token", 356 | "symbol": "NAR", 357 | "address": "0xA1303E6199b319a891b79685F0537D289af1FC83", 358 | "chainId": 56, 359 | "decimals": 18, 360 | "logoURI": "https://assets.coingecko.com/coins/images/13367/small/2XylnQL.png?1607923179" 361 | }, 362 | { 363 | "name": "Nyanswop Token", 364 | "symbol": "NYA", 365 | "address": "0xbFa0841F7a90c4CE6643f651756EE340991F99D5", 366 | "chainId": 56, 367 | "decimals": 18, 368 | "logoURI": "https://assets.coingecko.com/coins/images/13025/small/512x512_App_Icon.png?1604456222" 369 | }, 370 | { 371 | "name": "HARD", 372 | "symbol": "HARD", 373 | "address": "0xf79037F6f6bE66832DE4E7516be52826BC3cBcc4", 374 | "chainId": 56, 375 | "decimals": 6, 376 | "logoURI": "https://assets.coingecko.com/coins/images/13008/small/HARD_coin_256.png?1604733983" 377 | }, 378 | { 379 | "name": "ROOBEE", 380 | "symbol": "bROOBEE", 381 | "address": "0xE64F5Cb844946C1F102Bd25bBD87a5aB4aE89Fbe", 382 | "chainId": 56, 383 | "decimals": 18, 384 | "logoURI": "https://assets.coingecko.com/coins/images/8791/small/Group_11.png?1580344629" 385 | }, 386 | { 387 | "name": "Unifi Token", 388 | "symbol": "UNFI", 389 | "address": "0x728C5baC3C3e370E372Fc4671f9ef6916b814d8B", 390 | "chainId": 56, 391 | "decimals": 18, 392 | "logoURI": "https://assets.coingecko.com/coins/images/13152/small/logo-2.png?1605748967" 393 | }, 394 | { 395 | "name": "BLINk", 396 | "symbol": "BLK", 397 | "address": "0x63870A18B6e42b01Ef1Ad8A2302ef50B7132054F", 398 | "chainId": 56, 399 | "decimals": 6, 400 | "logoURI": "https://bscscan.com/token/images/blink_32.png" 401 | }, 402 | { 403 | "name": "QUSD Stablecoin", 404 | "symbol": "QUSD", 405 | "address": "0xb8C540d00dd0Bf76ea12E4B4B95eFC90804f924E", 406 | "chainId": 56, 407 | "decimals": 18, 408 | "logoURI": "https://bscscan.com/token/images/qianfinance_32.png" 409 | }, 410 | { 411 | "name": "Qian Governance Token", 412 | "symbol": "KUN", 413 | "address": "0x1A2fb0Af670D0234c2857FaD35b789F8Cb725584", 414 | "chainId": 56, 415 | "decimals": 18, 416 | "logoURI": "https://assets.coingecko.com/coins/images/13177/small/kun_logo.png?1605923919" 417 | }, 418 | { 419 | "name": "VAI Stablecoin", 420 | "symbol": "VAI", 421 | "address": "0x4BD17003473389A42DAF6a0a729f6Fdb328BbBd7", 422 | "chainId": 56, 423 | "decimals": 18, 424 | "logoURI": "https://assets.coingecko.com/coins/images/13861/small/VAI_logo.png?1612413571" 425 | }, 426 | { 427 | "name": "Juventus", 428 | "symbol": "JUV", 429 | "address": "0xC40C9A843E1c6D01b7578284a9028854f6683b1B", 430 | "chainId": 56, 431 | "decimals": 2, 432 | "logoURI": "https://assets.coingecko.com/coins/images/10060/small/Juve-10.png?1604737154" 433 | }, 434 | { 435 | "name": "Paris Saint-Germain", 436 | "symbol": "PSG", 437 | "address": "0xBc5609612b7C44BEf426De600B5fd1379DB2EcF1", 438 | "chainId": 56, 439 | "decimals": 2, 440 | "logoURI": "https://assets.coingecko.com/coins/images/11620/small/psg.png?1592023100" 441 | }, 442 | { 443 | "name": "Ditto", 444 | "symbol": "DITTO", 445 | "address": "0x233d91A0713155003fc4DcE0AFa871b508B3B715", 446 | "chainId": 56, 447 | "decimals": 9, 448 | "logoURI": "https://assets.coingecko.com/coins/images/13463/small/ditto.png?1608766914" 449 | }, 450 | { 451 | "name": "Math", 452 | "symbol": "MATH", 453 | "address": "0xF218184Af829Cf2b0019F8E6F0b2423498a36983", 454 | "chainId": 56, 455 | "decimals": 18, 456 | "logoURI": "https://assets.coingecko.com/coins/images/11335/small/2020-05-19-token-200.png?1589940590" 457 | }, 458 | { 459 | "name": "Fuel", 460 | "symbol": "FUEL", 461 | "address": "0x2090c8295769791ab7A3CF1CC6e0AA19F35e441A", 462 | "chainId": 56, 463 | "decimals": 18, 464 | "logoURI": "https://assets.coingecko.com/coins/images/13305/small/bW_WB5Rz_400x400.jpg?1607325041" 465 | }, 466 | { 467 | "name": "Nuls", 468 | "symbol": "NULS", 469 | "address": "0x8CD6e29d3686d24d3C2018CEe54621eA0f89313B", 470 | "chainId": 56, 471 | "decimals": 8, 472 | "logoURI": "https://assets.coingecko.com/coins/images/1053/small/Nuls.png?1556868153" 473 | }, 474 | { 475 | "name": "NerveNetwork", 476 | "symbol": "NVT", 477 | "address": "0xf0E406c49C63AbF358030A299C0E00118C4C6BA5", 478 | "chainId": 56, 479 | "decimals": 8, 480 | "logoURI": "https://assets.coingecko.com/coins/images/11873/small/NerveNetwork.png?1595541544" 481 | }, 482 | { 483 | "name": "Reef", 484 | "symbol": "REEF", 485 | "address": "0xF21768cCBC73Ea5B6fd3C687208a7c2def2d966e", 486 | "chainId": 56, 487 | "decimals": 18, 488 | "logoURI": "https://assets.coingecko.com/coins/images/13504/small/Group_10572.png?1610534130" 489 | }, 490 | { 491 | "name": "OG", 492 | "symbol": "OG", 493 | "address": "0xf05E45aD22150677a017Fbd94b84fBB63dc9b44c", 494 | "chainId": 56, 495 | "decimals": 2, 496 | "logoURI": "https://bscscan.com/token/images/ogfan_32.png" 497 | }, 498 | { 499 | "name": "Atletico de Madrid", 500 | "symbol": "ATM", 501 | "address": "0x25E9d05365c867E59C1904E7463Af9F312296f9E", 502 | "chainId": 56, 503 | "decimals": 2, 504 | "logoURI": "https://assets.coingecko.com/coins/images/11689/small/Atletico-10.png?1604941960" 505 | }, 506 | { 507 | "name": "AS Roma", 508 | "symbol": "ASR", 509 | "address": "0x80D5f92C2c8C682070C95495313dDB680B267320", 510 | "chainId": 56, 511 | "decimals": 2, 512 | "logoURI": "https://assets.coingecko.com/coins/images/11688/small/Roma-10.png?1604941843" 513 | }, 514 | { 515 | "name": "AllianceBlock", 516 | "symbol": "bALBT", 517 | "address": "0x72fAa679E1008Ad8382959FF48E392042A8b06f7", 518 | "chainId": 56, 519 | "decimals": 18, 520 | "logoURI": "https://assets.coingecko.com/coins/images/12392/small/alliance_block_logo.jpg?1599546617g" 521 | }, 522 | { 523 | "name": "Tenet", 524 | "symbol": "TEN", 525 | "address": "0xdFF8cb622790b7F92686c722b02CaB55592f152C", 526 | "chainId": 56, 527 | "decimals": 18, 528 | "logoURI": "https://assets.coingecko.com/coins/images/13545/small/iMqC3F_p_400x400.png?1609711856" 529 | }, 530 | { 531 | "name": "Helmet.insure", 532 | "symbol": "Helmet", 533 | "address": "0x948d2a81086A075b3130BAc19e4c6DEe1D2E3fE8", 534 | "chainId": 56, 535 | "decimals": 18, 536 | "logoURI": "https://assets.coingecko.com/coins/images/13680/small/ZMdK-1J4_400x400.png?1610834469" 537 | }, 538 | { 539 | "name": "BSCEX", 540 | "symbol": "BSCX", 541 | "address": "0x5Ac52EE5b2a633895292Ff6d8A89bB9190451587", 542 | "chainId": 56, 543 | "decimals": 18, 544 | "logoURI": "https://bscscan.com/token/images/bscex_32.png" 545 | }, 546 | { 547 | "name": "Standard BTC Hashrate Token", 548 | "symbol": "BTCST", 549 | "address": "0x78650B139471520656b9E7aA7A5e9276814a38e9", 550 | "chainId": 56, 551 | "decimals": 18, 552 | "logoURI": "https://assets.coingecko.com/coins/images/13636/small/btcst-coin.png?1610501705" 553 | }, 554 | { 555 | "name": "Frontier Token", 556 | "symbol": "FRONT", 557 | "address": "0x928e55daB735aa8260AF3cEDadA18B5f70C72f1b", 558 | "chainId": 56, 559 | "decimals": 18, 560 | "logoURI": "https://assets.coingecko.com/coins/images/12479/small/frontier_logo.png?1600145472" 561 | }, 562 | { 563 | "name": "Soteria", 564 | "symbol": "wSOTE", 565 | "address": "0x541E619858737031A1244A5d0Cd47E5ef480342c", 566 | "chainId": 56, 567 | "decimals": 18, 568 | "logoURI": "https://assets.coingecko.com/coins/images/13840/small/V9gQH1KZ_400x400.jpg?1612251776" 569 | }, 570 | { 571 | "name": "Mirror TSLA Token", 572 | "symbol": "mTSLA", 573 | "address": "0xF215A127A196e3988C09d052e16BcFD365Cd7AA3", 574 | "chainId": 56, 575 | "decimals": 18, 576 | "logoURI": "https://bscscan.com/token/images/mirror-tsla_32.png" 577 | }, 578 | { 579 | "name": "Mirror AMZN Token", 580 | "symbol": "mAMZN", 581 | "address": "0x3947B992DC0147D2D89dF0392213781b04B25075", 582 | "chainId": 56, 583 | "decimals": 18, 584 | "logoURI": "https://bscscan.com/token/images/mirror-amzn_32.png" 585 | }, 586 | { 587 | "name": "Mirror NFLX Token", 588 | "symbol": "mNFLX", 589 | "address": "0xa04F060077D90Fe2647B61e4dA4aD1F97d6649dc", 590 | "chainId": 56, 591 | "decimals": 18, 592 | "logoURI": "https://bscscan.com/token/images/mirror-nflx_32.png" 593 | }, 594 | { 595 | "name": "Mirror GOOGL Token", 596 | "symbol": "mGOOGL", 597 | "address": "0x62D71B23bF15218C7d2D7E48DBbD9e9c650B173f", 598 | "chainId": 56, 599 | "decimals": 18, 600 | "logoURI": "https://bscscan.com/token/images/mirror-google_32.png" 601 | }, 602 | { 603 | "name": "UST Token", 604 | "symbol": "UST", 605 | "address": "0x23396cF899Ca06c4472205fC903bDB4de249D6fC", 606 | "chainId": 56, 607 | "decimals": 18, 608 | "logoURI": "https://bscscan.com/token/images/terra-ust_32.png" 609 | }, 610 | { 611 | "name": "WBNB Token", 612 | "symbol": "WBNB", 613 | "address": "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c", 614 | "chainId": 56, 615 | "decimals": 18, 616 | "logoURI": "https://bscscan.com/token/images/binance_32.png" 617 | } 618 | ] 619 | -------------------------------------------------------------------------------- /src/tokens/fantom-testnet.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped Fantom", 4 | "address": "0xf1277d1Ed8AD466beddF92ef448A132661956621", 5 | "symbol": "WFTM", 6 | "decimals": 18, 7 | "chainId": 4002, 8 | "logoURI": "https://cryptologos.cc/logos/fantom-ftm-logo.svg?v=003" 9 | }, 10 | { 11 | "name": "Fantom USD", 12 | "address": "0x91ea991bd52EE3C40EdA2509701d905e1Ee54074", 13 | "symbol": "FUSD", 14 | "decimals": 18, 15 | "chainId": 4002, 16 | "logoURI": "https://cdn.worldvectorlogo.com/logos/usd-1.svg" 17 | } 18 | ] 19 | -------------------------------------------------------------------------------- /src/tokens/fantom.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped Fantom", 4 | "address": "0x21be370D5312f44cB42ce377BC9b8a0cEF1A4C83", 5 | "symbol": "WFTM", 6 | "decimals": 18, 7 | "chainId": 250, 8 | "logoURI": "https://ftmscan.com/token/images/wFtm_32.png" 9 | }, 10 | { 11 | "name": "Staked FTM", 12 | "address": "0x69c744D3444202d35a2783929a0F930f2FBB05ad", 13 | "symbol": "sFTM", 14 | "decimals": 18, 15 | "chainId": 250, 16 | "logoURI": "https://repository.fantom.network/logos/sftm.svg" 17 | }, 18 | { 19 | "name": "fWTI Oil", 20 | "address": "0xe297e06761a5489380538A0308B6F9b4A53Bea45", 21 | "symbol": "fWTIOIL", 22 | "decimals": 18, 23 | "chainId": 250, 24 | "logoURI": "https://repository.fantom.network/logos/wti.svg" 25 | }, 26 | { 27 | "name": "Fantom USD", 28 | "address": "0xAd84341756Bf337f5a0164515b1f6F993D194E1f", 29 | "symbol": "fUSD", 30 | "decimals": 18, 31 | "chainId": 250, 32 | "logoURI": "https://ftmscan.com/token/images/fUSD_32.png" 33 | }, 34 | { 35 | "name": "fSilver", 36 | "address": "0xf15e88EEf35BF4709A4C3E99c00358F9247D4531", 37 | "symbol": "fSILVER", 38 | "decimals": 18, 39 | "chainId": 250, 40 | "logoURI": "https://repository.fantom.network/logos/silver.svg" 41 | }, 42 | { 43 | "name": "fLINK", 44 | "address": "0xA649A19423052dC6b320360B3C760884E095AC57", 45 | "symbol": "fLINK", 46 | "decimals": 18, 47 | "chainId": 250, 48 | "logoURI": "https://repository.fantom.network/logos/link.svg" 49 | }, 50 | { 51 | "name": "fKRW", 52 | "address": "0x2b9C073Ec670b70F417bbaf3BbB052AA563A0a23", 53 | "symbol": "fKRW", 54 | "decimals": 18, 55 | "chainId": 250, 56 | "logoURI": "https://repository.fantom.network/logos/krw.svg" 57 | }, 58 | { 59 | "name": "fJPY", 60 | "address": "0x3B74389bc23057325BaB96523DBec8c445F55799", 61 | "symbol": "fJPY", 62 | "decimals": 18, 63 | "chainId": 250, 64 | "logoURI": "https://repository.fantom.network/logos/jpy.svg" 65 | }, 66 | { 67 | "name": "fGold", 68 | "address": "0x2202C52C9076A49400aaccf159e1956269eaa673", 69 | "symbol": "fGOLD", 70 | "decimals": 18, 71 | "chainId": 250, 72 | "logoURI": "https://repository.fantom.network/logos/gold.svg" 73 | }, 74 | { 75 | "name": "fGBP", 76 | "address": "0xcDE58e4B6c7b78B04da664Edb0a9752CC5FEDBd5", 77 | "symbol": "fGBP", 78 | "decimals": 18, 79 | "chainId": 250, 80 | "logoURI": "https://repository.fantom.network/logos/gbp.svg" 81 | }, 82 | { 83 | "name": "fEUR", 84 | "address": "0xe105621721D1293c27be7718e041a4Ce0EbB227E", 85 | "symbol": "fEUR", 86 | "decimals": 18, 87 | "chainId": 250, 88 | "logoURI": "https://repository.fantom.network/logos/euro.svg" 89 | }, 90 | { 91 | "name": "fETH", 92 | "address": "0x658b0c7613e890EE50B8C4BC6A3f41ef411208aD", 93 | "symbol": "fETH", 94 | "decimals": 18, 95 | "chainId": 250, 96 | "logoURI": "https://repository.fantom.network/logos/eth.svg" 97 | }, 98 | { 99 | "name": "fCNY", 100 | "address": "0x24d39324CF3697Fd9Fd78714E8cdeB5Df66E3DCd", 101 | "symbol": "fCNY", 102 | "decimals": 18, 103 | "chainId": 250, 104 | "logoURI": "https://repository.fantom.network/logos/cny.svg" 105 | }, 106 | { 107 | "name": "fCHF", 108 | "address": "0x81740D647493a61329E1c574A11ee7577659fb14", 109 | "symbol": "fCHF", 110 | "decimals": 18, 111 | "chainId": 250, 112 | "logoURI": "https://repository.fantom.network/logos/chf.svg" 113 | }, 114 | { 115 | "name": "fBTC", 116 | "address": "0xe1146b9AC456fCbB60644c36Fd3F868A9072fc6E", 117 | "symbol": "fBTC", 118 | "decimals": 18, 119 | "chainId": 250, 120 | "logoURI": "https://repository.fantom.network/logos/bitcoin.svg" 121 | }, 122 | { 123 | "name": "fBNB", 124 | "address": "0x27f26F00e1605903645BbaBC0a73E35027Dccd45", 125 | "symbol": "fBNB", 126 | "decimals": 18, 127 | "chainId": 250, 128 | "logoURI": "https://repository.fantom.network/logos/bnb.svg" 129 | }, 130 | { 131 | "name": "fBAND", 132 | "address": "0x078EEF5A2fb533e1a4d487ef64b27DF113d12C32", 133 | "symbol": "fBAND", 134 | "decimals": 18, 135 | "chainId": 250, 136 | "logoURI": "https://repository.fantom.network/logos/band.svg" 137 | }, 138 | { 139 | "name": "ChainLink", 140 | "address": "0xb3654dc3D10Ea7645f8319668E8F54d2574FBdC8", 141 | "symbol": "LINK", 142 | "decimals": 18, 143 | "chainId": 250, 144 | "logoURI": "https://ftmscan.com/token/images/chainlink_32.png" 145 | }, 146 | { 147 | "name": "USD Coin", 148 | "address": "0x04068DA6C83AFCFA0e13ba15A6696662335D5B75", 149 | "symbol": "USDC", 150 | "decimals": 6, 151 | "chainId": 250, 152 | "logoURI": "https://ftmscan.com/token/images/USDC_32.png" 153 | }, 154 | { 155 | "name": "Wrapped Bitcoin", 156 | "address": "0x321162Cd933E2Be498Cd2267a90534A804051b11", 157 | "symbol": "WBTC", 158 | "decimals": 8, 159 | "chainId": 250, 160 | "logoURI": "https://ftmscan.com/token/images/wBTC_32.png" 161 | }, 162 | { 163 | "name": "Aave", 164 | "address": "0x6a07A792ab2965C72a5B8088d3a069A7aC3a993B", 165 | "symbol": "AAVE", 166 | "decimals": 18, 167 | "chainId": 250, 168 | "logoURI": "https://ftmscan.com/token/images/aave_32.png" 169 | }, 170 | { 171 | "name": "Dai Stablecoin", 172 | "address": "0x8D11eC38a3EB5E956B052f67Da8Bdc9bef8Abf3E", 173 | "symbol": "DAI", 174 | "decimals": 18, 175 | "chainId": 250, 176 | "logoURI": "https://ftmscan.com/token/images/MCDDai_32.png" 177 | }, 178 | { 179 | "name": "Sushi", 180 | "address": "0xae75A438b2E0cB8Bb01Ec1E1e376De11D44477CC", 181 | "symbol": "SUSHI", 182 | "decimals": 18, 183 | "chainId": 250, 184 | "logoURI": "https://ftmscan.com/token/images/sushiswap_32.png" 185 | }, 186 | { 187 | "name": "yearn.finance", 188 | "address": "0x29b0Da86e484E1C0029B56e817912d778aC0EC69", 189 | "symbol": "YFI", 190 | "decimals": 18, 191 | "chainId": 250, 192 | "logoURI": "https://ftmscan.com/token/images/YFI_32.png" 193 | }, 194 | { 195 | "name": "Curve DAO", 196 | "address": "0x1E4F97b9f9F913c46F1632781732927B9019C68b", 197 | "symbol": "CRV", 198 | "decimals": 18, 199 | "chainId": 250, 200 | "logoURI": "https://ftmscan.com/token/images/CurveFi_32.png" 201 | }, 202 | { 203 | "name": "Band", 204 | "address": "0x46E7628E8b4350b2716ab470eE0bA1fa9e76c6C5", 205 | "symbol": "BAND", 206 | "decimals": 18, 207 | "chainId": 250, 208 | "logoURI": "https://ftmscan.com/token/images/bandprotocol_32.png" 209 | }, 210 | { 211 | "name": "Spice", 212 | "address": "0x924828a9Fb17d47D0eb64b57271D10706699Ff11", 213 | "symbol": "SFI", 214 | "decimals": 18, 215 | "chainId": 250, 216 | "logoURI": "https://ftmscan.com/token/images/saffron_32.png" 217 | }, 218 | { 219 | "name": "Hegic", 220 | "address": "0x44B26E839eB3572c5E959F994804A5De66600349", 221 | "symbol": "HEGIC", 222 | "decimals": 18, 223 | "chainId": 250, 224 | "logoURI": "https://ftmscan.com/token/images/hegic_32.png" 225 | }, 226 | { 227 | "name": "Frax", 228 | "address": "0xaf319E5789945197e365E7f7fbFc56B130523B33", 229 | "symbol": "FRAX", 230 | "decimals": 18, 231 | "chainId": 250, 232 | "logoURI": "https://ftmscan.com/token/images/fraxfinance_32.png" 233 | }, 234 | { 235 | "name": "Cover", 236 | "address": "0xB01E8419d842beebf1b70A7b5f7142abbaf7159D", 237 | "symbol": "COVER", 238 | "decimals": 18, 239 | "chainId": 250, 240 | "logoURI": "https://ftmscan.com/token/images/cover_32.png" 241 | }, 242 | { 243 | "name": "Keep3r", 244 | "address": "0x2A5062D22adCFaAfbd5C541d4dA82E4B450d4212", 245 | "symbol": "KP3R", 246 | "decimals": 18, 247 | "chainId": 250, 248 | "logoURI": "https://ftmscan.com/token/images/kp3r_32.png" 249 | }, 250 | { 251 | "name": "Wrapped Ether", 252 | "address": "0x74b23882a30290451A17c44f4F05243b6b58C76d", 253 | "symbol": "WETH", 254 | "decimals": 18, 255 | "chainId": 250, 256 | "logoURI": "https://ftmscan.com/token/images/wETH_32.png" 257 | }, 258 | { 259 | "name": "Cream", 260 | "address": "0x657A1861c15A3deD9AF0B6799a195a249ebdCbc6", 261 | "symbol": "CREAM", 262 | "decimals": 18, 263 | "chainId": 250, 264 | "logoURI": "https://ftmscan.com/token/images/CreamFinance_32.png" 265 | }, 266 | { 267 | "name": "Synth sUSD", 268 | "address": "0x0E1694483eBB3b74d3054E383840C6cf011e518e", 269 | "symbol": "sUSD", 270 | "decimals": 18, 271 | "chainId": 250, 272 | "logoURI": "https://ftmscan.com/token/images/sUSD_32.png" 273 | }, 274 | { 275 | "name": "Synthetix Network", 276 | "address": "0x56ee926bD8c72B2d5fa1aF4d9E4Cbb515a1E3Adc", 277 | "symbol": "SNX", 278 | "decimals": 18, 279 | "chainId": 250, 280 | "logoURI": "https://ftmscan.com/token/images/Synthetix_SNX_32.png" 281 | } 282 | ] 283 | -------------------------------------------------------------------------------- /src/tokens/fuji.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped AVAX", 4 | "address": "0xd00ae08403B9bbb9124bB305C09058E32C39A48c", 5 | "symbol": "WAVAX", 6 | "decimals": 18, 7 | "chainId": 43113, 8 | "logoURI": "https://cryptologos.cc/logos/avalanche-avax-logo.png?v=010" 9 | } 10 | ] 11 | -------------------------------------------------------------------------------- /src/tokens/goerli.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped Ether", 4 | "address": "0xB4FBF271143F4FBf7B91A5ded31805e42b2208d6", 5 | "symbol": "WETH", 6 | "decimals": 18, 7 | "chainId": 5, 8 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xB4FBF271143F4FBf7B91A5ded31805e42b2208d6/logo.png" 9 | }, 10 | { 11 | "name": "Uniswap", 12 | "address": "0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984", 13 | "symbol": "UNI", 14 | "decimals": 18, 15 | "chainId": 5, 16 | "logoURI": "ipfs://QmXttGpZrECX5qCyXbBQiqgQNytVGeZW5Anewvh2jc4psg" 17 | }, 18 | { 19 | "name": "SushiToken", 20 | "address": "0x5457Cc9B34eA486eB8d3286329F3536f71fa8A8B", 21 | "symbol": "SUSHI", 22 | "decimals": 18, 23 | "chainId": 5 24 | } 25 | ] 26 | -------------------------------------------------------------------------------- /src/tokens/harmony-testnet.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped ONE", 4 | "address": "0x7a2afac38517d512E55C0bCe3b6805c10a04D60F", 5 | "symbol": "WONE", 6 | "decimals": 18, 7 | "chainId": 1666700000, 8 | "logoURI": "https://assets.coingecko.com/coins/images/4344/small/Y88JAze.png" 9 | }, 10 | { 11 | "chainId": 1666700000, 12 | "address": "0x0E80905676226159cC3FF62B1876C907C91F7395", 13 | "symbol": "1BUSD", 14 | "name": "OneBUSD", 15 | "decimals": 18, 16 | "logoURI": "https://assets.coingecko.com/coins/images/9576/small/BUSD.png" 17 | }, 18 | { 19 | "chainId": 1666700000, 20 | "address": "0x6c4387C4f570Aa8cAdcaFFc5E73ecb3D0F8Fc593", 21 | "symbol": "WBTC", 22 | "name": "Wrapped BTC", 23 | "decimals": 8, 24 | "logoURI": "https://assets.coingecko.com/coins/images/7598/small/wrapped_bitcoin_wbtc.png" 25 | }, 26 | { 27 | "chainId": 1666700000, 28 | "address": "0x1E120B3b4aF96e7F394ECAF84375b1C661830013", 29 | "symbol": "1ETH", 30 | "name": "OneETH", 31 | "decimals": 18, 32 | "logoURI": "https://assets.coingecko.com/coins/images/279/small/ethereum.png" 33 | }, 34 | { 35 | "chainId": 1666700000, 36 | "address": "0x2C6e26B2faD89bc52d043e78E3D980A08af0Ce88", 37 | "symbol": "1LINK", 38 | "name": "OneChainlink", 39 | "decimals": 18, 40 | "logoURI": "https://assets.coingecko.com/coins/images/877/small/chainlink-new-logo.png" 41 | } 42 | ] 43 | -------------------------------------------------------------------------------- /src/tokens/harmony.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped ONE", 4 | "address": "0xcF664087a5bB0237a0BAd6742852ec6c8d69A27a", 5 | "symbol": "WONE", 6 | "decimals": 18, 7 | "chainId": 1666600000, 8 | "logoURI": "https://assets.coingecko.com/coins/images/4344/small/Y88JAze.png" 9 | }, 10 | { 11 | "chainId": 1666600000, 12 | "address": "0xE176EBE47d621b984a73036B9DA5d834411ef734", 13 | "symbol": "BUSD", 14 | "name": "Binance USD", 15 | "decimals": 18, 16 | "logoURI": "https://assets.coingecko.com/coins/images/9576/small/BUSD.png" 17 | }, 18 | { 19 | "chainId": 1666600000, 20 | "address": "0xEa589E93Ff18b1a1F1e9BaC7EF3E86Ab62addc79", 21 | "symbol": "VIPER", 22 | "name": "Viper", 23 | "decimals": 18, 24 | "logoURI": "https://dvwecb5klcqus.cloudfront.net/venomswap/logos/venomswap-128x128.png" 25 | }, 26 | { 27 | "chainId": 1666600000, 28 | "address": "0x3C2B8Be99c50593081EAA2A724F0B8285F5aba8f", 29 | "symbol": "1USDT", 30 | "name": "Tether USD", 31 | "decimals": 18, 32 | "logoURI": "https://assets.coingecko.com/coins/images/325/small/Tether-logo.png" 33 | }, 34 | { 35 | "chainId": 1666600000, 36 | "address": "0x985458E523dB3d53125813eD68c274899e9DfAb4", 37 | "symbol": "1USDC", 38 | "name": "USD Coin", 39 | "decimals": 6, 40 | "logoURI": "https://assets.coingecko.com/coins/images/6319/small/USD_Coin_icon.png" 41 | }, 42 | { 43 | "chainId": 1666600000, 44 | "address": "0x3095c7557bCb296ccc6e363DE01b760bA031F2d9", 45 | "symbol": "1WBTC", 46 | "name": "Wrapped BTC", 47 | "decimals": 8, 48 | "logoURI": "https://assets.coingecko.com/coins/images/7598/small/wrapped_bitcoin_wbtc.png" 49 | }, 50 | { 51 | "chainId": 1666600000, 52 | "address": "0x6983D1E6DEf3690C4d616b13597A09e6193EA013", 53 | "symbol": "1ETH", 54 | "name": "Ether", 55 | "decimals": 18, 56 | "logoURI": "https://assets.coingecko.com/coins/images/279/small/ethereum.png" 57 | }, 58 | { 59 | "chainId": 1666600000, 60 | "address": "0x218532a12a389a4a92fC0C5Fb22901D1c19198aA", 61 | "symbol": "LINK", 62 | "name": "ChainLink Token", 63 | "decimals": 18, 64 | "logoURI": "https://assets.coingecko.com/coins/images/877/small/chainlink-new-logo.png" 65 | }, 66 | { 67 | "chainId": 1666600000, 68 | "address": "0x0aB43550A6915F9f67d0c454C2E90385E6497EaA", 69 | "symbol": "bscBUSD", 70 | "name": "BUSD Token", 71 | "decimals": 18, 72 | "logoURI": "https://assets.coingecko.com/coins/images/9576/small/BUSD.png" 73 | }, 74 | { 75 | "chainId": 1666600000, 76 | "address": "0xBEC775Cb42AbFa4288dE81F387a9b1A3c4Bc552A", 77 | "symbol": "1SUSHI", 78 | "name": "Sushi Token", 79 | "decimals": 18, 80 | "logoURI": "https://raw.githubusercontent.com/sushiswap/assets/master/blockchains/ethereum/assets/0x6B3595068778DD592e39A122f4f5a5cF09C90fE2/logo.png" 81 | } 82 | ] 83 | -------------------------------------------------------------------------------- /src/tokens/heco-testnet.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped HT", 4 | "address": "0x5B2DA6F42CA09C77D577a12BeaD0446148830687", 5 | "symbol": "WHT", 6 | "decimals": 18, 7 | "chainId": 256, 8 | "logoURI": "https://hecoinfo.com/token/images/HT_32.png" 9 | } 10 | ] 11 | -------------------------------------------------------------------------------- /src/tokens/heco.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped HT", 4 | "address": "0x5545153CCFcA01fbd7Dd11C0b23ba694D9509A6F", 5 | "symbol": "WHT", 6 | "decimals": 18, 7 | "chainId": 128, 8 | "logoURI": "https://hecoinfo.com/token/images/HT_32.png" 9 | }, 10 | { 11 | "name": "Heco-Peg HBCH Token", 12 | "address": "0xeF3CEBD77E0C52cb6f60875d9306397B5Caca375", 13 | "symbol": "HBCH", 14 | "decimals": 18, 15 | "chainId": 128, 16 | "logoURI": "https://hecoinfo.com/token/images/HBCH_32.png" 17 | }, 18 | { 19 | "name": "Heco-Peg HLTC Token", 20 | "address": "0xecb56cf772B5c9A6907FB7d32387Da2fCbfB63b4", 21 | "symbol": "HLTC", 22 | "decimals": 18, 23 | "chainId": 128, 24 | "logoURI": "https://hecoinfo.com/token/images/HLTC_32.png" 25 | }, 26 | { 27 | "name": "Heco-Peg HPT Token", 28 | "address": "0xE499Ef4616993730CEd0f31FA2703B92B50bB536", 29 | "symbol": "HPT", 30 | "decimals": 18, 31 | "chainId": 128, 32 | "logoURI": "https://hecoinfo.com/token/images/HPT_32.png" 33 | }, 34 | { 35 | "name": "Heco-Peg LAMB Token", 36 | "address": "0xE131F048D85f0391A24435eEFB7763199B587d0e", 37 | "symbol": "LAMB", 38 | "decimals": 18, 39 | "chainId": 128, 40 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 41 | }, 42 | { 43 | "name": "Heco-Peg HBSV Token", 44 | "address": "0xc2CB6B5357CcCE1B99Cd22232942D9A225Ea4eb1", 45 | "symbol": "HBSV", 46 | "decimals": 18, 47 | "chainId": 128, 48 | "logoURI": "https://hecoinfo.com/token/images/HBSV_32.png" 49 | }, 50 | { 51 | "name": "Heco-Peg LRC Token", 52 | "address": "0xbf22F76657601A522Cf9Ac832718A3404302D6bC", 53 | "symbol": "LRC", 54 | "decimals": 18, 55 | "chainId": 128, 56 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 57 | }, 58 | { 59 | "name": "Heco-Peg BETH Token", 60 | "address": "0xB6F4c418514dd4680F76d5caa3bB42dB4A893aCb", 61 | "symbol": "BETH", 62 | "decimals": 18, 63 | "chainId": 128, 64 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 65 | }, 66 | { 67 | "name": "Heco-Peg YFI Token", 68 | "address": "0xB4F019bEAc758AbBEe2F906033AAa2f0F6Dacb35", 69 | "symbol": "YFI", 70 | "decimals": 18, 71 | "chainId": 128, 72 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 73 | }, 74 | { 75 | "name": "Heco-Peg HFIL Token", 76 | "address": "0xae3a768f9aB104c69A7CD6041fE16fFa235d1810", 77 | "symbol": "HFIL", 78 | "decimals": 18, 79 | "chainId": 128, 80 | "logoURI": "https://hecoinfo.com/token/images/HFIL_32.png" 81 | }, 82 | { 83 | "name": "Heco-Peg USDTHECO Token", 84 | "address": "0xa71EdC38d189767582C38A3145b5873052c3e47a", 85 | "symbol": "USDTHECO", 86 | "decimals": 18, 87 | "chainId": 128, 88 | "logoURI": "https://hecoinfo.com/token/images/USDTHECO_32.png" 89 | }, 90 | { 91 | "name": "Heco-Peg HDOT Token", 92 | "address": "0xA2c49cEe16a5E5bDEFDe931107dc1fae9f7773E3", 93 | "symbol": "HDOT", 94 | "decimals": 18, 95 | "chainId": 128, 96 | "logoURI": "https://hecoinfo.com/token/images/HDOT_32.png" 97 | }, 98 | { 99 | "name": "Heco-Peg LINK Token", 100 | "address": "0x9e004545c59D359F6B7BFB06a26390b087717b42", 101 | "symbol": "LINK", 102 | "decimals": 18, 103 | "chainId": 128, 104 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 105 | }, 106 | { 107 | "name": "Heco-Peg SKM Token", 108 | "address": "0x96674f8da3F9c6ACb4A56b393AF9A490D70D16d0", 109 | "symbol": "SKM", 110 | "decimals": 18, 111 | "chainId": 128, 112 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 113 | }, 114 | { 115 | "name": "Heco-Peg USDCHECO Token", 116 | "address": "0x9362Bbef4B8313A8Aa9f0c9808B80577Aa26B73B", 117 | "symbol": "USDCHECO", 118 | "decimals": 18, 119 | "chainId": 128, 120 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 121 | }, 122 | { 123 | "name": "Heco-Peg HBC Token", 124 | "address": "0x894b2917c783514c9e4c24229bF60f3Cb4c9c905", 125 | "symbol": "HBC", 126 | "decimals": 18, 127 | "chainId": 128, 128 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 129 | }, 130 | { 131 | "name": "Heco-Peg SNX Token", 132 | "address": "0x777850281719d5a96C29812ab72f822E0e09F3Da", 133 | "symbol": "SNX", 134 | "decimals": 18, 135 | "chainId": 128, 136 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 137 | }, 138 | { 139 | "name": "Heco-Peg HBTC Token", 140 | "address": "0x66a79D23E58475D2738179Ca52cd0b41d73f0BEa", 141 | "symbol": "HBTC", 142 | "decimals": 18, 143 | "chainId": 128, 144 | "logoURI": "https://hecoinfo.com/token/images/HBTC_32.png" 145 | }, 146 | { 147 | "name": "Heco-Peg ETH Token", 148 | "address": "0x64FF637fB478863B7468bc97D30a5bF3A428a1fD", 149 | "symbol": "ETH", 150 | "decimals": 18, 151 | "chainId": 128, 152 | "logoURI": "https://hecoinfo.com/token/images/HETH_32.png" 153 | }, 154 | { 155 | "name": "Heco-Peg ARPA Token", 156 | "address": "0x5A6B72Dd6209A770aE1C02a7A2E1900636072d0b", 157 | "symbol": "ARPA", 158 | "decimals": 18, 159 | "chainId": 128, 160 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 161 | }, 162 | { 163 | "name": "Heco-Peg CNNS Token", 164 | "address": "0x4BF06f76C68D81BDE1F87535fdCb60Adadb01CF5", 165 | "symbol": "CNNS", 166 | "decimals": 18, 167 | "chainId": 128, 168 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 169 | }, 170 | { 171 | "name": "Heco-Peg HXTZ Token", 172 | "address": "0x45e97daD828AD735af1dF0473fc2735F0Fd5330c", 173 | "symbol": "HXTZ", 174 | "decimals": 18, 175 | "chainId": 128, 176 | "logoURI": "https://hecoinfo.com/token/images/HXZT_32.png" 177 | }, 178 | { 179 | "name": "Heco-Peg DAIHECO Token", 180 | "address": "0x3D760a45D0887DFD89A2F5385a236B29Cb46ED2a", 181 | "symbol": "DAIHECO", 182 | "decimals": 18, 183 | "chainId": 128, 184 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 185 | }, 186 | { 187 | "name": "Heco-Peg SWFTC Token", 188 | "address": "0x329dda64Cbc4DFD5FA5072b447B3941CE054ebb3", 189 | "symbol": "SWFTC", 190 | "decimals": 8, 191 | "chainId": 128, 192 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 193 | }, 194 | { 195 | "name": "Heco-Peg GOF Token", 196 | "address": "0x2AAFe3c9118DB36A20dd4A942b6ff3e78981dce1", 197 | "symbol": "GOF", 198 | "decimals": 18, 199 | "chainId": 128, 200 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 201 | }, 202 | { 203 | "name": "Heco-Peg UNI Token", 204 | "address": "0x22C54cE8321A4015740eE1109D9cBc25815C46E6", 205 | "symbol": "UNI", 206 | "decimals": 18, 207 | "chainId": 128, 208 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 209 | }, 210 | { 211 | "name": "Heco-Peg AAVE Token", 212 | "address": "0x202b4936fE1a82A4965220860aE46d7d3939Bb25", 213 | "symbol": "AAVE", 214 | "decimals": 18, 215 | "chainId": 128, 216 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 217 | }, 218 | { 219 | "name": "Heco-Peg BAL Token", 220 | "address": "0x045De15Ca76e76426E8Fc7cba8392A3138078D0F", 221 | "symbol": "BAL", 222 | "decimals": 18, 223 | "chainId": 128, 224 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 225 | }, 226 | { 227 | "name": "Heco-Peg HUSD Token", 228 | "address": "0x0298c2b32eaE4da002a15f36fdf7615BEa3DA047", 229 | "symbol": "HUSD", 230 | "decimals": 8, 231 | "chainId": 128, 232 | "logoURI": "https://hecoinfo.com/token/images/HUSD_32.png" 233 | }, 234 | { 235 | "name": "MDX Token", 236 | "address": "0x25D2e80cB6B86881Fd7e07dd263Fb79f4AbE033c", 237 | "symbol": "MDX", 238 | "decimals": 18, 239 | "chainId": 128, 240 | "logoURI": "https://hecoinfo.com/token/images/mdex_32.png" 241 | }, 242 | { 243 | "name": "FilDA on Heco", 244 | "address": "0xE36FFD17B2661EB57144cEaEf942D95295E637F0", 245 | "symbol": "FILDA", 246 | "decimals": 18, 247 | "chainId": 128, 248 | "logoURI": "https://hecoinfo.com/token/images/filda_32.png" 249 | }, 250 | { 251 | "name": "LendHub", 252 | "address": "0x8F67854497218043E1f72908FFE38D0Ed7F24721", 253 | "symbol": "LHB", 254 | "decimals": 18, 255 | "chainId": 128, 256 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 257 | }, 258 | { 259 | "name": "HFI", 260 | "address": "0x98fc3b60Ed4A504F588342A53746405E355F9347", 261 | "symbol": "HFI", 262 | "decimals": 18, 263 | "chainId": 128, 264 | "logoURI": "https://hecoinfo.com/token/images/hecofi_32.png" 265 | }, 266 | { 267 | "name": "SLN-Token V2", 268 | "address": "0x4e252342cf35Ff02c4CCA9bc655129f5b4a2f901", 269 | "symbol": "SLNV2", 270 | "decimals": 18, 271 | "chainId": 128, 272 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 273 | }, 274 | { 275 | "name": "Channels", 276 | "address": "0x1e6395E6B059fc97a4ddA925b6c5ebf19E05c69f", 277 | "symbol": "CAN", 278 | "decimals": 18, 279 | "chainId": 128, 280 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 281 | }, 282 | { 283 | "name": "EarnDefiCoin", 284 | "address": "0x68a0A1fEF18DfCC422Db8bE6F0F486dEa1999EDC", 285 | "symbol": "EDC", 286 | "decimals": 9, 287 | "chainId": 128, 288 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 289 | }, 290 | { 291 | "name": "LLC", 292 | "address": "0x6A4db3965CB6293dBA0F63F14FB36873172E38d3", 293 | "symbol": "LLC", 294 | "decimals": 18, 295 | "chainId": 128, 296 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 297 | }, 298 | { 299 | "name": "LLS", 300 | "address": "0x5a42eeD7200d23F0D4CF35Ccd582D6d363F16BFc", 301 | "symbol": "LLS", 302 | "decimals": 18, 303 | "chainId": 128, 304 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 305 | }, 306 | { 307 | "name": "BAGS", 308 | "address": "0x6868D406a125Eb30886A6DD6B651D81677d1F22c", 309 | "symbol": "BAGS", 310 | "decimals": 18, 311 | "chainId": 128, 312 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 313 | }, 314 | { 315 | "name": "BAG", 316 | "address": "0xa042fb0e60125A4022670014AC121931e7501Af4", 317 | "symbol": "BAG", 318 | "decimals": 18, 319 | "chainId": 128, 320 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 321 | }, 322 | { 323 | "name": "Lavaswap", 324 | "address": "0x56f95662E71f30b333b456439248c6dE589082a4", 325 | "symbol": "Lava", 326 | "decimals": 18, 327 | "chainId": 128, 328 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 329 | }, 330 | { 331 | "name": "Sovi Token", 332 | "address": "0x49e16563a2ba84E560780946f0Fb73A8B32C841E", 333 | "symbol": "SOVI", 334 | "decimals": 18, 335 | "chainId": 128, 336 | "logoURI": "https://hecoinfo.com/token/images/sovifinance_32.png" 337 | }, 338 | { 339 | "name": "Decentralized Mining Coin", 340 | "address": "0x854Bb58fDDa85F20b5aB20B20d888f0554c02560", 341 | "symbol": "DMC", 342 | "decimals": 18, 343 | "chainId": 128, 344 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 345 | }, 346 | { 347 | "name": "BEE", 348 | "address": "0xB1F80844a1B84c61ab80CafD88B1f8c09f9342e1", 349 | "symbol": "BEE", 350 | "decimals": 8, 351 | "chainId": 128, 352 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 353 | }, 354 | { 355 | "name": "CircleSwap Governance Token", 356 | "address": "0xbe5DF2fac88BB096A973e664171E60586bC5940c", 357 | "symbol": "CIR", 358 | "decimals": 18, 359 | "chainId": 128, 360 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 361 | }, 362 | { 363 | "name": "Hash Bridge Oracle", 364 | "address": "0x8764Bd4fcc027faF72bA83c0b2028a3BAE0D2D57", 365 | "symbol": "HBO", 366 | "decimals": 18, 367 | "chainId": 128, 368 | "logoURI": "https://hecoinfo.com/images/main/empty-token.png" 369 | } 370 | ] 371 | -------------------------------------------------------------------------------- /src/tokens/kovan.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped Ether", 4 | "address": "0xd0A1E359811322d97991E03f863a0C30C2cF029C", 5 | "symbol": "WETH", 6 | "decimals": 18, 7 | "chainId": 42, 8 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xd0A1E359811322d97991E03f863a0C30C2cF029C/logo.png" 9 | }, 10 | { 11 | "name": "Maker", 12 | "address": "0xAaF64BFCC32d0F15873a02163e7E500671a4ffcD", 13 | "symbol": "MKR", 14 | "decimals": 18, 15 | "chainId": 42, 16 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xAaF64BFCC32d0F15873a02163e7E500671a4ffcD/logo.png" 17 | }, 18 | { 19 | "name": "Uniswap", 20 | "address": "0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984", 21 | "symbol": "UNI", 22 | "decimals": 18, 23 | "chainId": 42, 24 | "logoURI": "ipfs://QmXttGpZrECX5qCyXbBQiqgQNytVGeZW5Anewvh2jc4psg" 25 | }, 26 | { 27 | "name": "SushiToken", 28 | "address": "0x5457Cc9B34eA486eB8d3286329F3536f71fa8A8B", 29 | "symbol": "SUSHI", 30 | "decimals": 18, 31 | "chainId": 42 32 | }, 33 | { 34 | "chainId": 42, 35 | "address": "0x162c44e53097e7B5aaE939b297ffFD6Bf90D1EE3", 36 | "name": "0x Protocol Token", 37 | "symbol": "ZRX", 38 | "decimals": 18, 39 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/asset_ZRX.svg" 40 | }, 41 | { 42 | "chainId": 42, 43 | "address": "0x4a92E71227D294F041BD82dd8f78591B75140d63", 44 | "name": "Compound USD Coin", 45 | "symbol": "cUSDC", 46 | "decimals": 8, 47 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/ctoken_usdc.svg" 48 | }, 49 | { 50 | "chainId": 42, 51 | "address": "0xF0d0EB522cfa50B716B3b1604C4F0fA6f04376AD", 52 | "name": "Compound Dai", 53 | "symbol": "cDAI", 54 | "decimals": 8, 55 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/ctoken_dai.svg" 56 | }, 57 | { 58 | "chainId": 42, 59 | "address": "0x4F96Fe3b7A6Cf9725f59d353F723c1bDb64CA6Aa", 60 | "name": "Dai Stablecoin", 61 | "symbol": "DAI", 62 | "decimals": 18, 63 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/asset_DAI.svg" 64 | }, 65 | { 66 | "chainId": 42, 67 | "address": "0xD1308F63823221518Ec88EB209CBaa1ac182105f", 68 | "name": "Sai Stablecoin v1.0", 69 | "symbol": "SAI", 70 | "decimals": 18, 71 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/asset_SAI.svg" 72 | }, 73 | { 74 | "chainId": 42, 75 | "address": "0x07de306FF27a2B630B1141956844eB1552B956B5", 76 | "name": "Tether USD", 77 | "symbol": "USDT", 78 | "decimals": 6, 79 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/asset_USDT.svg" 80 | }, 81 | { 82 | "chainId": 42, 83 | "address": "0x61460874a7196d6a22D1eE4922473664b3E95270", 84 | "name": "Compound", 85 | "symbol": "COMP", 86 | "decimals": 18, 87 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/asset_COMP.svg" 88 | }, 89 | { 90 | "chainId": 42, 91 | "address": "0x3f0A0EA2f86baE6362CF9799B523BA06647Da018", 92 | "name": "Compound USDT", 93 | "symbol": "cUSDT", 94 | "decimals": 8, 95 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/ctoken_usdt.svg" 96 | }, 97 | { 98 | "chainId": 42, 99 | "address": "0x4a77fAeE9650b09849Ff459eA1476eaB01606C7a", 100 | "name": "Compound Basic Attention Token", 101 | "symbol": "cBAT", 102 | "decimals": 8, 103 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/ctoken_bat.svg" 104 | }, 105 | { 106 | "chainId": 42, 107 | "address": "0x482dC9bB08111CB875109B075A40881E48aE02Cd", 108 | "name": "Basic Attention Token", 109 | "symbol": "BAT", 110 | "decimals": 18, 111 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/asset_BAT.svg" 112 | }, 113 | { 114 | "chainId": 42, 115 | "address": "0x41B5844f4680a8C38fBb695b7F9CFd1F64474a72", 116 | "name": "Compound Ether", 117 | "symbol": "cETH", 118 | "decimals": 8, 119 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/ctoken_eth.svg" 120 | }, 121 | { 122 | "chainId": 42, 123 | "address": "0xb3f7fB482492f4220833De6D6bfCC81157214bEC", 124 | "name": "Compound Sai", 125 | "symbol": "cSAI", 126 | "decimals": 8, 127 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/ctoken_sai.svg" 128 | }, 129 | { 130 | "chainId": 42, 131 | "address": "0xA4eC170599a1Cf87240a35b9B1B8Ff823f448b57", 132 | "name": "Compound Augur", 133 | "symbol": "cREP", 134 | "decimals": 8, 135 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/ctoken_rep.svg" 136 | }, 137 | { 138 | "chainId": 42, 139 | "address": "0xd3A691C852CDB01E281545A27064741F0B7f6825", 140 | "name": "Wrapped BTC", 141 | "symbol": "WBTC", 142 | "decimals": 8 143 | }, 144 | { 145 | "chainId": 42, 146 | "address": "0x50DD65531676F718B018De3dc48F92B53D756996", 147 | "name": "Reputation", 148 | "symbol": "REP", 149 | "decimals": 18, 150 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/asset_REP.svg" 151 | }, 152 | { 153 | "chainId": 42, 154 | "address": "0xAf45ae737514C8427D373D50Cd979a242eC59e5a", 155 | "name": "Compound 0x", 156 | "symbol": "cZRX", 157 | "decimals": 8, 158 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/ctoken_zrx.svg" 159 | }, 160 | { 161 | "chainId": 42, 162 | "address": "0xa1fAA15655B0e7b6B6470ED3d096390e6aD93Abb", 163 | "name": "Compound Wrapped BTC", 164 | "symbol": "cWBTC", 165 | "decimals": 8, 166 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/ctoken_wbtc.svg" 167 | }, 168 | { 169 | "chainId": 42, 170 | "address": "0xb7a4F3E9097C08dA09517b5aB877F7a917224ede", 171 | "name": "USD Coin USDC", 172 | "symbol": "USDC", 173 | "decimals": 6, 174 | "logoURI": "https://raw.githubusercontent.com/compound-finance/token-list/master/assets/asset_USDC.svg" 175 | } 176 | ] 177 | -------------------------------------------------------------------------------- /src/tokens/matic-testnet.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Dai Stablecoin", 4 | "address": "0xcB1e72786A6eb3b44C2a2429e317c8a2462CFeb1", 5 | "symbol": "DAI", 6 | "decimals": 18, 7 | "chainId": 80001, 8 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x6B175474E89094C44Da98b954EedeAC495271d0F/logo.png" 9 | }, 10 | { 11 | "name": "Ether", 12 | "address": "0x714550C2C1Ea08688607D86ed8EeF4f5E4F22323", 13 | "symbol": "ETH", 14 | "decimals": 18, 15 | "chainId": 80001, 16 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png" 17 | }, 18 | { 19 | "name": "Tether USD", 20 | "address": "0x3813e82e6f7098b9583FC0F33a962D02018B6803", 21 | "symbol": "USDT", 22 | "decimals": 6, 23 | "chainId": 80001, 24 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xdAC17F958D2ee523a2206206994597C13D831ec7/logo.png" 25 | }, 26 | { 27 | "name": "Wrapped Matic", 28 | "address": "0xd0A1E359811322d97991E03f863a0C30C2cF029C", 29 | "symbol": "WMATIC", 30 | "decimals": 18, 31 | "chainId": 80001, 32 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0/logo.png" 33 | } 34 | ] 35 | -------------------------------------------------------------------------------- /src/tokens/matic.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "decentral.games", 4 | "address": "0x2a93172c8DCCbfBC60a39d56183B7279a2F647b4", 5 | "symbol": "$DG", 6 | "decimals": 18, 7 | "chainId": 137, 8 | "logoURI": "https://raw.githubusercontent.com/sameepsi/quickswap-default-token-list/master/assets/dg.jpg" 9 | }, 10 | { 11 | "name": "0xBitcoin Token", 12 | "address": "0x71B821aa52a49F32EEd535fCA6Eb5aa130085978", 13 | "symbol": "0xBTC", 14 | "decimals": 8, 15 | "chainId": 137, 16 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xB6eD7644C69416d67B522e20bC294A9a9B405B31/logo.png" 17 | }, 18 | { 19 | "name": "Compound", 20 | "address": "0x8505b9d2254A7Ae468c0E9dd10Ccea3A837aef5c", 21 | "symbol": "COMP", 22 | "decimals": 18, 23 | "chainId": 137, 24 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xc00e94Cb662C3520282E6f5717214004A7f26888/logo.png" 25 | }, 26 | { 27 | "name": "Dai Stablecoin", 28 | "address": "0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063", 29 | "symbol": "DAI", 30 | "decimals": 18, 31 | "chainId": 137, 32 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x6B175474E89094C44Da98b954EedeAC495271d0F/logo.png" 33 | }, 34 | { 35 | "name": "Dark.Build", 36 | "address": "0x0e59D50adD2d90f5111aca875baE0a72D95B4762", 37 | "symbol": "DB", 38 | "decimals": 18, 39 | "chainId": 137, 40 | "logoURI": "https://dark-build.app/logo192.png" 41 | }, 42 | { 43 | "name": "EASY", 44 | "address": "0xDb3b3b147A030F032633f6C4BEBf9a2fB5a882B5", 45 | "symbol": "EASY", 46 | "decimals": 18, 47 | "chainId": 137, 48 | "logoURI": "https://raw.githubusercontent.com/sameepsi/quickswap-interface/master/assets/easyfi-token.png" 49 | }, 50 | { 51 | "name": "Easy DAI", 52 | "address": "0xa1C09C8F4f5D03fcC27b456475d53d988e98D7C5", 53 | "symbol": "eDAI", 54 | "decimals": 8, 55 | "chainId": 137, 56 | "logoURI": "https://raw.githubusercontent.com/sameepsi/quickswap-interface/master/assets/easyfi-token.png" 57 | }, 58 | { 59 | "name": "Elementeum", 60 | "address": "0x07738Eb4ce8932CA961c815Cb12C9d4ab5Bd0Da4", 61 | "symbol": "ELET", 62 | "decimals": 18, 63 | "chainId": 137, 64 | "logoURI": "https://etherlegends.com/ELET.png" 65 | }, 66 | { 67 | "name": "Wrapped Ether", 68 | "address": "0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619", 69 | "symbol": "WETH", 70 | "decimals": 18, 71 | "chainId": 137, 72 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png" 73 | }, 74 | { 75 | "name": "Easy USDC", 76 | "address": "0x4eBdE54ba404bE158262EDe801744b92b9878c61", 77 | "symbol": "eUSDC", 78 | "decimals": 8, 79 | "chainId": 137, 80 | "logoURI": "https://raw.githubusercontent.com/sameepsi/quickswap-interface/master/assets/easyfi-token.png" 81 | }, 82 | { 83 | "name": "Easy USDT", 84 | "address": "0xfc39742Fe9420a7Af23757Fc7E78D1c3AE4A9474", 85 | "symbol": "eUSDT", 86 | "decimals": 8, 87 | "chainId": 137, 88 | "logoURI": "https://raw.githubusercontent.com/sameepsi/quickswap-interface/master/assets/easyfi-token.png" 89 | }, 90 | { 91 | "name": "Frax", 92 | "address": "0x104592a158490a9228070E0A8e5343B499e125D0", 93 | "symbol": "FRAX", 94 | "decimals": 18, 95 | "chainId": 137, 96 | "logoURI": "https://avatars.githubusercontent.com/u/56005256?s=200&v=4" 97 | }, 98 | { 99 | "name": "Frax Share", 100 | "address": "0x3e121107F6F22DA4911079845a470757aF4e1A1b", 101 | "symbol": "FXS", 102 | "decimals": 18, 103 | "chainId": 137, 104 | "logoURI": "https://avatars.githubusercontent.com/u/56005256?s=200&v=4" 105 | }, 106 | { 107 | "name": "GAME Credits", 108 | "address": "0x8d1566569d5b695d44a9a234540f68D393cDC40D", 109 | "symbol": "GAME", 110 | "decimals": 18, 111 | "chainId": 137, 112 | "logoURI": "https://i.imgur.com/IIUglm9.png?1" 113 | }, 114 | { 115 | "name": "Aavegotchi GHST Token", 116 | "address": "0x385Eeac5cB85A38A9a07A70c73e0a3271CfB54A7", 117 | "symbol": "GHST", 118 | "decimals": 18, 119 | "chainId": 137, 120 | "logoURI": "https://aavegotchi.com/images/ghsttoken.svg" 121 | }, 122 | { 123 | "name": "HEXX", 124 | "address": "0x23D29D30e35C5e8D321e1dc9A8a61BFD846D4C5C", 125 | "symbol": "HEX", 126 | "decimals": 8, 127 | "chainId": 137, 128 | "logoURI": "https://hex.com/favicon.png" 129 | }, 130 | { 131 | "name": "iFARM", 132 | "address": "0xab0b2ddB9C7e440fAc8E140A89c0dbCBf2d7Bbff", 133 | "symbol": "iFARM", 134 | "decimals": 18, 135 | "chainId": 137, 136 | "logoURI": "https://raw.githubusercontent.com/harvestfi/assets/main/farm-logo.png" 137 | }, 138 | { 139 | "name": "IG Gold", 140 | "address": "0xe6FC6C7CB6d2c31b359A49A33eF08aB87F4dE7CE", 141 | "symbol": "IGG", 142 | "decimals": 6, 143 | "chainId": 137, 144 | "logoURI": "https://assets.coingecko.com/coins/images/7697/small/N7aEdYrY_400x400.png?1561587437" 145 | }, 146 | { 147 | "name": "EthLend Token", 148 | "address": "0x313d009888329C9d1cf4f75CA3f32566335bd604", 149 | "symbol": "LEND", 150 | "decimals": 18, 151 | "chainId": 137, 152 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x80fB784B7eD66730e8b1DBd9820aFD29931aab03/logo.png" 153 | }, 154 | { 155 | "name": "ChainLink Token", 156 | "address": "0x53E0bca35eC356BD5ddDFebbD1Fc0fD03FaBad39", 157 | "symbol": "LINK", 158 | "decimals": 18, 159 | "chainId": 137, 160 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x514910771AF9Ca656af840dff83E8264EcF986CA/logo.png" 161 | }, 162 | { 163 | "name": "Matic Aave interest bearing AAVE", 164 | "address": "0x823CD4264C1b951C9209aD0DeAea9988fE8429bF", 165 | "symbol": "maAAVE", 166 | "decimals": 18, 167 | "chainId": 137, 168 | "logoURI": "https://aavegotchi.com/images/matokens/maAAVE.svg" 169 | }, 170 | { 171 | "name": "Matic Aave interest bearing DAI", 172 | "address": "0xE0b22E0037B130A9F56bBb537684E6fA18192341", 173 | "symbol": "maDAI", 174 | "decimals": 18, 175 | "chainId": 137, 176 | "logoURI": "https://aavegotchi.com/images/matokens/maDAI.svg" 177 | }, 178 | { 179 | "name": "Matic Aave interest bearing LINK", 180 | "address": "0x98ea609569bD25119707451eF982b90E3eb719cD", 181 | "symbol": "maLINK", 182 | "decimals": 18, 183 | "chainId": 137, 184 | "logoURI": "https://aavegotchi.com/images/matokens/maLINK.svg" 185 | }, 186 | { 187 | "name": "Decentraland MANA", 188 | "address": "0xA1c57f48F0Deb89f569dFbE6E2B7f46D33606fD4", 189 | "symbol": "MANA", 190 | "decimals": 18, 191 | "chainId": 137, 192 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x0F5D2fB29fb7d3CFeE444a200298f468908cC942/logo.png" 193 | }, 194 | { 195 | "name": "Matic Aave interest bearing TUSD", 196 | "address": "0xF4b8888427b00d7caf21654408B7CBA2eCf4EbD9", 197 | "symbol": "maTUSD", 198 | "decimals": 18, 199 | "chainId": 137, 200 | "logoURI": "https://aavegotchi.com/images/matokens/maTUSD.svg" 201 | }, 202 | { 203 | "name": "Matic Aave interest bearing UNI", 204 | "address": "0x8c8bdBe9CeE455732525086264a4Bf9Cf821C498", 205 | "symbol": "maUNI", 206 | "decimals": 18, 207 | "chainId": 137, 208 | "logoURI": "https://aavegotchi.com/images/matokens/maUNI.svg" 209 | }, 210 | { 211 | "name": "Matic Aave interest bearing USDC", 212 | "address": "0x9719d867A500Ef117cC201206B8ab51e794d3F82", 213 | "symbol": "maUSDC", 214 | "decimals": 6, 215 | "chainId": 137, 216 | "logoURI": "https://aavegotchi.com/images/matokens/maUSDC.svg" 217 | }, 218 | { 219 | "name": "Matic Aave interest bearing USDT", 220 | "address": "0xDAE5F1590db13E3B40423B5b5c5fbf175515910b", 221 | "symbol": "maUSDT", 222 | "decimals": 6, 223 | "chainId": 137, 224 | "logoURI": "https://aavegotchi.com/images/matokens/maUSDT.svg" 225 | }, 226 | { 227 | "name": "Matic Aave interest bearing WETH", 228 | "address": "0x20D3922b4a1A8560E1aC99FBA4faDe0c849e2142", 229 | "symbol": "maWETH", 230 | "decimals": 18, 231 | "chainId": 137, 232 | "logoURI": "https://aavegotchi.com/images/matokens/maWETH.svg" 233 | }, 234 | { 235 | "name": "Matic Aave interest bearing YFI", 236 | "address": "0xe20f7d1f0eC39C4d5DB01f53554F2EF54c71f613", 237 | "symbol": "maYFI", 238 | "decimals": 18, 239 | "chainId": 137, 240 | "logoURI": "https://aavegotchi.com/images/matokens/maYFI.svg" 241 | }, 242 | { 243 | "name": "Matic Rebalance Token", 244 | "address": "0x66768ad00746aC4d68ded9f64886d55d5243f5Ec", 245 | "symbol": "mRBAL", 246 | "decimals": 18, 247 | "chainId": 137, 248 | "logoURI": "https://rebalancetoken.io/images/logo/logo.png" 249 | }, 250 | { 251 | "name": "Must", 252 | "address": "0x9C78EE466D6Cb57A4d01Fd887D2b5dFb2D46288f", 253 | "symbol": "MUST", 254 | "decimals": 18, 255 | "chainId": 137, 256 | "logoURI": "https://etherscan.io/token/images/cometh_32.png" 257 | }, 258 | { 259 | "name": "OM", 260 | "address": "0x9f5755D47fB80100E7ee65Bf7e136FCA85Dd9334", 261 | "symbol": "OM", 262 | "decimals": 18, 263 | "chainId": 137, 264 | "logoURI": "https://etherscan.io/token/images/om_32.png" 265 | }, 266 | { 267 | "name": "Pepedex", 268 | "address": "0x127984b5E6d5c59f81DACc9F1C8b3Bdc8494572e", 269 | "symbol": "PPDEX", 270 | "decimals": 18, 271 | "chainId": 137, 272 | "logoURI": "https://etherscan.io/token/images/pepedex_32.png?v=2" 273 | }, 274 | { 275 | "name": "Quickswap", 276 | "address": "0x831753DD7087CaC61aB5644b308642cc1c33Dc13", 277 | "symbol": "QUICK", 278 | "decimals": 18, 279 | "chainId": 137, 280 | "logoURI": "https://raw.githubusercontent.com/sameepsi/quickswap-interface/master/public/favicon.jpeg" 281 | }, 282 | { 283 | "name": "Rebalance Token", 284 | "address": "0x03247a4368A280bEc8133300cD930A3a61d604f6", 285 | "symbol": "RBAL", 286 | "decimals": 18, 287 | "chainId": 137, 288 | "logoURI": "http://rebalancetoken.io/images/logo/RBAL_ERC20_small_001_256.png" 289 | }, 290 | { 291 | "name": "Sentinel", 292 | "address": "0x48e3883233461C2eF4cB3FcF419D6db07fb86CeA", 293 | "symbol": "SENT", 294 | "decimals": 8, 295 | "chainId": 137, 296 | "logoURI": "https://cdn-images-1.medium.com/max/1200/1*mK1oPGsQWh4Nfupg-e0S-g.png" 297 | }, 298 | { 299 | "name": "TrustSwap Token", 300 | "address": "0x3809dcDd5dDe24B37AbE64A5a339784c3323c44F", 301 | "symbol": "SWAP", 302 | "decimals": 18, 303 | "chainId": 137, 304 | "logoURI": "https://i.imgur.com/vZnU36G.png" 305 | }, 306 | { 307 | "name": "Swirge", 308 | "address": "0x043A3Aa319B563aC25D4E342d32bFfb51298DB7b", 309 | "symbol": "SWG", 310 | "decimals": 18, 311 | "chainId": 137, 312 | "logoURI": "https://etherscan.io/token/images/swirge_32.png" 313 | }, 314 | { 315 | "name": "SportX", 316 | "address": "0x840195888Db4D6A99ED9F73FcD3B225Bb3cB1A79", 317 | "symbol": "SX", 318 | "decimals": 18, 319 | "chainId": 137, 320 | "logoURI": "https://raw.githubusercontent.com/sameepsi/quickswap-default-token-list/master/assets/sx.jpg" 321 | }, 322 | { 323 | "name": "Unibright", 324 | "address": "0x7FBc10850caE055B27039aF31bD258430e714c62", 325 | "symbol": "UBT", 326 | "decimals": 8, 327 | "chainId": 137, 328 | "logoURI": "https://assets.coingecko.com/coins/images/2707/small/UnibrightLogo_colorful_500x500_preview.png?1547036916" 329 | }, 330 | { 331 | "name": "Uniswap", 332 | "address": "0xb33EaAd8d922B1083446DC23f610c2567fB5180f", 333 | "symbol": "UNI", 334 | "decimals": 18, 335 | "chainId": 137, 336 | "logoURI": "https://raw.githubusercontent.com/sameepsi/quickswap-interface/master/public/favicon1.png" 337 | }, 338 | { 339 | "name": "USD Coin", 340 | "address": "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174", 341 | "symbol": "USDC", 342 | "decimals": 6, 343 | "chainId": 137, 344 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png" 345 | }, 346 | { 347 | "name": "Tether USD", 348 | "address": "0xc2132D05D31c914a87C6611C10748AEb04B58e8F", 349 | "symbol": "USDT", 350 | "decimals": 6, 351 | "chainId": 137, 352 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xdAC17F958D2ee523a2206206994597C13D831ec7/logo.png" 353 | }, 354 | { 355 | "name": "Vision Token", 356 | "address": "0x034b2090b579228482520c589dbD397c53Fc51cC", 357 | "symbol": "VISION", 358 | "decimals": 18, 359 | "chainId": 137, 360 | "logoURI": "https://s3-us-west-2.amazonaws.com/acf-uploads/apyvisionlogo200circle.png" 361 | }, 362 | { 363 | "name": "Wrapped BTC", 364 | "address": "0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6", 365 | "symbol": "WBTC", 366 | "decimals": 8, 367 | "chainId": 137, 368 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599/logo.png" 369 | }, 370 | { 371 | "name": "Wrapped Matic", 372 | "address": "0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270", 373 | "symbol": "WMATIC", 374 | "decimals": 18, 375 | "chainId": 137, 376 | "logoURI": "https://cryptologos.cc/logos/polygon-matic-logo.png?v=010" 377 | }, 378 | { 379 | "name": "WazirX", 380 | "address": "0x72d6066F486bd0052eefB9114B66ae40e0A6031a", 381 | "symbol": "WRX", 382 | "decimals": 8, 383 | "chainId": 137, 384 | "logoURI": "https://etherscan.io/token/images/binance-wrx_32.png" 385 | }, 386 | { 387 | "name": "yearn.finance", 388 | "address": "0xDA537104D6A5edd53c6fBba9A898708E465260b6", 389 | "symbol": "YFI", 390 | "decimals": 18, 391 | "chainId": 137, 392 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e/logo.png" 393 | }, 394 | { 395 | "name": "ZeroUtility", 396 | "address": "0xe86E8beb7340659DDDCE61727E500e3A5aD75a90", 397 | "symbol": "ZUT", 398 | "decimals": 18, 399 | "chainId": 137, 400 | "logoURI": "https://s2.gifyu.com/images/zutlogo.jpg" 401 | } 402 | ] 403 | -------------------------------------------------------------------------------- /src/tokens/moonbase.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped Glimmer", 4 | "address": "0xe73763DB808ecCDC0E36bC8E32510ED126910394", 5 | "symbol": "WGLMR", 6 | "decimals": 18, 7 | "chainId": 1287, 8 | "logoURI": "https://s2.coinmarketcap.com/static/img/coins/64x64/6836.png" 9 | }, 10 | { 11 | "name": "Custom ERC20 Token", 12 | "address": "0xd222a876B303dAe4F8e2099ba3B26ECB5A1b8521", 13 | "symbol": "ERC20S", 14 | "decimals": 18, 15 | "chainId": 1287, 16 | "logoURI": "https://s2.coinmarketcap.com/static/img/coins/64x64/6836.png" 17 | } 18 | ] 19 | -------------------------------------------------------------------------------- /src/tokens/rinkeby.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped Ether", 4 | "address": "0xc778417E063141139Fce010982780140Aa0cD5Ab", 5 | "symbol": "WETH", 6 | "decimals": 18, 7 | "chainId": 4, 8 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xc778417E063141139Fce010982780140Aa0cD5Ab/logo.png" 9 | }, 10 | { 11 | "name": "Dai Stablecoin", 12 | "address": "0xc7AD46e0b8a400Bb3C915120d284AafbA8fc4735", 13 | "symbol": "DAI", 14 | "decimals": 18, 15 | "chainId": 4, 16 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xc7AD46e0b8a400Bb3C915120d284AafbA8fc4735/logo.png" 17 | }, 18 | { 19 | "name": "Maker", 20 | "address": "0xF9bA5210F91D0474bd1e1DcDAeC4C58E359AaD85", 21 | "symbol": "MKR", 22 | "decimals": 18, 23 | "chainId": 4, 24 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xF9bA5210F91D0474bd1e1DcDAeC4C58E359AaD85/logo.png" 25 | }, 26 | { 27 | "name": "Uniswap", 28 | "address": "0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984", 29 | "symbol": "UNI", 30 | "decimals": 18, 31 | "chainId": 4, 32 | "logoURI": "ipfs://QmXttGpZrECX5qCyXbBQiqgQNytVGeZW5Anewvh2jc4psg" 33 | }, 34 | { 35 | "name": "SushiToken", 36 | "address": "0x5457Cc9B34eA486eB8d3286329F3536f71fa8A8B", 37 | "symbol": "SUSHI", 38 | "decimals": 18, 39 | "chainId": 4 40 | } 41 | ] 42 | -------------------------------------------------------------------------------- /src/tokens/ropsten.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped Ether", 4 | "address": "0xc778417E063141139Fce010982780140Aa0cD5Ab", 5 | "symbol": "WETH", 6 | "decimals": 18, 7 | "chainId": 3, 8 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xc778417E063141139Fce010982780140Aa0cD5Ab/logo.png" 9 | }, 10 | { 11 | "name": "Dai Stablecoin", 12 | "address": "0xc2118d4d90b274016cB7a54c03EF52E6c537D957", 13 | "symbol": "DAI", 14 | "decimals": 18, 15 | "chainId": 3, 16 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xaD6D458402F60fD3Bd25163575031ACDce07538D/logo.png" 17 | }, 18 | { 19 | "name": "Uniswap", 20 | "address": "0x71d82Eb6A5051CfF99582F4CDf2aE9cD402A4882", 21 | "symbol": "UNI", 22 | "decimals": 18, 23 | "chainId": 3, 24 | "logoURI": "ipfs://QmXttGpZrECX5qCyXbBQiqgQNytVGeZW5Anewvh2jc4psg" 25 | }, 26 | { 27 | "name": "SushiToken", 28 | "address": "0x5457Cc9B34eA486eB8d3286329F3536f71fa8A8B", 29 | "symbol": "SUSHI", 30 | "decimals": 18, 31 | "chainId": 3 32 | }, 33 | { 34 | "name": "USD Coin", 35 | "address": "0x0D9C8723B343A8368BebE0B5E89273fF8D712e3C", 36 | "symbol": "USDC", 37 | "decimals": 6, 38 | "chainId": 3, 39 | "logoURI": "https://raw.githubusercontent.com/sushiswap/assets/master/blockchains/ethereum/assets/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png" 40 | } 41 | ] 42 | -------------------------------------------------------------------------------- /src/tokens/xdai.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Wrapped xDai", 4 | "address": "0xe91D153E0b41518A2Ce8Dd3D7944Fa863463a97d", 5 | "symbol": "WXDAI", 6 | "decimals": 18, 7 | "chainId": 100, 8 | "logoURI": "https://cryptologos.cc/logos/xdai-stake-logo.png?v=010" 9 | }, 10 | { 11 | "name": "1INCH Token on xDai", 12 | "address": "0x7f7440C5098462f833E123B44B8A03E1d9785BAb", 13 | "symbol": "1INCH", 14 | "decimals": 18, 15 | "chainId": 100, 16 | "logoURI": "https://etherscan.io/token/images/1inch_32.png" 17 | }, 18 | { 19 | "name": "Aave Token on xDai", 20 | "address": "0xDF613aF6B44a31299E48131e9347F034347E2F00", 21 | "symbol": "AAVE", 22 | "decimals": 18, 23 | "chainId": 100, 24 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9/logo.png" 25 | }, 26 | { 27 | "name": "Aave Interest bearing DAI on xDai", 28 | "address": "0xbcfB2B889F7bAa29Dd7A7B447b6C87Aca572F4f4", 29 | "symbol": "ADAI", 30 | "decimals": 18, 31 | "chainId": 100, 32 | "logoURI": "https://etherscan.io/token/images/Aave_aDAI_32.png" 33 | }, 34 | { 35 | "name": "AriesFinancial on xDai", 36 | "address": "0xc81c785653D97766b995D867CF91F56367742eAC", 37 | "symbol": "AFI", 38 | "decimals": 18, 39 | "chainId": 100, 40 | "logoURI": "https://etherscan.io/token/images/ariesfinancial_32.png" 41 | }, 42 | { 43 | "name": "Agave", 44 | "address": "0x3a97704a1b25F08aa230ae53B352e2e72ef52843", 45 | "symbol": "AGVE", 46 | "decimals": 18, 47 | "chainId": 100, 48 | "logoURI": "https://raw.githubusercontent.com/1Hive/default-token-list/master/src/assets/xdai/0x3a97704a1b25f08aa230ae53b352e2e72ef52843/logo.png" 49 | }, 50 | { 51 | "name": "Akropolis on xDai", 52 | "address": "0xD27E1ECC4748F42e052331BeA917D89bEB883fc3", 53 | "symbol": "AKRO", 54 | "decimals": 18, 55 | "chainId": 100, 56 | "logoURI": "https://etherscan.io/token/images/Akropolis_32.png" 57 | }, 58 | { 59 | "name": "AllianceBlock Token on xDai", 60 | "address": "0x3581cc6A09DE85e9B91Ef93F2a5eF837706b84a5", 61 | "symbol": "ALBT", 62 | "decimals": 18, 63 | "chainId": 100, 64 | "logoURI": "https://etherscan.io/token/images/allianceblocktoken_32.png?v=2" 65 | }, 66 | { 67 | "name": "aleph.im v2 on xDai", 68 | "address": "0x4BC97997883C0397F556bd0F9Da6Fb71da22F9a2", 69 | "symbol": "ALEPH", 70 | "decimals": 18, 71 | "chainId": 100, 72 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x27702a26126e0B3702af63Ee09aC4d1A084EF628/logo.png" 73 | }, 74 | { 75 | "name": "Agave ALVIN v3", 76 | "address": "0x50DBde932A94b0c23D27cdd30Fbc6B987610c831", 77 | "symbol": "ALVIN", 78 | "decimals": 18, 79 | "chainId": 100, 80 | "logoURI": "https://raw.githubusercontent.com/1Hive/default-token-list/master/src/assets/xdai/0xf9bb1049378A3462E61Bba502530e5Ed62469925/logo.png" 81 | }, 82 | { 83 | "name": "AMIS on xDai", 84 | "address": "0xD51e1ddD116fFF9A71C1B8FEEb58113aFa2B4d93", 85 | "symbol": "AMIS", 86 | "decimals": 9, 87 | "chainId": 100, 88 | "logoURI": "https://raw.githubusercontent.com/trustwallet/tokens/master/tokens/0x949bed886c739f1a3273629b3320db0c5024c719.png" 89 | }, 90 | { 91 | "name": "Ampleforth on xDai", 92 | "address": "0xC84DD5B971521B6C9fA5E10d25E6428b19710e05", 93 | "symbol": "AMPL", 94 | "decimals": 9, 95 | "chainId": 100, 96 | "logoURI": "https://etherscan.io/token/images/ampleforth_32.png" 97 | }, 98 | { 99 | "name": "Aragon Network Token on xDai", 100 | "address": "0x437a044fb4693890E61D2C1c88E3718E928B8E90", 101 | "symbol": "ANTv1", 102 | "decimals": 18, 103 | "chainId": 100, 104 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x960b236A07cf122663c4303350609A66A7B288C0/logo.png" 105 | }, 106 | { 107 | "name": "Aragon Network Token on xDai v2", 108 | "address": "0x6EECeab954EFDBd7A8a8D9387bC719959B04b9CA", 109 | "symbol": "ANTv2", 110 | "decimals": 18, 111 | "chainId": 100, 112 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x960b236A07cf122663c4303350609A66A7B288C0/logo.png" 113 | }, 114 | { 115 | "name": "AirSwap Token on xDai", 116 | "address": "0x743a991365ba94BFC90Ad0002CAD433c7a33cb4a", 117 | "symbol": "AST", 118 | "decimals": 4, 119 | "chainId": 100, 120 | "logoURI": "https://assets.coingecko.com/coins/images/1019/small/AST.png" 121 | }, 122 | { 123 | "name": "Audius on xDai", 124 | "address": "0x8A95ea379E1Fa4C749dd0A7A21377162028C479e", 125 | "symbol": "AUDIO", 126 | "decimals": 18, 127 | "chainId": 100, 128 | "logoURI": "https://user-images.githubusercontent.com/79154451/108109600-68293800-7092-11eb-8235-db5df1e0ab7e.png" 129 | }, 130 | { 131 | "name": "Autopia Token on xDai", 132 | "address": "0xcaE40062a887581A3d1661d0AC2b481c32e3E938", 133 | "symbol": "AUT", 134 | "decimals": 18, 135 | "chainId": 100, 136 | "logoURI": "https://autopia.co/images/autopia-200-200.jpg" 137 | }, 138 | { 139 | "name": "Badger on xDai", 140 | "address": "0xdfc20AE04ED70bd9c7D720F449eEDAe19F659D65", 141 | "symbol": "BADGER", 142 | "decimals": 18, 143 | "chainId": 100, 144 | "logoURI": "https://raw.githubusercontent.com/Badger-Finance/badger-system/master/images/badger-logo.png" 145 | }, 146 | { 147 | "name": "Balancer on xDai", 148 | "address": "0x7eF541E2a22058048904fE5744f9c7E4C57AF717", 149 | "symbol": "BAL", 150 | "decimals": 18, 151 | "chainId": 100, 152 | "logoURI": "https://etherscan.io/token/images/Balancer_32.png" 153 | }, 154 | { 155 | "name": "BandToken on xDai", 156 | "address": "0xe154A435408211AC89757B76C4FbE4Dc9ED2Ef27", 157 | "symbol": "BAND", 158 | "decimals": 18, 159 | "chainId": 100, 160 | "logoURI": "https://etherscan.io/token/images/bandtoken_32.png" 161 | }, 162 | { 163 | "name": "BaoToken on xDai", 164 | "address": "0x82dFe19164729949fD66Da1a37BC70dD6c4746ce", 165 | "symbol": "BAO", 166 | "decimals": 18, 167 | "chainId": 100, 168 | "logoURI": "https://etherscan.io/token/images/bao_32.png" 169 | }, 170 | { 171 | "name": "Base Protocol on xDai", 172 | "address": "0x699D001ef13B15335193bC5FAd6CFC6747eeE8BE", 173 | "symbol": "BASE", 174 | "decimals": 9, 175 | "chainId": 100, 176 | "logoURI": "https://etherscan.io/token/images/baseprotocol_32.png" 177 | }, 178 | { 179 | "name": "Basic Attention Token on xDai", 180 | "address": "0xC6cC63f4AA25BBD4453eB5F3a0DfE546feF9b2f3", 181 | "symbol": "BAT", 182 | "decimals": 18, 183 | "chainId": 100, 184 | "logoURI": "https://etherscan.io/token/images/bat.png" 185 | }, 186 | { 187 | "name": "BlackDragon Token on xDai", 188 | "address": "0x778aa03021B0CD2b798b0b506403e070125D81C9", 189 | "symbol": "BDT", 190 | "decimals": 18, 191 | "chainId": 100, 192 | "logoURI": "https://etherscan.io/token/images/blackdragon_32.png" 193 | }, 194 | { 195 | "name": "Bidao on xDai", 196 | "address": "0x2977893F4C04bfbd6EFc68d0e46598d27810d3dB", 197 | "symbol": "BID", 198 | "decimals": 18, 199 | "chainId": 100, 200 | "logoURI": "https://assets.coingecko.com/coins/images/12596/small/bidao.png" 201 | }, 202 | { 203 | "name": "BNS Token on xDai", 204 | "address": "0xEC84A3bB48D70553C2599AC2d0Db07b2DFdF6364", 205 | "symbol": "BNS", 206 | "decimals": 18, 207 | "chainId": 100, 208 | "logoURI": "https://etherscan.io/token/images/bns_32.png" 209 | }, 210 | { 211 | "name": "bns.finance on xDai", 212 | "address": "0xbDB90BDAdae84Af0b07abf4cEFcC7989F909f9bD", 213 | "symbol": "BNSD", 214 | "decimals": 18, 215 | "chainId": 100, 216 | "logoURI": "https://etherscan.io/token/images/bnsd_32.png" 217 | }, 218 | { 219 | "name": "Bancor Network Token on xDai", 220 | "address": "0x9a495a281D959192343B0e007284bf130bd05F86", 221 | "symbol": "BNT", 222 | "decimals": 18, 223 | "chainId": 100, 224 | "logoURI": "https://etherscan.io/token/images/bancor_32.png" 225 | }, 226 | { 227 | "name": "BTCCB", 228 | "address": "0xB2aE7983A8142401d45546aAb981e5fbff520991", 229 | "symbol": "BTCCB", 230 | "decimals": 18, 231 | "chainId": 100, 232 | "logoURI": "https://miro.medium.com/fit/c/164/164/1*Poxa2tacGDtg8A9sZdfJfA.jpeg" 233 | }, 234 | { 235 | "name": "USD Coin on xDai binance-peg", 236 | "address": "0xD10Cc63531a514BBa7789682E487Add1f15A51E2", 237 | "symbol": "BUSDC", 238 | "decimals": 18, 239 | "chainId": 100, 240 | "logoURI": "https://dynamic-assets.coinbase.com/3c15df5e2ac7d4abbe9499ed9335041f00c620f28e8de2f93474a9f432058742cdf4674bd43f309e69778a26969372310135be97eb183d91c492154176d455b8/asset_icons/9d67b728b6c8f457717154b3a35f9ddc702eae7e76c4684ee39302c4d7fd0bb8.png" 241 | }, 242 | { 243 | "name": "Celsius on xDai", 244 | "address": "0x0aCD91f92Fe07606ab51EA97d8521E29D110fD09", 245 | "symbol": "CEL", 246 | "decimals": 4, 247 | "chainId": 100, 248 | "logoURI": "https://etherscan.io/token/images/celsiustoken1_28.png" 249 | }, 250 | { 251 | "name": "CelerToken on xDai", 252 | "address": "0x248c54B3fc3bC8b20D0CDEE059E17C67e4a3299d", 253 | "symbol": "CELR", 254 | "decimals": 18, 255 | "chainId": 100, 256 | "logoURI": "https://etherscan.io/token/images/celer_28.png" 257 | }, 258 | { 259 | "name": "Cheemscoin", 260 | "address": "0xEaF7B3376173DF8BC0C22Ad6126943cC8353C1Ee", 261 | "symbol": "CHEEMS", 262 | "decimals": 18, 263 | "chainId": 100, 264 | "logoURI": "https://kowasaur.github.io/cheemscoin/cheemscoin.png" 265 | }, 266 | { 267 | "name": "SwissBorg Token on xDai", 268 | "address": "0x76eaFffA1873a8aCd43864B66A728bd873c5E08a", 269 | "symbol": "CHSB", 270 | "decimals": 8, 271 | "chainId": 100, 272 | "logoURI": "https://etherscan.io/token/images/swissborg_28_3.png" 273 | }, 274 | { 275 | "name": "coin_artist on xDai", 276 | "address": "0x14411aecA652F5131834Bf0c8fF581B5dDf3bc03", 277 | "symbol": "COIN", 278 | "decimals": 18, 279 | "chainId": 100, 280 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x87b008E57F640D94Ee44Fd893F0323AF933F9195/logo.png" 281 | }, 282 | { 283 | "name": "COLD TRUTH CASH", 284 | "address": "0xdbcadE285846131a5e7384685EADDBDFD9625557", 285 | "symbol": "COLD", 286 | "decimals": 18, 287 | "chainId": 100, 288 | "logoURI": "https://user-images.githubusercontent.com/77219460/105215847-eda9ed00-5ba5-11eb-83a4-f8ea6b9bd7bb.png" 289 | }, 290 | { 291 | "name": "Compound on xDai", 292 | "address": "0xDf6FF92bfDC1e8bE45177DC1f4845d391D3ad8fD", 293 | "symbol": "COMP", 294 | "decimals": 18, 295 | "chainId": 100, 296 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xc00e94Cb662C3520282E6f5717214004A7f26888/logo.png" 297 | }, 298 | { 299 | "name": "Cream on xDai", 300 | "address": "0x1939D3431CF0E44B1d63b86e2cE489E5a341B1Bf", 301 | "symbol": "CREAM", 302 | "decimals": 18, 303 | "chainId": 100, 304 | "logoURI": "https://etherscan.io/token/images/CreamFinance_32.png" 305 | }, 306 | { 307 | "name": "Curve DAO Token on xDai", 308 | "address": "0x712b3d230F3C1c19db860d80619288b1F0BDd0Bd", 309 | "symbol": "CRV", 310 | "decimals": 18, 311 | "chainId": 100, 312 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xD533a949740bb3306d119CC777fa900bA034cd52/logo.png" 313 | }, 314 | { 315 | "name": "Concentrated Voting Power on xDai", 316 | "address": "0x7Da0bFE9D26C5b64c7580c04Bb1425364273E4b0", 317 | "symbol": "CVP", 318 | "decimals": 18, 319 | "chainId": 100, 320 | "logoURI": "https://assets.coingecko.com/coins/images/12266/small/Powerpool.jpg" 321 | }, 322 | { 323 | "name": "Dai Stablecoin on xDai", 324 | "address": "0x44fA8E6f47987339850636F88629646662444217", 325 | "symbol": "DAI", 326 | "decimals": 18, 327 | "chainId": 100, 328 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x6B175474E89094C44Da98b954EedeAC495271d0F/logo.png" 329 | }, 330 | { 331 | "name": "Streamr DATAcoin on xDai", 332 | "address": "0x796879025A627d34042E3eDd2E239E75ba4445e6", 333 | "symbol": "DATA", 334 | "decimals": 18, 335 | "chainId": 100, 336 | "logoURI": "https://etherscan.io/token/images/streamr2_28.png" 337 | }, 338 | { 339 | "name": "DeFireX DAI on xDai", 340 | "address": "0x1319067e82F0b9981F19191E1C08bb6E6e055DD3", 341 | "symbol": "DDAI", 342 | "decimals": 18, 343 | "chainId": 100, 344 | "logoURI": "https://etherscan.io/token/images/defirex_32.png" 345 | }, 346 | { 347 | "name": "Decentralized Insurance Protocol on xDai", 348 | "address": "0x48b1B0d077b4919b65b4E4114806dD803901E1D9", 349 | "symbol": "DIP", 350 | "decimals": 18, 351 | "chainId": 100, 352 | "logoURI": "https://etherscan.io/token/images/etherisc_28.png" 353 | }, 354 | { 355 | "name": "Davincij15 Token on xDai", 356 | "address": "0x7C16c63684D86BaCC52e8793B08a5a1A3cB1BA1e", 357 | "symbol": "DJ15", 358 | "decimals": 9, 359 | "chainId": 100, 360 | "logoURI": "https://etherscan.io/token/images/davincicode_32.png" 361 | }, 362 | { 363 | "name": "Donut on xDai", 364 | "address": "0x524B969793a64a602342d89BC2789D43a016B13A", 365 | "symbol": "DONUT", 366 | "decimals": 18, 367 | "chainId": 100, 368 | "logoURI": "https://assets.coingecko.com/coins/images/7538/small/Donut.png" 369 | }, 370 | { 371 | "name": "Enigma on xDai", 372 | "address": "0x7a7d81657A1A66b38a6cA2565433A9873C6913B2", 373 | "symbol": "ENG", 374 | "decimals": 8, 375 | "chainId": 100, 376 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xf0Ee6b27b759C9893Ce4f094b49ad28fd15A23e4/logo.png" 377 | }, 378 | { 379 | "name": "Enjin Coin on xDai", 380 | "address": "0x5A757F0BcAdFDb78651B7bDBe67e44e8Fd7F7f6b", 381 | "symbol": "ENJ", 382 | "decimals": 18, 383 | "chainId": 100, 384 | "logoURI": "https://etherscan.io/token/images/enjin_28_2.png" 385 | }, 386 | { 387 | "name": "Ethereum Meta on xDai", 388 | "address": "0x9bD5E0ce813d5172859b0b70Ff7Bb3C325CEE913", 389 | "symbol": "ETHM", 390 | "decimals": 18, 391 | "chainId": 100, 392 | "logoURI": "https://etherscan.io/token/images/ethereummeta_32.png" 393 | }, 394 | { 395 | "name": "Wrapped ETHO", 396 | "address": "0xB17d999E840e0c1B157Ca5Ab8039Bd958b5fA317", 397 | "symbol": "ETHO", 398 | "decimals": 18, 399 | "chainId": 100, 400 | "logoURI": "https://raw.githubusercontent.com/Ether1Project/Ether-1-Branding/master/PNG%20Logos/ether1new-transparent.png" 401 | }, 402 | { 403 | "name": "Energy Web Token Bridged on xDai", 404 | "address": "0x6A8cb6714B1EE5b471a7D2eC4302cb4f5Ff25eC2", 405 | "symbol": "EWTB", 406 | "decimals": 18, 407 | "chainId": 100, 408 | "logoURI": "https://etherscan.io/token/images/energywebtokenbridged_32.png" 409 | }, 410 | { 411 | "name": "Freedom Reserve on xDai", 412 | "address": "0x270DE58F54649608D316fAa795a9941b355A2Bd0", 413 | "symbol": "FR", 414 | "decimals": 18, 415 | "chainId": 100, 416 | "logoURI": "https://freedomreserv.eth.link/img/freedomcoin400x400.png" 417 | }, 418 | { 419 | "name": "FalconSwap Token on xDai", 420 | "address": "0xde1E70ed71936E4C249a7d43E550f0b99FCCDDfC", 421 | "symbol": "FSW", 422 | "decimals": 18, 423 | "chainId": 100, 424 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xfffffffFf15AbF397dA76f1dcc1A1604F45126DB/logo.png" 425 | }, 426 | { 427 | "name": "Bitgear on xDai", 428 | "address": "0x6f09CF96558d44584dB07f8477Dd3490599aA63E", 429 | "symbol": "GEAR", 430 | "decimals": 18, 431 | "chainId": 100, 432 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x1b980e05943dE3dB3a459C72325338d327B6F5a9/logo.png" 433 | }, 434 | { 435 | "name": "DAOstack on xDai", 436 | "address": "0x12daBe79cffC1fdE82FCd3B96DBE09FA4D8cd599", 437 | "symbol": "GEN", 438 | "decimals": 18, 439 | "chainId": 100, 440 | "logoURI": "https://etherscan.io/token/images/daostack1_28.png" 441 | }, 442 | { 443 | "name": "Golden Bull Token on xDAI", 444 | "address": "0x30610f98b61593DE963b2303AeeaeE69823f561f", 445 | "symbol": "GLDB", 446 | "decimals": 18, 447 | "chainId": 100, 448 | "logoURI": "https://user-images.githubusercontent.com/72521363/95662995-2c55f300-0b33-11eb-90f9-4b1fe6c4097f.png" 449 | }, 450 | { 451 | "name": "Gnosis on xDai", 452 | "address": "0x9C58BAcC331c9aa871AFD802DB6379a98e80CEdb", 453 | "symbol": "GNO", 454 | "decimals": 18, 455 | "chainId": 100, 456 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x6810e776880C02933D47DB1b9fc05908e5386b96/logo.png" 457 | }, 458 | { 459 | "name": "Graph Token on xDai", 460 | "address": "0xFAdc59D012Ba3c110B08A15B7755A5cb7Cbe77D7", 461 | "symbol": "GRT", 462 | "decimals": 18, 463 | "chainId": 100, 464 | "logoURI": "https://etherscan.io/token/images/TheGraph_32.png" 465 | }, 466 | { 467 | "name": "HEX on xDai", 468 | "address": "0xd9Fa47e33d4Ff7a1ACA489DE1865ac36c042B07a", 469 | "symbol": "HEX", 470 | "decimals": 8, 471 | "chainId": 100, 472 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x2b591e99afE9f32eAA6214f7B7629768c40Eeb39/logo.png" 473 | }, 474 | { 475 | "name": "Honey", 476 | "address": "0x71850b7E9Ee3f13Ab46d67167341E4bDc905Eef9", 477 | "symbol": "HNY", 478 | "decimals": 18, 479 | "chainId": 100, 480 | "logoURI": "https://raw.githubusercontent.com/1Hive/default-token-list/master/src/assets/xdai/0x71850b7E9Ee3f13Ab46d67167341E4bDc905Eef9/logo.png" 481 | }, 482 | { 483 | "name": "HOPR Token on xDai", 484 | "address": "0xD057604A14982FE8D88c5fC25Aac3267eA142a08", 485 | "symbol": "HOPR", 486 | "decimals": 18, 487 | "chainId": 100, 488 | "logoURI": "https://raw.githubusercontent.com/balancer-labs/assets/master/assets/0xf5581dfefd8fb0e4aec526be659cfab1f8c781da.png" 489 | }, 490 | { 491 | "name": "HoloToken on xDai", 492 | "address": "0x346b2968508d32f0192cD7a60Ef3D9C39a3cF549", 493 | "symbol": "HOT", 494 | "decimals": 18, 495 | "chainId": 100, 496 | "logoURI": "https://etherscan.io/token/images/holo_28.png" 497 | }, 498 | { 499 | "name": "JOON on xDai", 500 | "address": "0x5fE9885226677F3Eb5C9ad8aB6c421B4EA38535d", 501 | "symbol": "JOON", 502 | "decimals": 4, 503 | "chainId": 100, 504 | "logoURI": "https://assets.coingecko.com/coins/images/12595/small/logo.png" 505 | }, 506 | { 507 | "name": "JPY Coin on xDai", 508 | "address": "0x417602f4fbdd471A431Ae29fB5fe0A681964C11b", 509 | "symbol": "JPYC", 510 | "decimals": 18, 511 | "chainId": 100, 512 | "logoURI": "https://etherscan.io/token/images/jpycoin_32.png" 513 | }, 514 | { 515 | "name": "Kyber Network Crystal on xDai", 516 | "address": "0x1534fB3E82849314360C267FE20Df3901A2ED3f9", 517 | "symbol": "KNC", 518 | "decimals": 18, 519 | "chainId": 100, 520 | "logoURI": "https://assets.coingecko.com/coins/images/947/small/kyber-logo.png" 521 | }, 522 | { 523 | "name": "Unilayer on xDai", 524 | "address": "0x8fBEDD16904B561e30ea402F459900E9D90614af", 525 | "symbol": "LAYER", 526 | "decimals": 18, 527 | "chainId": 100, 528 | "logoURI": "https://etherscan.io/token/images/unilayer_32.png" 529 | }, 530 | { 531 | "name": "EthLend Token on xDai", 532 | "address": "0xc1b42BDb485dEb24C74f58399288d7915a726C1D", 533 | "symbol": "LEND", 534 | "decimals": 18, 535 | "chainId": 100, 536 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x80fB784B7eD66730e8b1DBd9820aFD29931aab03/logo.png" 537 | }, 538 | { 539 | "name": "ChainLink Token on xDai", 540 | "address": "0xE2e73A1c69ecF83F464EFCE6A5be353a37cA09b2", 541 | "symbol": "LINK", 542 | "decimals": 18, 543 | "chainId": 100, 544 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x514910771AF9Ca656af840dff83E8264EcF986CA/logo.png" 545 | }, 546 | { 547 | "name": "Meridian Network on xDai", 548 | "address": "0xF99efEB34aff6D3099C41605e9Ee778cAEC39317", 549 | "symbol": "LOCK", 550 | "decimals": 18, 551 | "chainId": 100, 552 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x95172ccBe8344fecD73D0a30F54123652981BD6F/logo.png" 553 | }, 554 | { 555 | "name": "Livepeer Token on xDai", 556 | "address": "0x7DB0be7A41b5395268e065776e800e27181C81AB", 557 | "symbol": "LPT", 558 | "decimals": 18, 559 | "chainId": 100, 560 | "logoURI": "https://etherscan.io/token/images/livepeer_28.png" 561 | }, 562 | { 563 | "name": "LoopringCoin V2 on xDai", 564 | "address": "0x2bE73bFeEC620aa9B67535A4D3827bB1e29436D1", 565 | "symbol": "LRC", 566 | "decimals": 18, 567 | "chainId": 100, 568 | "logoURI": "https://etherscan.io/token/images/lrc_32.png" 569 | }, 570 | { 571 | "name": "LUKSO Token on xDai", 572 | "address": "0x79CF2029717E2E78C8927F65F079Ab8dA21781Ee", 573 | "symbol": "LYXe", 574 | "decimals": 18, 575 | "chainId": 100, 576 | "logoURI": "https://etherscan.io/token/images/luksotoken_32.png" 577 | }, 578 | { 579 | "name": "Decentraland MANA on xDai", 580 | "address": "0x7838796B6802B18D7Ef58fc8B757705D6c9d12b3", 581 | "symbol": "MANA", 582 | "decimals": 18, 583 | "chainId": 100, 584 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x0F5D2fB29fb7d3CFeE444a200298f468908cC942/logo.png" 585 | }, 586 | { 587 | "name": "Matic Token on xDai", 588 | "address": "0x7122d7661c4564b7C6Cd4878B06766489a6028A2", 589 | "symbol": "MATIC", 590 | "decimals": 18, 591 | "chainId": 100, 592 | "logoURI": "https://etherscan.io/token/images/matictoken_28.png" 593 | }, 594 | { 595 | "name": "MCDEX Token on xDai", 596 | "address": "0xd361c1FD663d8f2dc36ae07FF6F3623532cAbdD3", 597 | "symbol": "MCB", 598 | "decimals": 18, 599 | "chainId": 100, 600 | "logoURI": "https://etherscan.io/token/images/mcdextoken_32.png" 601 | }, 602 | { 603 | "name": "McDonaldsCoin on xDai", 604 | "address": "0xC577cDdABB7893cC2cA15eF4b5D5e5E13c3FeeD3", 605 | "symbol": "MCDC", 606 | "decimals": 2, 607 | "chainId": 100, 608 | "logoURI": "https://raw.githubusercontent.com/birdieearlybird/mcdc_assets/main/mcdc_logo_200.png" 609 | }, 610 | { 611 | "name": "MEME on xDai", 612 | "address": "0x512a2Eb0277573ae9Be0d48c782590b624048fdF", 613 | "symbol": "MEME", 614 | "decimals": 8, 615 | "chainId": 100, 616 | "logoURI": "https://etherscan.io/token/images/meme_32.png" 617 | }, 618 | { 619 | "name": "BLOCKMESH", 620 | "address": "0xE7EF58d8180Cc269C6620dED3E6cc536A52E2ebD", 621 | "symbol": "MESH", 622 | "decimals": 18, 623 | "chainId": 100, 624 | "logoURI": "https://etherscan.io/token/images/blockmeshio_28.png" 625 | }, 626 | { 627 | "name": "Metronome on xDai", 628 | "address": "0xB4B6f80d8E573e9867c90163BFdb00E29d92716a", 629 | "symbol": "MET", 630 | "decimals": 18, 631 | "chainId": 100, 632 | "logoURI": "https://etherscan.io/token/images/metronome_28.png" 633 | }, 634 | { 635 | "name": "Maker on xDai", 636 | "address": "0x5fd896D248fbfa54d26855C267859eb1b4DAEe72", 637 | "symbol": "MKR", 638 | "decimals": 18, 639 | "chainId": 100, 640 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2/logo.png" 641 | }, 642 | { 643 | "name": "MoonToken on xDai", 644 | "address": "0x5b917D4fb9B27591353211c32F1552A527987AFC", 645 | "symbol": "MOON", 646 | "decimals": 18, 647 | "chainId": 100, 648 | "logoURI": "https://etherscan.io/token/images/moonswap_32.png" 649 | }, 650 | { 651 | "name": "Nexo on xDai", 652 | "address": "0x26DC03E492763068CCfE7C39B93A22442807C360", 653 | "symbol": "NEXO", 654 | "decimals": 18, 655 | "chainId": 100, 656 | "logoURI": "https://etherscan.io/token/images/nexo_32.png" 657 | }, 658 | { 659 | "name": "Unifty on xDai", 660 | "address": "0x1A186E7268F3Ed5AdFEa6B9e0655f70059941E11", 661 | "symbol": "NIF", 662 | "decimals": 18, 663 | "chainId": 100, 664 | "logoURI": "https://unifty.io/unifty3.png" 665 | }, 666 | { 667 | "name": "Pundi X Token on xDai", 668 | "address": "0x26dD64bdCB2FaF4F7E49A73145752e8d9cb34C94", 669 | "symbol": "NPXS", 670 | "decimals": 18, 671 | "chainId": 100, 672 | "logoURI": "https://etherscan.io/token/images/pundix-28.png" 673 | }, 674 | { 675 | "name": "Energi on xDai", 676 | "address": "0x0dCfEd2C3041e66b2D8c4Ea39782c60355716316", 677 | "symbol": "NRGE", 678 | "decimals": 18, 679 | "chainId": 100, 680 | "logoURI": "https://etherscan.io/token/images/energi_32.png" 681 | }, 682 | { 683 | "name": "Ocean Token on xDai", 684 | "address": "0x51732a6fC4673d1aCca4c047F5465922716508Ad", 685 | "symbol": "OCEAN", 686 | "decimals": 18, 687 | "chainId": 100, 688 | "logoURI": "https://etherscan.io/token/images/oceantoken_28.png" 689 | }, 690 | { 691 | "name": "OM Token on xDai", 692 | "address": "0x309Bc6DbcbFB9c84D26FDF65E8924367efCCBdb9", 693 | "symbol": "OM", 694 | "decimals": 18, 695 | "chainId": 100, 696 | "logoURI": "https://assets.coingecko.com/coins/images/12151/small/OM_3D_whtbg.png" 697 | }, 698 | { 699 | "name": "OMGToken on xDai", 700 | "address": "0x8395F7123ba3FFAD52E7414433D825931C81C879", 701 | "symbol": "OMG", 702 | "decimals": 18, 703 | "chainId": 100, 704 | "logoURI": "https://etherscan.io/token/images/OMGNetwork_32.png" 705 | }, 706 | { 707 | "name": "OWL on xDai", 708 | "address": "0x0905Ab807F8FD040255F0cF8fa14756c1D824931", 709 | "symbol": "OWL", 710 | "decimals": 18, 711 | "chainId": 100, 712 | "logoURI": "https://assets.coingecko.com/coins/images/11149/small/gnosis-owl_32.png" 713 | }, 714 | { 715 | "name": "Panvala pan on xDai", 716 | "address": "0x981fB9BA94078a2275A8fc906898ea107B9462A8", 717 | "symbol": "PAN", 718 | "decimals": 18, 719 | "chainId": 100, 720 | "logoURI": "https://assets.coingecko.com/coins/images/9543/small/pan-logo.png" 721 | }, 722 | { 723 | "name": "Polyient Games Governance Token", 724 | "address": "0x6099280dC5FC97CBB61B456246316a1B8f79534B", 725 | "symbol": "PGT", 726 | "decimals": 18, 727 | "chainId": 100, 728 | "logoURI": "https://user-images.githubusercontent.com/72729493/95717875-9eb1fa80-0c3b-11eb-8a5b-af581da2c892.png" 729 | }, 730 | { 731 | "name": "Phala on xDai", 732 | "address": "0x7eA8aF7301b763451B7FB25F8Fc2406819A7E36f", 733 | "symbol": "PHA", 734 | "decimals": 18, 735 | "chainId": 100, 736 | "logoURI": "https://etherscan.io/token/images/phala_32.png?v=4" 737 | }, 738 | { 739 | "name": "DeFiPIE Token on xDai", 740 | "address": "0x317eab07380d670Ea814025CbA40f5624354a32f", 741 | "symbol": "PIE", 742 | "decimals": 18, 743 | "chainId": 100, 744 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x607C794cDa77efB21F8848B7910ecf27451Ae842/logo.png" 745 | }, 746 | { 747 | "name": "Pinakion on xDai", 748 | "address": "0x37b60f4E9A31A64cCc0024dce7D0fD07eAA0F7B3", 749 | "symbol": "PNK", 750 | "decimals": 18, 751 | "chainId": 100, 752 | "logoURI": "https://etherscan.io/token/images/kelros_28.png" 753 | }, 754 | { 755 | "name": "POA20 on xDai", 756 | "address": "0x985e144EB355273c4B4D51E448B68b657F482E26", 757 | "symbol": "POA20", 758 | "decimals": 18, 759 | "chainId": 100, 760 | "logoURI": "https://etherscan.io/token/images/poa_28_2.png" 761 | }, 762 | { 763 | "name": "PolkastarterToken on xDai", 764 | "address": "0x75481A953a4bBa6B3C445907dB403E4b5D222174", 765 | "symbol": "POLS", 766 | "decimals": 18, 767 | "chainId": 100, 768 | "logoURI": "https://etherscan.io/token/images/polkastarter_32.png" 769 | }, 770 | { 771 | "name": "prophet.finance on xDai", 772 | "address": "0xa9e5cd4Efc86c01FaE9a9Fcd6E8669B97c92a937", 773 | "symbol": "PROPHET", 774 | "decimals": 9, 775 | "chainId": 100, 776 | "logoURI": "https://pbs.twimg.com/profile_images/1329880689135718401/24hXwpqd_400x400.jpg" 777 | }, 778 | { 779 | "name": "Particle", 780 | "address": "0xB5d592f85ab2D955c25720EbE6FF8D4d1E1Be300", 781 | "symbol": "PRTCLE", 782 | "decimals": 18, 783 | "chainId": 100, 784 | "logoURI": "https://raw.githubusercontent.com/ShenaniganDApp/scoreboard/master/assets/token.png" 785 | }, 786 | { 787 | "name": "PowerTrade Fuel Token on xDai", 788 | "address": "0x53ef00be819A062533a0E699077c621a28EADEd1", 789 | "symbol": "PTF", 790 | "decimals": 18, 791 | "chainId": 100, 792 | "logoURI": "https://etherscan.io/token/images/powertrade_32.png" 793 | }, 794 | { 795 | "name": "Rare Coin", 796 | "address": "0xCF740AC463098E442B31A5E88F4b359B30255616", 797 | "symbol": "RARE", 798 | "decimals": 18, 799 | "chainId": 100, 800 | "logoURI": "https://affinityharmonics.s3.ca-central-1.amazonaws.com/Cloud/rare-logo-multi.png" 801 | }, 802 | { 803 | "name": "Rarible on xDai", 804 | "address": "0x4bE85ACC1cd711F403dC7BdE9e6caDfC5A94744b", 805 | "symbol": "RARI", 806 | "decimals": 18, 807 | "chainId": 100, 808 | "logoURI": "https://etherscan.io/token/images/rarible_32.png" 809 | }, 810 | { 811 | "name": "Republic Token on xDai", 812 | "address": "0x0da1a02CDF84C44021671d183d616925164E08Aa", 813 | "symbol": "REN", 814 | "decimals": 18, 815 | "chainId": 100, 816 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x408e41876cCCDC0F92210600ef50372656052a38/logo.png" 817 | }, 818 | { 819 | "name": "renBTC on xDai", 820 | "address": "0x4A88248BAa5b39bB4A9CAa697Fb7f8ae0C3f0ddB", 821 | "symbol": "renBTC", 822 | "decimals": 8, 823 | "chainId": 100, 824 | "logoURI": "https://etherscan.io/token/images/renbtc_32.png" 825 | }, 826 | { 827 | "name": "renZEC on xDai", 828 | "address": "0x5F2852AFd20C39849f6f56F4102b8c29Ee141ADD", 829 | "symbol": "renZEC", 830 | "decimals": 8, 831 | "chainId": 100, 832 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x1C5db575E2Ff833E46a2E9864C22F4B22E0B37C2/logo.png" 833 | }, 834 | { 835 | "name": "Darwinia Network Native Token on xDai", 836 | "address": "0x1479ebFe327B62bFF255C0749a242748D3e7347a", 837 | "symbol": "RING", 838 | "decimals": 18, 839 | "chainId": 100, 840 | "logoURI": "https://etherscan.io/token/images/darwinia_32.png" 841 | }, 842 | { 843 | "name": "iEx.ec Network Token on xDai", 844 | "address": "0x60e668f54106222adC1Da80c169281B3355B8e5D", 845 | "symbol": "RLC", 846 | "decimals": 9, 847 | "chainId": 100, 848 | "logoURI": "https://etherscan.io/token/images/iexec_28.png" 849 | }, 850 | { 851 | "name": "MetaFactory on xDai", 852 | "address": "0x8D02b73904856De6998Ffdf6e7ee18cC21137a79", 853 | "symbol": "ROBOT", 854 | "decimals": 18, 855 | "chainId": 100, 856 | "logoURI": "https://assets.coingecko.com/coins/images/13517/small/MF_Robot_200px.png?1609312481" 857 | }, 858 | { 859 | "name": "Rocket Pool on xDai", 860 | "address": "0x2F0E755Efe6b58238A67DB420Ff3513Ec1fb31eF", 861 | "symbol": "RPL", 862 | "decimals": 18, 863 | "chainId": 100, 864 | "logoURI": "https://etherscan.io/token/images/Rocketpool_32.png" 865 | }, 866 | { 867 | "name": "Reserve Rights on xDai", 868 | "address": "0x5A87eaC5642BfEd4e354Ee8738DACd298E07D1Af", 869 | "symbol": "RSR", 870 | "decimals": 18, 871 | "chainId": 100, 872 | "logoURI": "https://etherscan.io/token/images/reserverights_32.png" 873 | }, 874 | { 875 | "name": "Sai on xDai", 876 | "address": "0xc439E5B1DEe4f866B681E7c5E5dF140aA47fBf19", 877 | "symbol": "SAI", 878 | "decimals": 18, 879 | "chainId": 100, 880 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x89d24A6b4CcB1B6fAA2625fE562bDD9a23260359/logo.png" 881 | }, 882 | { 883 | "name": "Synth sETH on xDai", 884 | "address": "0x8F365b41B98Fe84aCB287540b4B4AB633e07EDb2", 885 | "symbol": "SETH", 886 | "decimals": 18, 887 | "chainId": 100, 888 | "logoURI": "https://etherscan.io/token/images/SynthetixsETH_32.png" 889 | }, 890 | { 891 | "name": "Shenanigan SHWEATPANTS v3", 892 | "address": "0x11C9F4c3E960CCe4464E25a9fA5414Ab72fc45EA", 893 | "symbol": "SHWEATPANTS", 894 | "decimals": 18, 895 | "chainId": 100, 896 | "logoURI": "https://raw.githubusercontent.com/ShenaniganDApp/DrippStaking/master/tokens/SHWEATPANTS.png" 897 | }, 898 | { 899 | "name": "Status Network Token on xDai", 900 | "address": "0x044F6ae3aEF34fdB8FdDc7c05F9cC17F19Acd516", 901 | "symbol": "SNT", 902 | "decimals": 18, 903 | "chainId": 100, 904 | "logoURI": "https://etherscan.io/token/images/status.png" 905 | }, 906 | { 907 | "name": "Synthetix Network Token on xDai", 908 | "address": "0x3A00E08544d589E19a8e7D97D0294331341cdBF6", 909 | "symbol": "SNX", 910 | "decimals": 18, 911 | "chainId": 100, 912 | "logoURI": "https://assets.coingecko.com/coins/images/3406/small/SNX.png" 913 | }, 914 | { 915 | "name": "Sora Token on xDai", 916 | "address": "0x5bbfBfB123B72A255504BE985bd2B474e481e866", 917 | "symbol": "SORA", 918 | "decimals": 18, 919 | "chainId": 100, 920 | "logoURI": "https://etherscan.io/token/images/soratoken_32.png" 921 | }, 922 | { 923 | "name": "Stake Token on xDai", 924 | "address": "0xb7D311E2Eb55F2f68a9440da38e7989210b9A05e", 925 | "symbol": "STAKE", 926 | "decimals": 18, 927 | "chainId": 100, 928 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x0Ae055097C6d159879521C384F1D2123D1f195e6/logo.png" 929 | }, 930 | { 931 | "name": "StorjToken on xDai", 932 | "address": "0xBc650b9cC12dB4da14b2417c60CCd6F4d77c3998", 933 | "symbol": "STORJ", 934 | "decimals": 8, 935 | "chainId": 100, 936 | "logoURI": "https://etherscan.io/token/images/storj_32.png" 937 | }, 938 | { 939 | "name": "Synthetix USD on xDai", 940 | "address": "0xB1950Fb2C9C0CbC8553578c67dB52Aa110A93393", 941 | "symbol": "sUSD", 942 | "decimals": 18, 943 | "chainId": 100, 944 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x57Ab1ec28D129707052df4dF418D58a2D46d5f51/logo.png" 945 | }, 946 | { 947 | "name": "SushiToken on xDai", 948 | "address": "0x2995D1317DcD4f0aB89f4AE60F3f020A4F17C7CE", 949 | "symbol": "SUSHI", 950 | "decimals": 18, 951 | "chainId": 100, 952 | "logoURI": "https://etherscan.io/token/images/sushiswap_32.png" 953 | }, 954 | { 955 | "name": "TrustSwap Token on xDai", 956 | "address": "0xEAaccE3E5bCC10FB32c2553f8d6Fc4C3888ffDaD", 957 | "symbol": "SWAP", 958 | "decimals": 18, 959 | "chainId": 100, 960 | "logoURI": "https://etherscan.io/token/images/trustswap_32.png" 961 | }, 962 | { 963 | "name": "tBTC on xDai", 964 | "address": "0x0811E451447D5819976a95a02f130c3b00D59346", 965 | "symbol": "TBTC", 966 | "decimals": 18, 967 | "chainId": 100, 968 | "logoURI": "https://etherscan.io/token/images/tbtc_32.png" 969 | }, 970 | { 971 | "name": "Testa on xDai", 972 | "address": "0x16AFe6E6754FA3694afD0Ce48f4Bea102Efacc17", 973 | "symbol": "TESTA", 974 | "decimals": 18, 975 | "chainId": 100, 976 | "logoURI": "https://etherscan.io/token/images/testa_32.png" 977 | }, 978 | { 979 | "name": "Trace Token on xDai", 980 | "address": "0xEddd81E0792E764501AaE206EB432399a0268DB5", 981 | "symbol": "TRAC", 982 | "decimals": 18, 983 | "chainId": 100, 984 | "logoURI": "https://etherscan.io/token/images/origintrail_28.png" 985 | }, 986 | { 987 | "name": "UniTrade on xDai", 988 | "address": "0x860182180e146300dF38aab8d328C6E80BEC9547", 989 | "symbol": "TRADE", 990 | "decimals": 18, 991 | "chainId": 100, 992 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x6F87D756DAf0503d08Eb8993686c7Fc01Dc44fB1/logo.png" 993 | }, 994 | { 995 | "name": "Contribute on xDai", 996 | "address": "0xff0Ce179a303F26017019acf78B951cB743B8D9b", 997 | "symbol": "TRIB", 998 | "decimals": 18, 999 | "chainId": 100, 1000 | "logoURI": "https://etherscan.io/token/images/contribute_32.png?v=2" 1001 | }, 1002 | { 1003 | "name": "Trips on xDai", 1004 | "address": "0x479e32cDFF5F216f93060700C711D1cC8E811a6B", 1005 | "symbol": "TRIPS", 1006 | "decimals": 18, 1007 | "chainId": 100, 1008 | "logoURI": "https://etherscan.io/token/images/trips_32.png" 1009 | }, 1010 | { 1011 | "name": "TrueUSD on xDai", 1012 | "address": "0xB714654e905eDad1CA1940b7790A8239ece5A9ff", 1013 | "symbol": "TUSD", 1014 | "decimals": 18, 1015 | "chainId": 100, 1016 | "logoURI": "https://etherscan.io/token/images/trueusd_32.png" 1017 | }, 1018 | { 1019 | "name": "UniBright on xDai", 1020 | "address": "0xd3b93fF74E43Ba9568e5019b38AdDB804feF719B", 1021 | "symbol": "UBT", 1022 | "decimals": 8, 1023 | "chainId": 100, 1024 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x8400D94A5cb0fa0D041a3788e395285d61c9ee5e/logo.png" 1025 | }, 1026 | { 1027 | "name": "UNCL on xDai", 1028 | "address": "0x703120F2f2011a0D03A03a531Ac0e84e81F15989", 1029 | "symbol": "UNCL", 1030 | "decimals": 18, 1031 | "chainId": 100, 1032 | "logoURI": "https://etherscan.io/token/images/unicrypt-uncl_32.png" 1033 | }, 1034 | { 1035 | "name": "UniCrypt on xDai", 1036 | "address": "0x0116e28B43A358162B96f70B4De14C98A4465f25", 1037 | "symbol": "UNCX", 1038 | "decimals": 18, 1039 | "chainId": 100, 1040 | "logoURI": "https://etherscan.io/token/images/UniCrypt_32.png" 1041 | }, 1042 | { 1043 | "name": "Uniswap on xDai", 1044 | "address": "0x4537e328Bf7e4eFA29D05CAeA260D7fE26af9D74", 1045 | "symbol": "UNI", 1046 | "decimals": 18, 1047 | "chainId": 100, 1048 | "logoURI": "https://cloudflare-ipfs.com/ipfs/QmXttGpZrECX5qCyXbBQiqgQNytVGeZW5Anewvh2jc4psg/" 1049 | }, 1050 | { 1051 | "name": "USDC on xDai", 1052 | "address": "0xDDAfbb505ad214D7b80b1f830fcCc89B60fb7A83", 1053 | "symbol": "USDC", 1054 | "decimals": 6, 1055 | "chainId": 100, 1056 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png" 1057 | }, 1058 | { 1059 | "name": "Tether on xDai", 1060 | "address": "0x4ECaBa5870353805a9F068101A40E0f32ed605C6", 1061 | "symbol": "USDT", 1062 | "decimals": 6, 1063 | "chainId": 100, 1064 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xdAC17F958D2ee523a2206206994597C13D831ec7/logo.png" 1065 | }, 1066 | { 1067 | "name": "VectorspaceAI on xDai", 1068 | "address": "0x020Ae8FC1c19f4d1312Cf6a72291f52849791E7C", 1069 | "symbol": "VXV", 1070 | "decimals": 18, 1071 | "chainId": 100, 1072 | "logoURI": "https://etherscan.io/token/images/Vectorspace_32.png" 1073 | }, 1074 | { 1075 | "name": "Wrapped BTC on xDai", 1076 | "address": "0x8e5bBbb09Ed1ebdE8674Cda39A0c169401db4252", 1077 | "symbol": "WBTC", 1078 | "decimals": 8, 1079 | "chainId": 100, 1080 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599/logo.png" 1081 | }, 1082 | { 1083 | "name": "Wrapped Ether on xDai", 1084 | "address": "0x6A023CCd1ff6F2045C3309768eAd9E68F978f6e1", 1085 | "symbol": "WETH", 1086 | "decimals": 18, 1087 | "chainId": 100, 1088 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png" 1089 | }, 1090 | { 1091 | "name": "Wrapped NXM on xDai", 1092 | "address": "0x01e92E3791f8c1D6599B2F80A4bFF9b43949aC7C", 1093 | "symbol": "wNXM", 1094 | "decimals": 18, 1095 | "chainId": 100, 1096 | "logoURI": "https://etherscan.io/token/images/nxm_32.png" 1097 | }, 1098 | { 1099 | "name": "Bricks on xDai", 1100 | "address": "0x2f9ceBf5De3bc25E0643D0E66134E5bf5c48e191", 1101 | "symbol": "xBRICK", 1102 | "decimals": 18, 1103 | "chainId": 100, 1104 | "logoURI": "https://assets.coingecko.com/coins/images/11223/small/Brick.png" 1105 | }, 1106 | { 1107 | "name": "xDankBillz", 1108 | "address": "0xDaADd8D96D01e47ee5E4eAFEcF14cbe46909f335", 1109 | "symbol": "xdbx", 1110 | "decimals": 18, 1111 | "chainId": 100 1112 | }, 1113 | { 1114 | "name": "XionGlobal Token", 1115 | "address": "0xf1738912ae7439475712520797583ac784ea9033", 1116 | "symbol": "XGT", 1117 | "decimals": 18, 1118 | "chainId": 100, 1119 | "logoURI": "https://xion.finance/images/xgt_icon.png" 1120 | }, 1121 | { 1122 | "name": "Standard on xDai", 1123 | "address": "0x3e33cF23073FD8d5aD1d48d1860a96C0D8E56193", 1124 | "symbol": "xMARK", 1125 | "decimals": 9, 1126 | "chainId": 100, 1127 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x67c597624B17b16fb77959217360B7cD18284253/logo.png" 1128 | }, 1129 | { 1130 | "name": "xMOON on xDai", 1131 | "address": "0x1e16aa4Df73d29C029d94CeDa3e3114EC191E25A", 1132 | "symbol": "XMOON", 1133 | "decimals": 18, 1134 | "chainId": 100, 1135 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/xdai/assets/0x1e16aa4Df73d29C029d94CeDa3e3114EC191E25A/logo.png" 1136 | }, 1137 | { 1138 | "name": "xREAP", 1139 | "address": "0x42c6b3aC30Ae82D754498f56D9372F0070349409", 1140 | "symbol": "xREAP", 1141 | "decimals": 18, 1142 | "chainId": 100, 1143 | "logoURI": "https://reap.vercel.app/reaptoken1.jpg" 1144 | }, 1145 | { 1146 | "name": "Robonomics on xDai", 1147 | "address": "0xf54b47B00B6916974c73B81B7d9929a4f443DB49", 1148 | "symbol": "XRT", 1149 | "decimals": 9, 1150 | "chainId": 100, 1151 | "logoURI": "https://etherscan.io/token/images/robonomics_28.png" 1152 | }, 1153 | { 1154 | "name": "Seed on xDai", 1155 | "address": "0x2fd0c73Ad006407F0A96c984f06A9CE8415B094E", 1156 | "symbol": "xSEED", 1157 | "decimals": 9, 1158 | "chainId": 100, 1159 | "logoURI": "https://etherscan.io/token/images/seed_32.png" 1160 | }, 1161 | { 1162 | "name": "XY Oracle on xDai", 1163 | "address": "0xfd4e5f45eA24eC50C4Db4367380b014875caF219", 1164 | "symbol": "XYO", 1165 | "decimals": 18, 1166 | "chainId": 100, 1167 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x55296f69f40Ea6d20E478533C15A6B08B654E758/logo.png" 1168 | }, 1169 | { 1170 | "name": "yCurve on xDai", 1171 | "address": "0x22Bd2A732b39dACe37AE7E8f50A186f3D9702e87", 1172 | "symbol": "yCRV", 1173 | "decimals": 18, 1174 | "chainId": 100, 1175 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xD533a949740bb3306d119CC777fa900bA034cd52/logo.png" 1176 | }, 1177 | { 1178 | "name": "Yearn Finance on xDai", 1179 | "address": "0xbf65bfcb5da067446CeE6A706ba3Fe2fB1a9fdFd", 1180 | "symbol": "YFI", 1181 | "decimals": 18, 1182 | "chainId": 100, 1183 | "logoURI": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e/logo.png" 1184 | }, 1185 | { 1186 | "name": "Yield on xDai", 1187 | "address": "0xA2FEc95B3d3feCb39098E81f108533E1abF22CcF", 1188 | "symbol": "YLD", 1189 | "decimals": 18, 1190 | "chainId": 100, 1191 | "logoURI": "https://etherscan.io/token/images/yieldapp_32.png" 1192 | }, 1193 | { 1194 | "name": "0x Protocol Token on xDai", 1195 | "address": "0x226bCf0e417428a25012d0fA2183d37f92bCeDF6", 1196 | "symbol": "ZRX", 1197 | "decimals": 18, 1198 | "chainId": 100, 1199 | "logoURI": "https://etherscan.io/token/images/zrx_28.png?v=3" 1200 | } 1201 | ] 1202 | -------------------------------------------------------------------------------- /src/write.js: -------------------------------------------------------------------------------- 1 | const buildList = require('./buildList'); 2 | console.log(JSON.stringify(buildList(), null, 2)); -------------------------------------------------------------------------------- /test/sushiswap-default.test.js: -------------------------------------------------------------------------------- 1 | const packageJson = require('../package.json'); 2 | const schema = require('@uniswap/token-lists/src/tokenlist.schema.json'); 3 | const { expect } = require('chai'); 4 | const { getAddress } = require('@ethersproject/address'); 5 | const Ajv = require('ajv'); 6 | const buildList = require('../src/buildList'); 7 | 8 | const ajv = new Ajv({ allErrors: true, format: 'full' }); 9 | const validator = ajv.compile(schema); 10 | 11 | describe('buildList', () => { 12 | const defaultTokenList = buildList(); 13 | 14 | it('validates', () => { 15 | expect(validator(defaultTokenList)).to.equal(true); 16 | }); 17 | 18 | it('contains no duplicate addresses', () => { 19 | const map = {}; 20 | for (let token of defaultTokenList.tokens) { 21 | const key = `${token.chainId}-${token.address}`; 22 | expect(typeof map[ key ]) 23 | .to.equal('undefined'); 24 | map[ key ] = true; 25 | } 26 | }); 27 | 28 | it('contains no duplicate symbols', () => { 29 | const map = {}; 30 | for (let token of defaultTokenList.tokens) { 31 | const key = `${token.chainId}-${token.symbol.toLowerCase()}`; 32 | expect(typeof map[ key ]) 33 | .to.equal('undefined'); 34 | map[ key ] = true; 35 | } 36 | }) 37 | 38 | it('contains no duplicate names', () => { 39 | const map = {}; 40 | for (let token of defaultTokenList.tokens) { 41 | const key = `${token.chainId}-${token.name.toLowerCase()}`; 42 | expect(typeof map[ key ]) 43 | .to.equal('undefined', `duplicate name: ${token.name}`); 44 | map[ key ] = true; 45 | } 46 | }) 47 | 48 | it('all addresses are valid and checksummed', () => { 49 | for (let token of defaultTokenList.tokens) { 50 | expect(getAddress(token.address)).to.eq(token.address); 51 | } 52 | }); 53 | 54 | it('version matches package.json', () => { 55 | expect(packageJson.version).to.match(/^\d+\.\d+\.\d+$/); 56 | expect(packageJson.version).to.equal(`${defaultTokenList.version.major}.${defaultTokenList.version.minor}.${defaultTokenList.version.patch}`); 57 | }); 58 | }); -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@ethersproject/address@^5.0.2": 6 | version "5.0.8" 7 | resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.0.8.tgz#0c551659144a5a7643c6bea337149d410825298f" 8 | integrity sha512-V87DHiZMZR6hmFYmoGaHex0D53UEbZpW75uj8AqPbjYUmi65RB4N2LPRcJXuWuN2R0Y2CxkvW6ArijWychr5FA== 9 | dependencies: 10 | "@ethersproject/bignumber" "^5.0.10" 11 | "@ethersproject/bytes" "^5.0.4" 12 | "@ethersproject/keccak256" "^5.0.3" 13 | "@ethersproject/logger" "^5.0.5" 14 | "@ethersproject/rlp" "^5.0.3" 15 | 16 | "@ethersproject/bignumber@^5.0.10": 17 | version "5.0.12" 18 | resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.0.12.tgz#fe4a78667d7cb01790f75131147e82d6ea7e7cba" 19 | integrity sha512-mbFZjwthx6vFlHG9owXP/C5QkNvsA+xHpDCkPPPdG2n1dS9AmZAL5DI0InNLid60rQWL3MXpEl19tFmtL7Q9jw== 20 | dependencies: 21 | "@ethersproject/bytes" "^5.0.8" 22 | "@ethersproject/logger" "^5.0.5" 23 | bn.js "^4.4.0" 24 | 25 | "@ethersproject/bytes@^5.0.4", "@ethersproject/bytes@^5.0.8": 26 | version "5.0.8" 27 | resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.0.8.tgz#cf1246a6a386086e590063a4602b1ffb6cc43db1" 28 | integrity sha512-O+sJNVGzzuy51g+EMK8BegomqNIg+C2RO6vOt0XP6ac4o4saiq69FnjlsrNslaiMFVO7qcEHBsWJ9hx1tj1lMw== 29 | dependencies: 30 | "@ethersproject/logger" "^5.0.5" 31 | 32 | "@ethersproject/keccak256@^5.0.3": 33 | version "5.0.6" 34 | resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.0.6.tgz#5b5ba715ef1be86efde5c271f896fa0daf0e1efe" 35 | integrity sha512-eJ4Id/i2rwrf5JXEA7a12bG1phuxjj47mPZgDUbttuNBodhSuZF2nEO5QdpaRjmlphQ8Kt9PNqY/z7lhtJptZg== 36 | dependencies: 37 | "@ethersproject/bytes" "^5.0.4" 38 | js-sha3 "0.5.7" 39 | 40 | "@ethersproject/logger@^5.0.5": 41 | version "5.0.8" 42 | resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.0.8.tgz#135c1903d35c878265f3cbf2b287042c4c20d5d4" 43 | integrity sha512-SkJCTaVTnaZ3/ieLF5pVftxGEFX56pTH+f2Slrpv7cU0TNpUZNib84QQdukd++sWUp/S7j5t5NW+WegbXd4U/A== 44 | 45 | "@ethersproject/rlp@^5.0.3": 46 | version "5.0.6" 47 | resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.0.6.tgz#29f9097348a3c330811997433b7df89ab51cd644" 48 | integrity sha512-M223MTaydfmQSsvqAl0FJZDYFlSqt6cgbhnssLDwqCKYegAHE16vrFyo+eiOapYlt32XAIJm0BXlqSunULzZuQ== 49 | dependencies: 50 | "@ethersproject/bytes" "^5.0.4" 51 | "@ethersproject/logger" "^5.0.5" 52 | 53 | "@ungap/promise-all-settled@1.1.2": 54 | version "1.1.2" 55 | resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" 56 | integrity sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q== 57 | 58 | "@uniswap/token-lists@^1.0.0-beta.19": 59 | version "1.0.0-beta.19" 60 | resolved "https://registry.yarnpkg.com/@uniswap/token-lists/-/token-lists-1.0.0-beta.19.tgz#5256db144fba721a6233f43b92ffb388cbd58327" 61 | integrity sha512-19V3KM7DAe40blWW1ApiaSYwqbq0JTKMO3yChGBrXzQBl+BoQZRTNZ4waCyoZ5QM45Q0Mxd6bCn6jXcH9G1kjg== 62 | 63 | ajv@^6.12.3: 64 | version "6.12.6" 65 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" 66 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== 67 | dependencies: 68 | fast-deep-equal "^3.1.1" 69 | fast-json-stable-stringify "^2.0.0" 70 | json-schema-traverse "^0.4.1" 71 | uri-js "^4.2.2" 72 | 73 | ansi-colors@4.1.1: 74 | version "4.1.1" 75 | resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" 76 | integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== 77 | 78 | ansi-regex@^3.0.0: 79 | version "3.0.0" 80 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 81 | integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= 82 | 83 | ansi-regex@^4.1.0: 84 | version "4.1.0" 85 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" 86 | integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== 87 | 88 | ansi-styles@^3.2.0: 89 | version "3.2.1" 90 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 91 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 92 | dependencies: 93 | color-convert "^1.9.0" 94 | 95 | ansi-styles@^4.1.0: 96 | version "4.3.0" 97 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" 98 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== 99 | dependencies: 100 | color-convert "^2.0.1" 101 | 102 | anymatch@~3.1.1: 103 | version "3.1.1" 104 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" 105 | integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== 106 | dependencies: 107 | normalize-path "^3.0.0" 108 | picomatch "^2.0.4" 109 | 110 | argparse@^1.0.7: 111 | version "1.0.10" 112 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 113 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 114 | dependencies: 115 | sprintf-js "~1.0.2" 116 | 117 | assertion-error@^1.1.0: 118 | version "1.1.0" 119 | resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" 120 | integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== 121 | 122 | balanced-match@^1.0.0: 123 | version "1.0.0" 124 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 125 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 126 | 127 | binary-extensions@^2.0.0: 128 | version "2.1.0" 129 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9" 130 | integrity sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ== 131 | 132 | bn.js@^4.4.0: 133 | version "4.11.9" 134 | resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.9.tgz#26d556829458f9d1e81fc48952493d0ba3507828" 135 | integrity sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw== 136 | 137 | brace-expansion@^1.1.7: 138 | version "1.1.11" 139 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 140 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 141 | dependencies: 142 | balanced-match "^1.0.0" 143 | concat-map "0.0.1" 144 | 145 | braces@~3.0.2: 146 | version "3.0.2" 147 | resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" 148 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== 149 | dependencies: 150 | fill-range "^7.0.1" 151 | 152 | browser-stdout@1.3.1: 153 | version "1.3.1" 154 | resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" 155 | integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== 156 | 157 | camelcase@^5.0.0: 158 | version "5.3.1" 159 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" 160 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 161 | 162 | camelcase@^6.0.0: 163 | version "6.2.0" 164 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" 165 | integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== 166 | 167 | chai@^4.2.0: 168 | version "4.2.0" 169 | resolved "https://registry.yarnpkg.com/chai/-/chai-4.2.0.tgz#760aa72cf20e3795e84b12877ce0e83737aa29e5" 170 | integrity sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw== 171 | dependencies: 172 | assertion-error "^1.1.0" 173 | check-error "^1.0.2" 174 | deep-eql "^3.0.1" 175 | get-func-name "^2.0.0" 176 | pathval "^1.1.0" 177 | type-detect "^4.0.5" 178 | 179 | chalk@^4.0.0: 180 | version "4.1.0" 181 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" 182 | integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== 183 | dependencies: 184 | ansi-styles "^4.1.0" 185 | supports-color "^7.1.0" 186 | 187 | check-error@^1.0.2: 188 | version "1.0.2" 189 | resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" 190 | integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= 191 | 192 | chokidar@3.4.3: 193 | version "3.4.3" 194 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.3.tgz#c1df38231448e45ca4ac588e6c79573ba6a57d5b" 195 | integrity sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ== 196 | dependencies: 197 | anymatch "~3.1.1" 198 | braces "~3.0.2" 199 | glob-parent "~5.1.0" 200 | is-binary-path "~2.1.0" 201 | is-glob "~4.0.1" 202 | normalize-path "~3.0.0" 203 | readdirp "~3.5.0" 204 | optionalDependencies: 205 | fsevents "~2.1.2" 206 | 207 | cliui@^5.0.0: 208 | version "5.0.0" 209 | resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" 210 | integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== 211 | dependencies: 212 | string-width "^3.1.0" 213 | strip-ansi "^5.2.0" 214 | wrap-ansi "^5.1.0" 215 | 216 | color-convert@^1.9.0: 217 | version "1.9.3" 218 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 219 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 220 | dependencies: 221 | color-name "1.1.3" 222 | 223 | color-convert@^2.0.1: 224 | version "2.0.1" 225 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" 226 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 227 | dependencies: 228 | color-name "~1.1.4" 229 | 230 | color-name@1.1.3: 231 | version "1.1.3" 232 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 233 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 234 | 235 | color-name@~1.1.4: 236 | version "1.1.4" 237 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" 238 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 239 | 240 | concat-map@0.0.1: 241 | version "0.0.1" 242 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 243 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 244 | 245 | debug@4.2.0: 246 | version "4.2.0" 247 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.2.0.tgz#7f150f93920e94c58f5574c2fd01a3110effe7f1" 248 | integrity sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg== 249 | dependencies: 250 | ms "2.1.2" 251 | 252 | decamelize@^1.2.0: 253 | version "1.2.0" 254 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 255 | integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= 256 | 257 | decamelize@^4.0.0: 258 | version "4.0.0" 259 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" 260 | integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== 261 | 262 | deep-eql@^3.0.1: 263 | version "3.0.1" 264 | resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" 265 | integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== 266 | dependencies: 267 | type-detect "^4.0.0" 268 | 269 | diff@4.0.2: 270 | version "4.0.2" 271 | resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" 272 | integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== 273 | 274 | emoji-regex@^7.0.1: 275 | version "7.0.3" 276 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 277 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 278 | 279 | escape-string-regexp@4.0.0: 280 | version "4.0.0" 281 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" 282 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== 283 | 284 | esprima@^4.0.0: 285 | version "4.0.1" 286 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" 287 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 288 | 289 | fast-deep-equal@^3.1.1: 290 | version "3.1.3" 291 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" 292 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 293 | 294 | fast-json-stable-stringify@^2.0.0: 295 | version "2.1.0" 296 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" 297 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 298 | 299 | fill-range@^7.0.1: 300 | version "7.0.1" 301 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" 302 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== 303 | dependencies: 304 | to-regex-range "^5.0.1" 305 | 306 | find-up@5.0.0: 307 | version "5.0.0" 308 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" 309 | integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== 310 | dependencies: 311 | locate-path "^6.0.0" 312 | path-exists "^4.0.0" 313 | 314 | find-up@^3.0.0: 315 | version "3.0.0" 316 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" 317 | integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== 318 | dependencies: 319 | locate-path "^3.0.0" 320 | 321 | flat@^5.0.2: 322 | version "5.0.2" 323 | resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" 324 | integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== 325 | 326 | fs.realpath@^1.0.0: 327 | version "1.0.0" 328 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 329 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 330 | 331 | fsevents@~2.1.2: 332 | version "2.1.3" 333 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" 334 | integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== 335 | 336 | get-caller-file@^2.0.1: 337 | version "2.0.5" 338 | resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" 339 | integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== 340 | 341 | get-func-name@^2.0.0: 342 | version "2.0.0" 343 | resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" 344 | integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= 345 | 346 | glob-parent@~5.1.0: 347 | version "5.1.1" 348 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" 349 | integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== 350 | dependencies: 351 | is-glob "^4.0.1" 352 | 353 | glob@7.1.6, glob@^7.1.3: 354 | version "7.1.6" 355 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" 356 | integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== 357 | dependencies: 358 | fs.realpath "^1.0.0" 359 | inflight "^1.0.4" 360 | inherits "2" 361 | minimatch "^3.0.4" 362 | once "^1.3.0" 363 | path-is-absolute "^1.0.0" 364 | 365 | growl@1.10.5: 366 | version "1.10.5" 367 | resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" 368 | integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== 369 | 370 | has-flag@^4.0.0: 371 | version "4.0.0" 372 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" 373 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 374 | 375 | he@1.2.0: 376 | version "1.2.0" 377 | resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" 378 | integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== 379 | 380 | inflight@^1.0.4: 381 | version "1.0.6" 382 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 383 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 384 | dependencies: 385 | once "^1.3.0" 386 | wrappy "1" 387 | 388 | inherits@2: 389 | version "2.0.4" 390 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 391 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 392 | 393 | is-binary-path@~2.1.0: 394 | version "2.1.0" 395 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" 396 | integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== 397 | dependencies: 398 | binary-extensions "^2.0.0" 399 | 400 | is-extglob@^2.1.1: 401 | version "2.1.1" 402 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 403 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 404 | 405 | is-fullwidth-code-point@^2.0.0: 406 | version "2.0.0" 407 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 408 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 409 | 410 | is-glob@^4.0.1, is-glob@~4.0.1: 411 | version "4.0.1" 412 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" 413 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== 414 | dependencies: 415 | is-extglob "^2.1.1" 416 | 417 | is-number@^7.0.0: 418 | version "7.0.0" 419 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" 420 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== 421 | 422 | is-plain-obj@^2.1.0: 423 | version "2.1.0" 424 | resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" 425 | integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== 426 | 427 | isexe@^2.0.0: 428 | version "2.0.0" 429 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 430 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 431 | 432 | js-sha3@0.5.7: 433 | version "0.5.7" 434 | resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7" 435 | integrity sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc= 436 | 437 | js-yaml@3.14.0: 438 | version "3.14.0" 439 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" 440 | integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== 441 | dependencies: 442 | argparse "^1.0.7" 443 | esprima "^4.0.0" 444 | 445 | json-schema-traverse@^0.4.1: 446 | version "0.4.1" 447 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 448 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 449 | 450 | locate-path@^3.0.0: 451 | version "3.0.0" 452 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" 453 | integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== 454 | dependencies: 455 | p-locate "^3.0.0" 456 | path-exists "^3.0.0" 457 | 458 | locate-path@^6.0.0: 459 | version "6.0.0" 460 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" 461 | integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== 462 | dependencies: 463 | p-locate "^5.0.0" 464 | 465 | log-symbols@4.0.0: 466 | version "4.0.0" 467 | resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" 468 | integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== 469 | dependencies: 470 | chalk "^4.0.0" 471 | 472 | minimatch@3.0.4, minimatch@^3.0.4: 473 | version "3.0.4" 474 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 475 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 476 | dependencies: 477 | brace-expansion "^1.1.7" 478 | 479 | mocha@^8.0.1: 480 | version "8.2.1" 481 | resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.2.1.tgz#f2fa68817ed0e53343d989df65ccd358bc3a4b39" 482 | integrity sha512-cuLBVfyFfFqbNR0uUKbDGXKGk+UDFe6aR4os78XIrMQpZl/nv7JYHcvP5MFIAb374b2zFXsdgEGwmzMtP0Xg8w== 483 | dependencies: 484 | "@ungap/promise-all-settled" "1.1.2" 485 | ansi-colors "4.1.1" 486 | browser-stdout "1.3.1" 487 | chokidar "3.4.3" 488 | debug "4.2.0" 489 | diff "4.0.2" 490 | escape-string-regexp "4.0.0" 491 | find-up "5.0.0" 492 | glob "7.1.6" 493 | growl "1.10.5" 494 | he "1.2.0" 495 | js-yaml "3.14.0" 496 | log-symbols "4.0.0" 497 | minimatch "3.0.4" 498 | ms "2.1.2" 499 | nanoid "3.1.12" 500 | serialize-javascript "5.0.1" 501 | strip-json-comments "3.1.1" 502 | supports-color "7.2.0" 503 | which "2.0.2" 504 | wide-align "1.1.3" 505 | workerpool "6.0.2" 506 | yargs "13.3.2" 507 | yargs-parser "13.1.2" 508 | yargs-unparser "2.0.0" 509 | 510 | ms@2.1.2: 511 | version "2.1.2" 512 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 513 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 514 | 515 | nanoid@3.1.12: 516 | version "3.1.12" 517 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.12.tgz#6f7736c62e8d39421601e4a0c77623a97ea69654" 518 | integrity sha512-1qstj9z5+x491jfiC4Nelk+f8XBad7LN20PmyWINJEMRSf3wcAjAWysw1qaA8z6NSKe2sjq1hRSDpBH5paCb6A== 519 | 520 | normalize-path@^3.0.0, normalize-path@~3.0.0: 521 | version "3.0.0" 522 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" 523 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== 524 | 525 | once@^1.3.0: 526 | version "1.4.0" 527 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 528 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 529 | dependencies: 530 | wrappy "1" 531 | 532 | p-limit@^2.0.0: 533 | version "2.3.0" 534 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" 535 | integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== 536 | dependencies: 537 | p-try "^2.0.0" 538 | 539 | p-limit@^3.0.2: 540 | version "3.1.0" 541 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" 542 | integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== 543 | dependencies: 544 | yocto-queue "^0.1.0" 545 | 546 | p-locate@^3.0.0: 547 | version "3.0.0" 548 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" 549 | integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== 550 | dependencies: 551 | p-limit "^2.0.0" 552 | 553 | p-locate@^5.0.0: 554 | version "5.0.0" 555 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" 556 | integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== 557 | dependencies: 558 | p-limit "^3.0.2" 559 | 560 | p-try@^2.0.0: 561 | version "2.2.0" 562 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" 563 | integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== 564 | 565 | path-exists@^3.0.0: 566 | version "3.0.0" 567 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 568 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 569 | 570 | path-exists@^4.0.0: 571 | version "4.0.0" 572 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" 573 | integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== 574 | 575 | path-is-absolute@^1.0.0: 576 | version "1.0.1" 577 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 578 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 579 | 580 | pathval@^1.1.0: 581 | version "1.1.0" 582 | resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" 583 | integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA= 584 | 585 | picomatch@^2.0.4, picomatch@^2.2.1: 586 | version "2.2.2" 587 | resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" 588 | integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== 589 | 590 | punycode@^2.1.0: 591 | version "2.1.1" 592 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 593 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 594 | 595 | randombytes@^2.1.0: 596 | version "2.1.0" 597 | resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" 598 | integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== 599 | dependencies: 600 | safe-buffer "^5.1.0" 601 | 602 | readdirp@~3.5.0: 603 | version "3.5.0" 604 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" 605 | integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== 606 | dependencies: 607 | picomatch "^2.2.1" 608 | 609 | require-directory@^2.1.1: 610 | version "2.1.1" 611 | resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" 612 | integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= 613 | 614 | require-main-filename@^2.0.0: 615 | version "2.0.0" 616 | resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" 617 | integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== 618 | 619 | rimraf@^3.0.2: 620 | version "3.0.2" 621 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" 622 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== 623 | dependencies: 624 | glob "^7.1.3" 625 | 626 | safe-buffer@^5.1.0: 627 | version "5.2.1" 628 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" 629 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 630 | 631 | serialize-javascript@5.0.1: 632 | version "5.0.1" 633 | resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" 634 | integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== 635 | dependencies: 636 | randombytes "^2.1.0" 637 | 638 | set-blocking@^2.0.0: 639 | version "2.0.0" 640 | resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" 641 | integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= 642 | 643 | sprintf-js@~1.0.2: 644 | version "1.0.3" 645 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 646 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 647 | 648 | "string-width@^1.0.2 || 2": 649 | version "2.1.1" 650 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 651 | integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== 652 | dependencies: 653 | is-fullwidth-code-point "^2.0.0" 654 | strip-ansi "^4.0.0" 655 | 656 | string-width@^3.0.0, string-width@^3.1.0: 657 | version "3.1.0" 658 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" 659 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 660 | dependencies: 661 | emoji-regex "^7.0.1" 662 | is-fullwidth-code-point "^2.0.0" 663 | strip-ansi "^5.1.0" 664 | 665 | strip-ansi@^4.0.0: 666 | version "4.0.0" 667 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 668 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= 669 | dependencies: 670 | ansi-regex "^3.0.0" 671 | 672 | strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: 673 | version "5.2.0" 674 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" 675 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 676 | dependencies: 677 | ansi-regex "^4.1.0" 678 | 679 | strip-json-comments@3.1.1: 680 | version "3.1.1" 681 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" 682 | integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== 683 | 684 | supports-color@7.2.0, supports-color@^7.1.0: 685 | version "7.2.0" 686 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" 687 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== 688 | dependencies: 689 | has-flag "^4.0.0" 690 | 691 | to-regex-range@^5.0.1: 692 | version "5.0.1" 693 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" 694 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== 695 | dependencies: 696 | is-number "^7.0.0" 697 | 698 | type-detect@^4.0.0, type-detect@^4.0.5: 699 | version "4.0.8" 700 | resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" 701 | integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== 702 | 703 | uri-js@^4.2.2: 704 | version "4.4.0" 705 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.0.tgz#aa714261de793e8a82347a7bcc9ce74e86f28602" 706 | integrity sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g== 707 | dependencies: 708 | punycode "^2.1.0" 709 | 710 | which-module@^2.0.0: 711 | version "2.0.0" 712 | resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" 713 | integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= 714 | 715 | which@2.0.2: 716 | version "2.0.2" 717 | resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" 718 | integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== 719 | dependencies: 720 | isexe "^2.0.0" 721 | 722 | wide-align@1.1.3: 723 | version "1.1.3" 724 | resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" 725 | integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== 726 | dependencies: 727 | string-width "^1.0.2 || 2" 728 | 729 | workerpool@6.0.2: 730 | version "6.0.2" 731 | resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.0.2.tgz#e241b43d8d033f1beb52c7851069456039d1d438" 732 | integrity sha512-DSNyvOpFKrNusaaUwk+ej6cBj1bmhLcBfj80elGk+ZIo5JSkq+unB1dLKEOcNfJDZgjGICfhQ0Q5TbP0PvF4+Q== 733 | 734 | wrap-ansi@^5.1.0: 735 | version "5.1.0" 736 | resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" 737 | integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== 738 | dependencies: 739 | ansi-styles "^3.2.0" 740 | string-width "^3.0.0" 741 | strip-ansi "^5.0.0" 742 | 743 | wrappy@1: 744 | version "1.0.2" 745 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 746 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 747 | 748 | y18n@^4.0.0: 749 | version "4.0.1" 750 | resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.1.tgz#8db2b83c31c5d75099bb890b23f3094891e247d4" 751 | integrity sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ== 752 | 753 | yargs-parser@13.1.2, yargs-parser@^13.1.2: 754 | version "13.1.2" 755 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" 756 | integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== 757 | dependencies: 758 | camelcase "^5.0.0" 759 | decamelize "^1.2.0" 760 | 761 | yargs-unparser@2.0.0: 762 | version "2.0.0" 763 | resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" 764 | integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== 765 | dependencies: 766 | camelcase "^6.0.0" 767 | decamelize "^4.0.0" 768 | flat "^5.0.2" 769 | is-plain-obj "^2.1.0" 770 | 771 | yargs@13.3.2: 772 | version "13.3.2" 773 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" 774 | integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== 775 | dependencies: 776 | cliui "^5.0.0" 777 | find-up "^3.0.0" 778 | get-caller-file "^2.0.1" 779 | require-directory "^2.1.1" 780 | require-main-filename "^2.0.0" 781 | set-blocking "^2.0.0" 782 | string-width "^3.0.0" 783 | which-module "^2.0.0" 784 | y18n "^4.0.0" 785 | yargs-parser "^13.1.2" 786 | 787 | yocto-queue@^0.1.0: 788 | version "0.1.0" 789 | resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" 790 | integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== 791 | --------------------------------------------------------------------------------