commit e0ae7d97d440dd1399ff1b7b8ce6bb9ac356b29b Author: Prathamesh Musale Date: Thu Mar 14 11:56:15 2024 +0530 Initial commit diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..55cb522 --- /dev/null +++ b/.eslintignore @@ -0,0 +1,2 @@ +# Don't lint build output. +dist diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..a2b842c --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,28 @@ +{ + "env": { + "browser": true, + "es2021": true + }, + "extends": [ + "semistandard", + "plugin:@typescript-eslint/recommended" + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaVersion": 12, + "sourceType": "module" + }, + "plugins": [ + "@typescript-eslint" + ], + "rules": { + "indent": ["error", 2, { "SwitchCase": 1 }], + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/explicit-module-boundary-types": [ + "warn", + { + "allowArgumentsExplicitlyTypedAsAny": true + } + ] + } +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0b4cc3f --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +node_modules/ +dist/ +out/ + +.vscode +.idea diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100644 index 0000000..9dcd433 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,4 @@ +#!/bin/sh +. "$(dirname "$0")/_/husky.sh" + +yarn lint diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..6b64c5b --- /dev/null +++ b/.npmrc @@ -0,0 +1 @@ +@cerc-io:registry=https://git.vdb.to/api/packages/cerc-io/npm/ diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..331f7cf --- /dev/null +++ b/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for + software and other kinds of works, specifically designed to ensure + cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed + to take away your freedom to share and change the works. By contrast, + our General Public Licenses are intended to guarantee your freedom to + share and change all versions of a program--to make sure it remains free + software for all its users. + + When we speak of free software, we are referring to freedom, not + price. Our General Public Licenses are designed to make sure that you + have the freedom to distribute copies of free software (and charge for + them if you wish), that you receive source code or can get it if you + want it, that you can change the software or use pieces of it in new + free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights + with two steps: (1) assert copyright on the software, and (2) offer + you this License which gives you legal permission to copy, distribute + and/or modify the software. + + A secondary benefit of defending all users' freedom is that + improvements made in alternate versions of the program, if they + receive widespread use, become available for other developers to + incorporate. Many developers of free software are heartened and + encouraged by the resulting cooperation. However, in the case of + software used on network servers, this result may fail to come about. + The GNU General Public License permits making a modified version and + letting the public access it on a server without ever releasing its + source code to the public. + + The GNU Affero General Public License is designed specifically to + ensure that, in such cases, the modified source code becomes available + to the community. It requires the operator of a network server to + provide the source code of the modified version running there to the + users of that server. Therefore, public use of a modified version, on + a publicly accessible server, gives the public access to the source + code of the modified version. + + An older license, called the Affero General Public License and + published by Affero, was designed to accomplish similar goals. This is + a different license, not a version of the Affero GPL, but Affero has + released a new version of the Affero GPL which permits relicensing under + this license. + + The precise terms and conditions for copying, distribution and + modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of + works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this + License. Each licensee is addressed as "you". "Licensees" and + "recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work + in a fashion requiring copyright permission, other than the making of an + exact copy. The resulting work is called a "modified version" of the + earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based + on the Program. + + To "propagate" a work means to do anything with it that, without + permission, would make you directly or secondarily liable for + infringement under applicable copyright law, except executing it on a + computer or modifying a private copy. Propagation includes copying, + distribution (with or without modification), making available to the + public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other + parties to make or receive copies. Mere interaction with a user through + a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" + to the extent that it includes a convenient and prominently visible + feature that (1) displays an appropriate copyright notice, and (2) + tells the user that there is no warranty for the work (except to the + extent that warranties are provided), that licensees may convey the + work under this License, and how to view a copy of this License. If + the interface presents a list of user commands or options, such as a + menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work + for making modifications to it. "Object code" means any non-source + form of a work. + + A "Standard Interface" means an interface that either is an official + standard defined by a recognized standards body, or, in the case of + interfaces specified for a particular programming language, one that + is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other + than the work as a whole, that (a) is included in the normal form of + packaging a Major Component, but which is not part of that Major + Component, and (b) serves only to enable use of the work with that + Major Component, or to implement a Standard Interface for which an + implementation is available to the public in source code form. A + "Major Component", in this context, means a major essential component + (kernel, window system, and so on) of the specific operating system + (if any) on which the executable work runs, or a compiler used to + produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all + the source code needed to generate, install, and (for an executable + work) run the object code and to modify the work, including scripts to + control those activities. However, it does not include the work's + System Libraries, or general-purpose tools or generally available free + programs which are used unmodified in performing those activities but + which are not part of the work. For example, Corresponding Source + includes interface definition files associated with source files for + the work, and the source code for shared libraries and dynamically + linked subprograms that the work is specifically designed to require, + such as by intimate data communication or control flow between those + subprograms and other parts of the work. + + The Corresponding Source need not include anything that users + can regenerate automatically from other parts of the Corresponding + Source. + + The Corresponding Source for a work in source code form is that + same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of + copyright on the Program, and are irrevocable provided the stated + conditions are met. This License explicitly affirms your unlimited + permission to run the unmodified Program. The output from running a + covered work is covered by this License only if the output, given its + content, constitutes a covered work. This License acknowledges your + rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not + convey, without conditions so long as your license otherwise remains + in force. You may convey covered works to others for the sole purpose + of having them make modifications exclusively for you, or provide you + with facilities for running those works, provided that you comply with + the terms of this License in conveying all material for which you do + not control copyright. Those thus making or running the covered works + for you must do so exclusively on your behalf, under your direction + and control, on terms that prohibit them from making any copies of + your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under + the conditions stated below. Sublicensing is not allowed; section 10 + makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological + measure under any applicable law fulfilling obligations under article + 11 of the WIPO copyright treaty adopted on 20 December 1996, or + similar laws prohibiting or restricting circumvention of such + measures. + + When you convey a covered work, you waive any legal power to forbid + circumvention of technological measures to the extent such circumvention + is effected by exercising rights under this License with respect to + the covered work, and you disclaim any intention to limit operation or + modification of the work as a means of enforcing, against the work's + users, your or third parties' legal rights to forbid circumvention of + technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you + receive it, in any medium, provided that you conspicuously and + appropriately publish on each copy an appropriate copyright notice; + keep intact all notices stating that this License and any + non-permissive terms added in accord with section 7 apply to the code; + keep intact all notices of the absence of any warranty; and give all + recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, + and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to + produce it from the Program, in the form of source code under the + terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent + works, which are not by their nature extensions of the covered work, + and which are not combined with it such as to form a larger program, + in or on a volume of a storage or distribution medium, is called an + "aggregate" if the compilation and its resulting copyright are not + used to limit the access or legal rights of the compilation's users + beyond what the individual works permit. Inclusion of a covered work + in an aggregate does not cause this License to apply to the other + parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms + of sections 4 and 5, provided that you also convey the + machine-readable Corresponding Source under the terms of this License, + in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded + from the Corresponding Source as a System Library, need not be + included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any + tangible personal property which is normally used for personal, family, + or household purposes, or (2) anything designed or sold for incorporation + into a dwelling. In determining whether a product is a consumer product, + doubtful cases shall be resolved in favor of coverage. For a particular + product received by a particular user, "normally used" refers to a + typical or common use of that class of product, regardless of the status + of the particular user or of the way in which the particular user + actually uses, or expects or is expected to use, the product. A product + is a consumer product regardless of whether the product has substantial + commercial, industrial or non-consumer uses, unless such uses represent + the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, + procedures, authorization keys, or other information required to install + and execute modified versions of a covered work in that User Product from + a modified version of its Corresponding Source. The information must + suffice to ensure that the continued functioning of the modified object + code is in no case prevented or interfered with solely because + modification has been made. + + If you convey an object code work under this section in, or with, or + specifically for use in, a User Product, and the conveying occurs as + part of a transaction in which the right of possession and use of the + User Product is transferred to the recipient in perpetuity or for a + fixed term (regardless of how the transaction is characterized), the + Corresponding Source conveyed under this section must be accompanied + by the Installation Information. But this requirement does not apply + if neither you nor any third party retains the ability to install + modified object code on the User Product (for example, the work has + been installed in ROM). + + The requirement to provide Installation Information does not include a + requirement to continue to provide support service, warranty, or updates + for a work that has been modified or installed by the recipient, or for + the User Product in which it has been modified or installed. Access to a + network may be denied when the modification itself materially and + adversely affects the operation of the network or violates the rules and + protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, + in accord with this section must be in a format that is publicly + documented (and with an implementation available to the public in + source code form), and must require no special password or key for + unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this + License by making exceptions from one or more of its conditions. + Additional permissions that are applicable to the entire Program shall + be treated as though they were included in this License, to the extent + that they are valid under applicable law. If additional permissions + apply only to part of the Program, that part may be used separately + under those permissions, but the entire Program remains governed by + this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option + remove any additional permissions from that copy, or from any part of + it. (Additional permissions may be written to require their own + removal in certain cases when you modify the work.) You may place + additional permissions on material, added by you to a covered work, + for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you + add to a covered work, you may (if authorized by the copyright holders of + that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further + restrictions" within the meaning of section 10. If the Program as you + received it, or any part of it, contains a notice stating that it is + governed by this License along with a term that is a further + restriction, you may remove that term. If a license document contains + a further restriction but permits relicensing or conveying under this + License, you may add to a covered work material governed by the terms + of that license document, provided that the further restriction does + not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you + must place, in the relevant source files, a statement of the + additional terms that apply to those files, or a notice indicating + where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the + form of a separately written license, or stated as exceptions; + the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly + provided under this License. Any attempt otherwise to propagate or + modify it is void, and will automatically terminate your rights under + this License (including any patent licenses granted under the third + paragraph of section 11). + + However, if you cease all violation of this License, then your + license from a particular copyright holder is reinstated (a) + provisionally, unless and until the copyright holder explicitly and + finally terminates your license, and (b) permanently, if the copyright + holder fails to notify you of the violation by some reasonable means + prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is + reinstated permanently if the copyright holder notifies you of the + violation by some reasonable means, this is the first time you have + received notice of violation of this License (for any work) from that + copyright holder, and you cure the violation prior to 30 days after + your receipt of the notice. + + Termination of your rights under this section does not terminate the + licenses of parties who have received copies or rights from you under + this License. If your rights have been terminated and not permanently + reinstated, you do not qualify to receive new licenses for the same + material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or + run a copy of the Program. Ancillary propagation of a covered work + occurring solely as a consequence of using peer-to-peer transmission + to receive a copy likewise does not require acceptance. However, + nothing other than this License grants you permission to propagate or + modify any covered work. These actions infringe copyright if you do + not accept this License. Therefore, by modifying or propagating a + covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically + receives a license from the original licensors, to run, modify and + propagate that work, subject to this License. You are not responsible + for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an + organization, or substantially all assets of one, or subdividing an + organization, or merging organizations. If propagation of a covered + work results from an entity transaction, each party to that + transaction who receives a copy of the work also receives whatever + licenses to the work the party's predecessor in interest had or could + give under the previous paragraph, plus a right to possession of the + Corresponding Source of the work from the predecessor in interest, if + the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the + rights granted or affirmed under this License. For example, you may + not impose a license fee, royalty, or other charge for exercise of + rights granted under this License, and you may not initiate litigation + (including a cross-claim or counterclaim in a lawsuit) alleging that + any patent claim is infringed by making, using, selling, offering for + sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this + License of the Program or a work on which the Program is based. The + work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims + owned or controlled by the contributor, whether already acquired or + hereafter acquired, that would be infringed by some manner, permitted + by this License, of making, using, or selling its contributor version, + but do not include claims that would be infringed only as a + consequence of further modification of the contributor version. For + purposes of this definition, "control" includes the right to grant + patent sublicenses in a manner consistent with the requirements of + this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free + patent license under the contributor's essential patent claims, to + make, use, sell, offer for sale, import and otherwise run, modify and + propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express + agreement or commitment, however denominated, not to enforce a patent + (such as an express permission to practice a patent or covenant not to + sue for patent infringement). To "grant" such a patent license to a + party means to make such an agreement or commitment not to enforce a + patent against the party. + + If you convey a covered work, knowingly relying on a patent license, + and the Corresponding Source of the work is not available for anyone + to copy, free of charge and under the terms of this License, through a + publicly available network server or other readily accessible means, + then you must either (1) cause the Corresponding Source to be so + available, or (2) arrange to deprive yourself of the benefit of the + patent license for this particular work, or (3) arrange, in a manner + consistent with the requirements of this License, to extend the patent + license to downstream recipients. "Knowingly relying" means you have + actual knowledge that, but for the patent license, your conveying the + covered work in a country, or your recipient's use of the covered work + in a country, would infringe one or more identifiable patents in that + country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or + arrangement, you convey, or propagate by procuring conveyance of, a + covered work, and grant a patent license to some of the parties + receiving the covered work authorizing them to use, propagate, modify + or convey a specific copy of the covered work, then the patent license + you grant is automatically extended to all recipients of the covered + work and works based on it. + + A patent license is "discriminatory" if it does not include within + the scope of its coverage, prohibits the exercise of, or is + conditioned on the non-exercise of one or more of the rights that are + specifically granted under this License. You may not convey a covered + work if you are a party to an arrangement with a third party that is + in the business of distributing software, under which you make payment + to the third party based on the extent of your activity of conveying + the work, and under which the third party grants, to any of the + parties who would receive the covered work from you, a discriminatory + patent license (a) in connection with copies of the covered work + conveyed by you (or copies made from those copies), or (b) primarily + for and in connection with specific products or compilations that + contain the covered work, unless you entered into that arrangement, + or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting + any implied license or other defenses to infringement that may + otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or + otherwise) that contradict the conditions of this License, they do not + excuse you from the conditions of this License. If you cannot convey a + covered work so as to satisfy simultaneously your obligations under this + License and any other pertinent obligations, then as a consequence you may + not convey it at all. For example, if you agree to terms that obligate you + to collect a royalty for further conveying from those to whom you convey + the Program, the only way you could satisfy both those terms and this + License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the + Program, your modified version must prominently offer all users + interacting with it remotely through a computer network (if your version + supports such interaction) an opportunity to receive the Corresponding + Source of your version by providing access to the Corresponding Source + from a network server at no charge, through some standard or customary + means of facilitating copying of software. This Corresponding Source + shall include the Corresponding Source for any work covered by version 3 + of the GNU General Public License that is incorporated pursuant to the + following paragraph. + + Notwithstanding any other provision of this License, you have + permission to link or combine any covered work with a work licensed + under version 3 of the GNU General Public License into a single + combined work, and to convey the resulting work. The terms of this + License will continue to apply to the part which is the covered work, + but the work with which it is combined will remain governed by version + 3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of + the GNU Affero General Public License from time to time. Such new versions + will be similar in spirit to the present version, but may differ in detail to + address new problems or concerns. + + Each version is given a distinguishing version number. If the + Program specifies that a certain numbered version of the GNU Affero General + Public License "or any later version" applies to it, you have the + option of following the terms and conditions either of that numbered + version or of any later version published by the Free Software + Foundation. If the Program does not specify a version number of the + GNU Affero General Public License, you may choose any version ever published + by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future + versions of the GNU Affero General Public License can be used, that proxy's + public statement of acceptance of a version permanently authorizes you + to choose that version for the Program. + + Later license versions may give you additional or different + permissions. However, no additional obligations are imposed on any + author or copyright holder as a result of your choosing to follow a + later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY + APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT + HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY + OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM + IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF + ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING + WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS + THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY + GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE + USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF + DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD + PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), + EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF + SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided + above cannot be given local legal effect according to their terms, + reviewing courts shall apply local law that most closely approximates + an absolute waiver of all civil liability in connection with the + Program, unless a warranty or assumption of liability accompanies a + copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest + possible use to the public, the best way to achieve this is to make it + free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest + to attach them to the start of each source file to most effectively + state the exclusion of warranty; and each file should have at least + the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + + Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer + network, you should also make sure that it provides a way for users to + get its source. For example, if your program is a web application, its + interface could display a "Source" link that leads users to an archive + of the code. There are many ways you could offer source, and different + solutions will be better for different programs; see section 13 for the + specific requirements. + + You should also get your employer (if you work as a programmer) or school, + if any, to sign a "copyright disclaimer" for the program, if necessary. + For more information on this, and how to apply and follow the GNU AGPL, see + . diff --git a/README.md b/README.md new file mode 100644 index 0000000..b338d82 --- /dev/null +++ b/README.md @@ -0,0 +1,212 @@ +# ajna-watcher-ts + +## Setup + +* Run the following command to install required packages: + + ```bash + yarn + ``` + +* Create a postgres12 database for the watcher: + + ```bash + sudo su - postgres + createdb ajna-watcher-ts + ``` + +* If the watcher is an `active` watcher: + + Create database for the job queue and enable the `pgcrypto` extension on them (https://github.com/timgit/pg-boss/blob/master/docs/usage.md#intro): + + ``` + createdb ajna-watcher-ts-job-queue + ``` + + ``` + postgres@tesla:~$ psql -U postgres -h localhost ajna-watcher-ts-job-queue + Password for user postgres: + psql (12.7 (Ubuntu 12.7-1.pgdg18.04+1)) + SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off) + Type "help" for help. + + ajna-watcher-ts-job-queue=# CREATE EXTENSION pgcrypto; + CREATE EXTENSION + ajna-watcher-ts-job-queue=# exit + ``` + +* In the [config file](./environments/local.toml): + + * Update the database connection settings. + + * Update the `upstream` config and provide the `ipld-eth-server` GQL API endpoint. + + * Update the `server` config with state checkpoint settings. + +## Customize + +* Indexing on an event: + + * Edit the custom hook function `handleEvent` (triggered on an event) in [hooks.ts](./src/hooks.ts) to perform corresponding indexing using the `Indexer` object. + + * While using the indexer storage methods for indexing, pass `diff` as true if default state is desired to be generated using the state variables being indexed. + +* Generating state: + + * Edit the custom hook function `createInitialState` (triggered if the watcher passes the start block, checkpoint: `true`) in [hooks.ts](./src/hooks.ts) to save an initial `State` using the `Indexer` object. + + * Edit the custom hook function `createStateDiff` (triggered on a block) in [hooks.ts](./src/hooks.ts) to save the state in a `diff` `State` using the `Indexer` object. The default state (if exists) is updated. + + * Edit the custom hook function `createStateCheckpoint` (triggered just before default and CLI checkpoint) in [hooks.ts](./src/hooks.ts) to save the state in a `checkpoint` `State` using the `Indexer` object. + +### GQL Caching + +To enable GQL requests caching: + +* Update the `server.gqlCache` config with required settings. + +* In the GQL [schema file](./src/schema.gql), use the `cacheControl` directive to apply cache hints at schema level. + + * Eg. Set `inheritMaxAge` to true for non-scalar fields of a type. + +* In the GQL [resolvers file](./src/resolvers.ts), uncomment the `setGQLCacheHints()` calls in resolvers for required queries. + +## Run + +* If the watcher is a `lazy` watcher: + + * Run the server: + + ```bash + yarn server + ``` + + GQL console: http://localhost:3008/graphql + +* If the watcher is an `active` watcher: + + * Run the job-runner: + + ```bash + yarn job-runner + ``` + + * Run the server: + + ```bash + yarn server + ``` + + GQL console: http://localhost:3008/graphql + + * To watch a contract: + + ```bash + yarn watch:contract --address --kind --checkpoint --starting-block [block-number] + ``` + + * `address`: Address or identifier of the contract to be watched. + * `kind`: Kind of the contract. + * `checkpoint`: Turn checkpointing on (`true` | `false`). + * `starting-block`: Starting block for the contract (default: `1`). + + Examples: + + Watch a contract with its address and checkpointing on: + + ```bash + yarn watch:contract --address 0x1F78641644feB8b64642e833cE4AFE93DD6e7833 --kind ERC20 --checkpoint true + ``` + + Watch a contract with its identifier and checkpointing on: + + ```bash + yarn watch:contract --address MyProtocol --kind protocol --checkpoint true + ``` + + * To fill a block range: + + ```bash + yarn fill --start-block --end-block + ``` + + * `start-block`: Block number to start filling from. + * `end-block`: Block number till which to fill. + + * To create a checkpoint for a contract: + + ```bash + yarn checkpoint create --address --block-hash [block-hash] + ``` + + * `address`: Address or identifier of the contract for which to create a checkpoint. + * `block-hash`: Hash of a block (in the pruned region) at which to create the checkpoint (default: latest canonical block hash). + + * To verify a checkpoint: + + ```bash + yarn checkpoint verify --cid + ``` + + `cid`: CID of the checkpoint for which to verify. + + * To reset the watcher to a previous block number: + + * Reset watcher: + + ```bash + yarn reset watcher --block-number + ``` + + * Reset job-queue: + + ```bash + yarn reset job-queue + ``` + + * Reset state: + + ```bash + yarn reset state --block-number + ``` + + * `block-number`: Block number to which to reset the watcher. + + * To export and import the watcher state: + + * In source watcher, export watcher state: + + ```bash + yarn export-state --export-file [export-file-path] --block-number [snapshot-block-height] + ``` + + * `export-file`: Path of file to which to export the watcher data. + * `block-number`: Block height at which to take snapshot for export. + + * In target watcher, run job-runner: + + ```bash + yarn job-runner + ``` + + * Import watcher state: + + ```bash + yarn import-state --import-file + ``` + + * `import-file`: Path of file from which to import the watcher data. + + * Run server: + + ```bash + yarn server + ``` + + * To inspect a CID: + + ```bash + yarn inspect-cid --cid + ``` + + * `cid`: CID to be inspected. diff --git a/environments/local.toml b/environments/local.toml new file mode 100644 index 0000000..d8e2a0d --- /dev/null +++ b/environments/local.toml @@ -0,0 +1,98 @@ +[server] + host = "127.0.0.1" + port = 3008 + kind = "active" + gqlPath = "/graphql" + + # Checkpointing state. + checkpointing = true + + # Checkpoint interval in number of blocks. + checkpointInterval = 2000 + + # Enable state creation + # CAUTION: Disable only if state creation is not desired or can be filled subsequently + enableState = true + + subgraphPath = "./subgraph-build" + + # Interval to restart wasm instance periodically + wasmRestartBlocksInterval = 20 + + # Interval in number of blocks at which to clear entities cache. + clearEntitiesCacheInterval = 1000 + + # Max block range for which to return events in eventsInRange GQL query. + # Use -1 for skipping check on block range. + maxEventsBlockRange = 1000 + + # Flag to specify whether RPC endpoint supports block hash as block tag parameter + rpcSupportsBlockHashParam = false + + # GQL cache settings + [server.gqlCache] + enabled = true + + # Max in-memory cache size (in bytes) (default 8 MB) + # maxCacheSize + + # GQL cache-control max-age settings (in seconds) + maxAge = 15 + timeTravelMaxAge = 86400 # 1 day + +[metrics] + host = "127.0.0.1" + port = 9000 + [metrics.gql] + port = 9001 + +[database] + type = "postgres" + host = "localhost" + port = 5432 + database = "ajna-watcher-ts" + username = "postgres" + password = "postgres" + synchronize = true + logging = false + +[upstream] + [upstream.ethServer] + # gqlApiEndpoint = "http://127.0.0.1:8082/graphql" + rpcProviderEndpoint = "http://127.0.0.1:8081" + + # Boolean flag to specify if rpc-eth-client should be used for RPC endpoint instead of ipld-eth-client (ipld-eth-server GQL client) + rpcClient = true + + # Boolean flag to specify if rpcProviderEndpoint is an FEVM RPC endpoint + isFEVM = false + + # Boolean flag to filter event logs by contracts + filterLogsByAddresses = true + # Boolean flag to filter event logs by topics + filterLogsByTopics = true + + [upstream.cache] + name = "requests" + enabled = false + deleteOnStart = false + +[jobQueue] + dbConnectionString = "postgres://postgres:postgres@localhost/ajna-watcher-ts-job-queue" + maxCompletionLagInSecs = 300 + jobDelayInMilliSecs = 100 + eventsInBatch = 50 + subgraphEventsOrder = true + blockDelayInMilliSecs = 2000 + + # Boolean to switch between modes of processing events when starting the server. + # Setting to true will fetch filtered events and required blocks in a range of blocks and then process them. + # Setting to false will fetch blocks consecutively with its events and then process them (Behaviour is followed in realtime processing near head). + useBlockRanges = true + + # Block range in which logs are fetched during historical blocks processing + historicalLogsBlockRange = 2000 + + # Max block range of historical processing after which it waits for completion of events processing + # If set to -1 historical processing does not wait for events processing and completes till latest canonical block + historicalMaxFetchAhead = 10000 diff --git a/package.json b/package.json new file mode 100644 index 0000000..24ac055 --- /dev/null +++ b/package.json @@ -0,0 +1,76 @@ +{ + "name": "@cerc-io/ajna-watcher-ts", + "version": "0.1.0", + "description": "ajna-watcher-ts", + "private": true, + "main": "dist/index.js", + "scripts": { + "lint": "eslint --max-warnings=0 .", + "build": "yarn clean && tsc && yarn copy-assets", + "clean": "rm -rf ./dist", + "prepare": "husky install", + "copy-assets": "copyfiles -u 1 src/**/*.gql dist/", + "server": "DEBUG=vulcanize:* YARN_CHILD_PROCESS=true node --enable-source-maps dist/server.js", + "server:dev": "DEBUG=vulcanize:* YARN_CHILD_PROCESS=true ts-node src/server.ts", + "job-runner": "DEBUG=vulcanize:* YARN_CHILD_PROCESS=true node --enable-source-maps dist/job-runner.js", + "job-runner:dev": "DEBUG=vulcanize:* YARN_CHILD_PROCESS=true ts-node src/job-runner.ts", + "watch:contract": "DEBUG=vulcanize:* ts-node src/cli/watch-contract.ts", + "fill": "DEBUG=vulcanize:* ts-node src/fill.ts", + "fill:state": "DEBUG=vulcanize:* ts-node src/fill.ts --state", + "reset": "DEBUG=vulcanize:* ts-node src/cli/reset.ts", + "checkpoint": "DEBUG=vulcanize:* node --enable-source-maps dist/cli/checkpoint.js", + "checkpoint:dev": "DEBUG=vulcanize:* ts-node src/cli/checkpoint.ts", + "export-state": "DEBUG=vulcanize:* node --enable-source-maps dist/cli/export-state.js", + "export-state:dev": "DEBUG=vulcanize:* ts-node src/cli/export-state.ts", + "import-state": "DEBUG=vulcanize:* node --enable-source-maps dist/cli/import-state.js", + "import-state:dev": "DEBUG=vulcanize:* ts-node src/cli/import-state.ts", + "inspect-cid": "DEBUG=vulcanize:* ts-node src/cli/inspect-cid.ts", + "index-block": "DEBUG=vulcanize:* ts-node src/cli/index-block.ts" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/cerc-io/watcher-ts.git" + }, + "author": "", + "license": "AGPL-3.0", + "bugs": { + "url": "https://github.com/cerc-io/watcher-ts/issues" + }, + "homepage": "https://github.com/cerc-io/watcher-ts#readme", + "dependencies": { + "@apollo/client": "^3.3.19", + "@cerc-io/cli": "^0.2.82", + "@cerc-io/ipld-eth-client": "^0.2.82", + "@cerc-io/solidity-mapper": "^0.2.82", + "@cerc-io/util": "^0.2.82", + "@cerc-io/graph-node": "^0.2.82", + "@ethersproject/providers": "^5.4.4", + "debug": "^4.3.1", + "decimal.js": "^10.3.1", + "ethers": "^5.4.4", + "graphql": "^15.5.0", + "json-bigint": "^1.0.0", + "reflect-metadata": "^0.1.13", + "typeorm": "0.2.37", + "yargs": "^17.0.1" + }, + "devDependencies": { + "@ethersproject/abi": "^5.3.0", + "@types/debug": "^4.1.5", + "@types/json-bigint": "^1.0.0", + "@types/yargs": "^17.0.0", + "@typescript-eslint/eslint-plugin": "^5.47.1", + "@typescript-eslint/parser": "^5.47.1", + "copyfiles": "^2.4.1", + "eslint": "^8.35.0", + "eslint-config-semistandard": "^15.0.1", + "eslint-config-standard": "^16.0.3", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^5.1.0", + "eslint-plugin-standard": "^5.0.0", + "husky": "^7.0.2", + "ts-node": "^10.2.1", + "typescript": "^5.0.2" + } +} diff --git a/src/artifacts/AjnaToken.json b/src/artifacts/AjnaToken.json new file mode 100644 index 0000000..d803dc4 --- /dev/null +++ b/src/artifacts/AjnaToken.json @@ -0,0 +1,676 @@ +{ + "abi": [ + { + "type": "constructor", + "inputs": [ + { + "name": "tokenReceiver_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "DOMAIN_SEPARATOR", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "allowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "burn", + "inputs": [ + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "burnFrom", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "checkpoints", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + }, + { + "name": "pos", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "tuple", + "internalType": "struct ERC20Votes.Checkpoint", + "components": [ + { + "name": "fromBlock", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "votes", + "type": "uint224", + "internalType": "uint224" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decimals", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "subtractedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "delegate", + "inputs": [ + { + "name": "delegatee", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "delegateBySig", + "inputs": [ + { + "name": "delegatee", + "type": "address", + "internalType": "address" + }, + { + "name": "nonce", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "v", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "r", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "s", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "delegates", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPastTotalSupply", + "inputs": [ + { + "name": "blockNumber", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPastVotes", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + }, + { + "name": "blockNumber", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getVotes", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "increaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "addedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "nonces", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "numCheckpoints", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint32", + "internalType": "uint32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "permit", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "deadline", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "v", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "r", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "s", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalSupply", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transfer", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferFromWithPermit", + "inputs": [ + { + "name": "from_", + "type": "address", + "internalType": "address" + }, + { + "name": "to_", + "type": "address", + "internalType": "address" + }, + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "value_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "deadline_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "v_", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "r_", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "s_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DelegateChanged", + "inputs": [ + { + "name": "delegator", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "fromDelegate", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "toDelegate", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DelegateVotesChanged", + "inputs": [ + { + "name": "delegate", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "previousBalance", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newBalance", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + } + ] +} \ No newline at end of file diff --git a/src/artifacts/BurnWrappedAjna.json b/src/artifacts/BurnWrappedAjna.json new file mode 100644 index 0000000..1e2caa7 --- /dev/null +++ b/src/artifacts/BurnWrappedAjna.json @@ -0,0 +1,462 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "wrappedToken", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "InvalidWrappedToken", + "type": "error" + }, + { + "inputs": [], + "name": "UnwrapNotAllowed", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "DOMAIN_SEPARATOR", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "depositFor", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "nonces", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "permit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "underlying", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "withdrawTo", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function" + } + ] +} \ No newline at end of file diff --git a/src/artifacts/ERC20Pool.json b/src/artifacts/ERC20Pool.json new file mode 100644 index 0000000..d338ad3 --- /dev/null +++ b/src/artifacts/ERC20Pool.json @@ -0,0 +1,2474 @@ +{ + "abi": [ + { + "type": "function", + "name": "addCollateral", + "inputs": [ + { + "name": "amountToAdd_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "addQuoteToken", + "inputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "addedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approveLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approvedTransferors", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketCollateralDust", + "inputs": [ + { + "name": "bucketIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "bucketExchangeRate", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketTake", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "depositTake_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "burnInfo", + "inputs": [ + { + "name": "burnEventEpoch_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "collateralAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "collateralScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "currentBurnEpoch", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "debtInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositIndex", + "inputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositScale", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositSize", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUpToIndex", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUtilization", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "drawDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "amountToBorrow_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralToPledge_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "emasInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashFee", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashLoan", + "inputs": [ + { + "name": "receiver_", + "type": "address", + "internalType": "contract IERC3156FlashBorrower" + }, + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "increaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "inflatorInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "initialize", + "inputs": [ + { + "name": "rate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "interestRateInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "kick", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickReserveAuction", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickerInfo", + "inputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lender_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lpBalance_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositTime_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderKick", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "loanInfo", + "inputs": [ + { + "name": "loanId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "loansInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpAllowance", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "owner_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "allowance_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "maxFlashLoan", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "maxLoan_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "moveQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "fromIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fromBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "movedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "pledgedCollateral", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolType", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "removeCollateral", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "removeQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "repayDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxQuoteTokenAmountToRepay_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralAmountToPull_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralReceiver_", + "type": "address", + "internalType": "address" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amountRepaid_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "reservesInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "revokeLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "settle", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxDepth_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralSettled_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isBorrowerSettled_", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "stampLoan", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "take", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "callee_", + "type": "address", + "internalType": "address" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "collateralTaken_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "takeReserves", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "totalAuctionsInPool", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0Debt", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0DebtInAuction", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferLP", + "inputs": [ + { + "name": "owner_", + "type": "address", + "internalType": "address" + }, + { + "name": "newOwner_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "updateInterest", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdrawBonds", + "inputs": [ + { + "name": "recipient_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "withdrawnAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "AddCollateral", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApproveLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionNFTSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BondWithdrawn", + "inputs": [ + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "reciever", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketBankruptcy", + "inputs": [ + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "lpForfeited", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTake", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTakeLPAwarded", + "inputs": [ + { + "name": "taker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "lpAwardedTaker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedKicker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DecreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DrawDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountBorrowed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPledged", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Flashloan", + "inputs": [ + { + "name": "receiver", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "IncreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "InterestUpdateFailure", + "inputs": [], + "anonymous": false + }, + { + "type": "event", + "name": "Kick", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "debt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bond", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "KickReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LoanStamped", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "from", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "to", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemedFrom", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedTo", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveCollateral", + "inputs": [ + { + "name": "claimer", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RepayDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "quoteRepaid", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPulled", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ResetInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Settle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "settledDebt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Take", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "TransferLP", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "UpdateInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AlreadyInitialized", + "inputs": [] + }, + { + "type": "error", + "name": "AmountLTMinDebt", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotClearable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotTakeable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionPriceGtBucketPrice", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerNotSender", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerOk", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerUnderCollateralized", + "inputs": [] + }, + { + "type": "error", + "name": "BucketBankruptcyBlock", + "inputs": [] + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "CannotMergeToHigherPrice", + "inputs": [] + }, + { + "type": "error", + "name": "DustAmountNotExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanCallbackFailed", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanIncorrectBalance", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanUnavailableForToken", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientCollateral", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLP", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLiquidity", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAllowancesInput", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAmount", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidIndex", + "inputs": [] + }, + { + "type": "error", + "name": "LUPBelowHTP", + "inputs": [] + }, + { + "type": "error", + "name": "LimitIndexExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "MoveToSameIndex", + "inputs": [] + }, + { + "type": "error", + "name": "NoAllowance", + "inputs": [] + }, + { + "type": "error", + "name": "NoAuction", + "inputs": [] + }, + { + "type": "error", + "name": "NoClaim", + "inputs": [] + }, + { + "type": "error", + "name": "NoDebt", + "inputs": [] + }, + { + "type": "error", + "name": "NoReserves", + "inputs": [] + }, + { + "type": "error", + "name": "NoReservesAuction", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__SqrtNegativeInput", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__SqrtOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "denominator", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PriceBelowLUP", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "ReserveAuctionTooSoon", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransferToSameOwner", + "inputs": [] + }, + { + "type": "error", + "name": "TransferorNotApproved", + "inputs": [] + }, + { + "type": "error", + "name": "ZeroDebtToCollateral", + "inputs": [] + } + ] +} \ No newline at end of file diff --git a/src/artifacts/ERC20PoolFactory.json b/src/artifacts/ERC20PoolFactory.json new file mode 100644 index 0000000..0353fb3 --- /dev/null +++ b/src/artifacts/ERC20PoolFactory.json @@ -0,0 +1,238 @@ +{ + "abi": [ + { + "type": "constructor", + "inputs": [ + { + "name": "ajna_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "ERC20_NON_SUBSET_HASH", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "MAX_RATE", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "MIN_RATE", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ajna", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "deployPool", + "inputs": [ + { + "name": "collateral_", + "type": "address", + "internalType": "address" + }, + { + "name": "quote_", + "type": "address", + "internalType": "address" + }, + { + "name": "interestRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "deployedPools", + "inputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "deployedPoolsList", + "inputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getDeployedPoolsList", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address[]", + "internalType": "address[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getNumberOfDeployedPools", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "implementation", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract ERC20Pool" + } + ], + "stateMutability": "view" + }, + { + "type": "event", + "name": "PoolCreated", + "inputs": [ + { + "name": "pool_", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "subsetHash_", + "type": "bytes32", + "indexed": false, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "CreateFail", + "inputs": [] + }, + { + "type": "error", + "name": "DecimalsNotCompliant", + "inputs": [] + }, + { + "type": "error", + "name": "DeployQuoteCollateralSameToken", + "inputs": [] + }, + { + "type": "error", + "name": "DeployWithZeroAddress", + "inputs": [] + }, + { + "type": "error", + "name": "PoolAlreadyExists", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "PoolInterestRateInvalid", + "inputs": [] + } + ] +} \ No newline at end of file diff --git a/src/artifacts/ERC721Pool.json b/src/artifacts/ERC721Pool.json new file mode 100644 index 0000000..500f073 --- /dev/null +++ b/src/artifacts/ERC721Pool.json @@ -0,0 +1,2564 @@ +{ + "abi": [ + { + "type": "function", + "name": "addCollateral", + "inputs": [ + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "addQuoteToken", + "inputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "addedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approveLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approvedTransferors", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerTokenIds", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketExchangeRate", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketTake", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "depositTake_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "bucketTokenIds", + "inputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "burnInfo", + "inputs": [ + { + "name": "burnEventEpoch_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "collateralAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "currentBurnEpoch", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "debtInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositIndex", + "inputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositScale", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositSize", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUpToIndex", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUtilization", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "drawDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "amountToBorrow_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "tokenIdsToPledge_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "emasInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashFee", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashLoan", + "inputs": [ + { + "name": "receiver_", + "type": "address", + "internalType": "contract IERC3156FlashBorrower" + }, + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getBorrowerTokenIds", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getBucketTokenIds", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "increaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "inflatorInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "initialize", + "inputs": [ + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "rate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "interestRateInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isSubset", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "kick", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickReserveAuction", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickerInfo", + "inputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lender_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lpBalance_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositTime_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderKick", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "loanInfo", + "inputs": [ + { + "name": "loanId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "loansInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpAllowance", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "owner_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "allowance_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "maxFlashLoan", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "maxLoan_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "mergeOrRemoveCollateral", + "inputs": [ + { + "name": "removalIndexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "noOfNFTsToRemove_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralMerged_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "moveQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "fromIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fromBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "movedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "pledgedCollateral", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolType", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "removeCollateral", + "inputs": [ + { + "name": "noOfNFTsToRemove_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "removeQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "repayDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxQuoteTokenAmountToRepay_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "noOfNFTsToPull_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralReceiver_", + "type": "address", + "internalType": "address" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amountRepaid_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "reservesInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "revokeLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "settle", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxDepth_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralSettled_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isBorrowerSettled_", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "stampLoan", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "take", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "callee_", + "type": "address", + "internalType": "address" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "collateralTaken_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "takeReserves", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "tokenIdsAllowed", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalAuctionsInPool", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0Debt", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0DebtInAuction", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferLP", + "inputs": [ + { + "name": "owner_", + "type": "address", + "internalType": "address" + }, + { + "name": "newOwner_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "updateInterest", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdrawBonds", + "inputs": [ + { + "name": "recipient_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "withdrawnAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "AddCollateralNFT", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "tokenIds", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApproveLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionNFTSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BondWithdrawn", + "inputs": [ + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "reciever", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketBankruptcy", + "inputs": [ + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "lpForfeited", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTake", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTakeLPAwarded", + "inputs": [ + { + "name": "taker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "lpAwardedTaker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedKicker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DecreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DrawDebtNFT", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountBorrowed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "tokenIdsPledged", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Flashloan", + "inputs": [ + { + "name": "receiver", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "IncreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "InterestUpdateFailure", + "inputs": [], + "anonymous": false + }, + { + "type": "event", + "name": "Kick", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "debt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bond", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "KickReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LoanStamped", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MergeOrRemoveCollateralNFT", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateralMerged", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "toIndexLps", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "from", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "to", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemedFrom", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedTo", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveCollateral", + "inputs": [ + { + "name": "claimer", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RepayDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "quoteRepaid", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPulled", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ResetInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Settle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "settledDebt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Take", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "TransferLP", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "UpdateInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AlreadyInitialized", + "inputs": [] + }, + { + "type": "error", + "name": "AmountLTMinDebt", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotClearable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotTakeable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionPriceGtBucketPrice", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerNotSender", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerOk", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerUnderCollateralized", + "inputs": [] + }, + { + "type": "error", + "name": "BucketBankruptcyBlock", + "inputs": [] + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "CannotMergeToHigherPrice", + "inputs": [] + }, + { + "type": "error", + "name": "DustAmountNotExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanCallbackFailed", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanIncorrectBalance", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanUnavailableForToken", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientCollateral", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLP", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLiquidity", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAllowancesInput", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAmount", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidIndex", + "inputs": [] + }, + { + "type": "error", + "name": "LUPBelowHTP", + "inputs": [] + }, + { + "type": "error", + "name": "LimitIndexExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "MoveToSameIndex", + "inputs": [] + }, + { + "type": "error", + "name": "NoAllowance", + "inputs": [] + }, + { + "type": "error", + "name": "NoAuction", + "inputs": [] + }, + { + "type": "error", + "name": "NoClaim", + "inputs": [] + }, + { + "type": "error", + "name": "NoDebt", + "inputs": [] + }, + { + "type": "error", + "name": "NoReserves", + "inputs": [] + }, + { + "type": "error", + "name": "NoReservesAuction", + "inputs": [] + }, + { + "type": "error", + "name": "OnlySubset", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PriceBelowLUP", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "ReserveAuctionTooSoon", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransferToSameOwner", + "inputs": [] + }, + { + "type": "error", + "name": "TransferorNotApproved", + "inputs": [] + }, + { + "type": "error", + "name": "ZeroDebtToCollateral", + "inputs": [] + } + ] +} \ No newline at end of file diff --git a/src/artifacts/ERC721PoolFactory.json b/src/artifacts/ERC721PoolFactory.json new file mode 100644 index 0000000..ea7442a --- /dev/null +++ b/src/artifacts/ERC721PoolFactory.json @@ -0,0 +1,301 @@ +{ + "abi": [ + { + "type": "constructor", + "inputs": [ + { + "name": "ajna_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "ERC721_NON_SUBSET_HASH", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "MAX_RATE", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "MIN_RATE", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ajna", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "deployPool", + "inputs": [ + { + "name": "collateral_", + "type": "address", + "internalType": "address" + }, + { + "name": "quote_", + "type": "address", + "internalType": "address" + }, + { + "name": "interestRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "deployPool", + "inputs": [ + { + "name": "collateral_", + "type": "address", + "internalType": "address" + }, + { + "name": "quote_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "interestRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "deployedPools", + "inputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "deployedPoolsList", + "inputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getDeployedPoolsList", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address[]", + "internalType": "address[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getNFTSubsetHash", + "inputs": [ + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getNumberOfDeployedPools", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "implementation", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract ERC721Pool" + } + ], + "stateMutability": "view" + }, + { + "type": "event", + "name": "PoolCreated", + "inputs": [ + { + "name": "pool_", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "subsetHash_", + "type": "bytes32", + "indexed": false, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "CreateFail", + "inputs": [] + }, + { + "type": "error", + "name": "DecimalsNotCompliant", + "inputs": [] + }, + { + "type": "error", + "name": "DeployQuoteCollateralSameToken", + "inputs": [] + }, + { + "type": "error", + "name": "DeployWithZeroAddress", + "inputs": [] + }, + { + "type": "error", + "name": "NFTNotSupported", + "inputs": [] + }, + { + "type": "error", + "name": "PoolAlreadyExists", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "PoolInterestRateInvalid", + "inputs": [] + }, + { + "type": "error", + "name": "TokenIdSubsetInvalid", + "inputs": [] + } + ] +} \ No newline at end of file diff --git a/src/artifacts/GrantFund.json b/src/artifacts/GrantFund.json new file mode 100644 index 0000000..d6de98f --- /dev/null +++ b/src/artifacts/GrantFund.json @@ -0,0 +1,1033 @@ +{ + "abi": [ + { + "type": "constructor", + "inputs": [ + { + "name": "ajnaToken_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "_voterInfo", + "inputs": [ + { + "name": "distributionId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "voter", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "fundingVotingPower", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "fundingRemainingVotingPower", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "screeningVotesCast", + "type": "uint248", + "internalType": "uint248" + }, + { + "name": "hasClaimedReward", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ajnaTokenAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "claimDelegateReward", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "outputs": [ + { + "name": "rewardClaimed_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "execute", + "inputs": [ + { + "name": "targets_", + "type": "address[]", + "internalType": "address[]" + }, + { + "name": "values_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "calldatas_", + "type": "bytes[]", + "internalType": "bytes[]" + }, + { + "name": "descriptionHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "fundTreasury", + "inputs": [ + { + "name": "fundingAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "fundingVote", + "inputs": [ + { + "name": "voteParams_", + "type": "tuple[]", + "internalType": "struct IGrantFundState.FundingVoteParams[]", + "components": [ + { + "name": "proposalId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "votesUsed", + "type": "int256", + "internalType": "int256" + } + ] + } + ], + "outputs": [ + { + "name": "votesCast_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getChallengeStageStartBlock", + "inputs": [ + { + "name": "endBlock_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getDelegateReward", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "voter_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "rewards_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getDescriptionHash", + "inputs": [ + { + "name": "description_", + "type": "string", + "internalType": "string" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getDistributionId", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint24", + "internalType": "uint24" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getDistributionPeriodInfo", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "outputs": [ + { + "name": "", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "", + "type": "uint48", + "internalType": "uint48" + }, + { + "name": "", + "type": "uint48", + "internalType": "uint48" + }, + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getFundedProposalSlate", + "inputs": [ + { + "name": "slateHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getFundingStageEndBlock", + "inputs": [ + { + "name": "startBlock_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getFundingVotesCast", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "tuple[]", + "internalType": "struct IGrantFundState.FundingVoteParams[]", + "components": [ + { + "name": "proposalId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "votesUsed", + "type": "int256", + "internalType": "int256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getHasClaimedRewards", + "inputs": [ + { + "name": "distributionId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getProposalInfo", + "inputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "int128", + "internalType": "int128" + }, + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getScreeningStageEndBlock", + "inputs": [ + { + "name": "startBlock_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getScreeningVotesCast", + "inputs": [ + { + "name": "distributionId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getSlateHash", + "inputs": [ + { + "name": "proposalIds_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getStage", + "inputs": [], + "outputs": [ + { + "name": "stage_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getTopTenProposals", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getVoterInfo", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getVotesFunding", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "votes_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getVotesScreening", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "votes_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hashProposal", + "inputs": [ + { + "name": "targets_", + "type": "address[]", + "internalType": "address[]" + }, + { + "name": "values_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "calldatas_", + "type": "bytes[]", + "internalType": "bytes[]" + }, + { + "name": "descriptionHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "propose", + "inputs": [ + { + "name": "targets_", + "type": "address[]", + "internalType": "address[]" + }, + { + "name": "values_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "calldatas_", + "type": "bytes[]", + "internalType": "bytes[]" + }, + { + "name": "description_", + "type": "string", + "internalType": "string" + } + ], + "outputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "screeningVote", + "inputs": [ + { + "name": "voteParams_", + "type": "tuple[]", + "internalType": "struct IGrantFundState.ScreeningVoteParams[]", + "components": [ + { + "name": "proposalId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "votes", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "outputs": [ + { + "name": "votesCast_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "startNewDistributionPeriod", + "inputs": [], + "outputs": [ + { + "name": "newDistributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "state", + "inputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "enum IGrantFundState.ProposalState" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "treasury", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "updateSlate", + "inputs": [ + { + "name": "proposalIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "outputs": [ + { + "name": "newTopSlate_", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "DelegateRewardClaimed", + "inputs": [ + { + "name": "delegateeAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "distributionId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "rewardClaimed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DistributionPeriodStarted", + "inputs": [ + { + "name": "distributionId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "startBlock", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "endBlock", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "FundTreasury", + "inputs": [ + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "treasuryBalance", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "FundedSlateUpdated", + "inputs": [ + { + "name": "distributionId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "fundedSlateHash", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ProposalCreated", + "inputs": [ + { + "name": "proposalId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "proposer", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "targets", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + }, + { + "name": "values", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "signatures", + "type": "string[]", + "indexed": false, + "internalType": "string[]" + }, + { + "name": "calldatas", + "type": "bytes[]", + "indexed": false, + "internalType": "bytes[]" + }, + { + "name": "startBlock", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "endBlock", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "description", + "type": "string", + "indexed": false, + "internalType": "string" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ProposalExecuted", + "inputs": [ + { + "name": "proposalId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "VoteCast", + "inputs": [ + { + "name": "voter", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "proposalId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "support", + "type": "uint8", + "indexed": false, + "internalType": "uint8" + }, + { + "name": "weight", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "reason", + "type": "string", + "indexed": false, + "internalType": "string" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "DelegateRewardInvalid", + "inputs": [] + }, + { + "type": "error", + "name": "DistributionPeriodStillActive", + "inputs": [] + }, + { + "type": "error", + "name": "ExecuteProposalInvalid", + "inputs": [] + }, + { + "type": "error", + "name": "FundingVoteWrongDirection", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientRemainingVotingPower", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientVotingPower", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidProposal", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidProposalSlate", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidVote", + "inputs": [] + }, + { + "type": "error", + "name": "ProposalAlreadyExists", + "inputs": [] + }, + { + "type": "error", + "name": "ProposalNotSuccessful", + "inputs": [] + }, + { + "type": "error", + "name": "RewardAlreadyClaimed", + "inputs": [] + }, + { + "type": "error", + "name": "ScreeningPeriodEnded", + "inputs": [] + } + ] +} \ No newline at end of file diff --git a/src/artifacts/PositionManager.json b/src/artifacts/PositionManager.json new file mode 100644 index 0000000..addda9a --- /dev/null +++ b/src/artifacts/PositionManager.json @@ -0,0 +1,1023 @@ +{ + "abi": [ + { + "type": "constructor", + "inputs": [ + { + "name": "erc20Factory_", + "type": "address", + "internalType": "contract ERC20PoolFactory" + }, + { + "name": "erc721Factory_", + "type": "address", + "internalType": "contract ERC721PoolFactory" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "DOMAIN_SEPARATOR", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "PERMIT_TYPEHASH", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "burn", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getApproved", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getLP", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPositionIndexes", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPositionIndexesFiltered", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "filteredIndexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPositionInfo", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isAjnaPool", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "subsetHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isApprovedForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isIndexInPosition", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isPositionBucketBankrupt", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "memorializePositions", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "mint", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "recipient_", + "type": "address", + "internalType": "address" + }, + { + "name": "poolSubsetHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "moveLiquidity", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "fromIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "nonces", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ownerOf", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "permit", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "deadline_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "signature_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "poolKey", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "redeemPositions", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setApprovalForAll", + "inputs": [ + { + "name": "operator", + "type": "address", + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "supportsInterface", + "inputs": [ + { + "name": "interfaceId", + "type": "bytes4", + "internalType": "bytes4" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "tokenURI", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApprovalForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Burn", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MemorializePosition", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Mint", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "pool", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MoveLiquidity", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "fromIndex", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "toIndex", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemedFrom", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedTo", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RedeemPosition", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AllowanceTooLow", + "inputs": [] + }, + { + "type": "error", + "name": "BucketBankrupt", + "inputs": [] + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "DeployWithZeroAddress", + "inputs": [] + }, + { + "type": "error", + "name": "LiquidityNotRemoved", + "inputs": [] + }, + { + "type": "error", + "name": "NoAuth", + "inputs": [] + }, + { + "type": "error", + "name": "NoToken", + "inputs": [] + }, + { + "type": "error", + "name": "NonExistentToken", + "inputs": [] + }, + { + "type": "error", + "name": "NotAjnaPool", + "inputs": [] + }, + { + "type": "error", + "name": "NotAuthorized", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PermitExpired", + "inputs": [] + }, + { + "type": "error", + "name": "RemovePositionFailed", + "inputs": [] + }, + { + "type": "error", + "name": "WrongPool", + "inputs": [] + } + ] +} \ No newline at end of file diff --git a/src/cli/checkpoint-cmds/create.ts b/src/cli/checkpoint-cmds/create.ts new file mode 100644 index 0000000..e771c70 --- /dev/null +++ b/src/cli/checkpoint-cmds/create.ts @@ -0,0 +1,44 @@ +// +// Copyright 2022 Vulcanize, Inc. +// + +import { CreateCheckpointCmd } from '@cerc-io/cli'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from '../../database'; +import { Indexer } from '../../indexer'; + +export const command = 'create'; + +export const desc = 'Create checkpoint'; + +export const builder = { + address: { + type: 'string', + require: true, + demandOption: true, + describe: 'Contract address to create the checkpoint for.' + }, + blockHash: { + type: 'string', + describe: 'Blockhash at which to create the checkpoint.' + } +}; + +export const handler = async (argv: any): Promise => { + const createCheckpointCmd = new CreateCheckpointCmd(); + await createCheckpointCmd.init(argv, Database); + + const { graphWatcher } = await getGraphDbAndWatcher( + createCheckpointCmd.config.server, + createCheckpointCmd.clients.ethClient, + createCheckpointCmd.ethProvider, + createCheckpointCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await createCheckpointCmd.initIndexer(Indexer, graphWatcher); + + await createCheckpointCmd.exec(); +}; diff --git a/src/cli/checkpoint-cmds/verify.ts b/src/cli/checkpoint-cmds/verify.ts new file mode 100644 index 0000000..3709f54 --- /dev/null +++ b/src/cli/checkpoint-cmds/verify.ts @@ -0,0 +1,40 @@ +// +// Copyright 2022 Vulcanize, Inc. +// + +import { VerifyCheckpointCmd } from '@cerc-io/cli'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from '../../database'; +import { Indexer } from '../../indexer'; + +export const command = 'verify'; + +export const desc = 'Verify checkpoint'; + +export const builder = { + cid: { + type: 'string', + alias: 'c', + demandOption: true, + describe: 'Checkpoint CID to be verified' + } +}; + +export const handler = async (argv: any): Promise => { + const verifyCheckpointCmd = new VerifyCheckpointCmd(); + await verifyCheckpointCmd.init(argv, Database); + + const { graphWatcher, graphDb } = await getGraphDbAndWatcher( + verifyCheckpointCmd.config.server, + verifyCheckpointCmd.clients.ethClient, + verifyCheckpointCmd.ethProvider, + verifyCheckpointCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await verifyCheckpointCmd.initIndexer(Indexer, graphWatcher); + + await verifyCheckpointCmd.exec(graphDb); +}; diff --git a/src/cli/checkpoint.ts b/src/cli/checkpoint.ts new file mode 100644 index 0000000..d05ad8a --- /dev/null +++ b/src/cli/checkpoint.ts @@ -0,0 +1,39 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import yargs from 'yargs'; +import 'reflect-metadata'; +import debug from 'debug'; + +import { DEFAULT_CONFIG_PATH } from '@cerc-io/util'; + +import { hideBin } from 'yargs/helpers'; + +const log = debug('vulcanize:checkpoint'); + +const main = async () => { + return yargs(hideBin(process.argv)) + .parserConfiguration({ + 'parse-numbers': false + }).options({ + configFile: { + alias: 'f', + type: 'string', + require: true, + demandOption: true, + describe: 'configuration file path (toml)', + default: DEFAULT_CONFIG_PATH + } + }) + .commandDir('checkpoint-cmds', { extensions: ['ts', 'js'], exclude: /([a-zA-Z0-9\s_\\.\-:])+(.d.ts)$/ }) + .demandCommand(1) + .help() + .argv; +}; + +main().then(() => { + process.exit(); +}).catch(err => { + log(err); +}); diff --git a/src/cli/export-state.ts b/src/cli/export-state.ts new file mode 100644 index 0000000..bcd1c8a --- /dev/null +++ b/src/cli/export-state.ts @@ -0,0 +1,38 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import 'reflect-metadata'; +import debug from 'debug'; + +import { ExportStateCmd } from '@cerc-io/cli'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from '../database'; +import { Indexer } from '../indexer'; + +const log = debug('vulcanize:export-state'); + +const main = async (): Promise => { + const exportStateCmd = new ExportStateCmd(); + await exportStateCmd.init(Database); + + const { graphWatcher } = await getGraphDbAndWatcher( + exportStateCmd.config.server, + exportStateCmd.clients.ethClient, + exportStateCmd.ethProvider, + exportStateCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await exportStateCmd.initIndexer(Indexer, graphWatcher); + + await exportStateCmd.exec(); +}; + +main().catch(err => { + log(err); +}).finally(() => { + process.exit(0); +}); diff --git a/src/cli/import-state.ts b/src/cli/import-state.ts new file mode 100644 index 0000000..04ce0e8 --- /dev/null +++ b/src/cli/import-state.ts @@ -0,0 +1,39 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import 'reflect-metadata'; +import debug from 'debug'; + +import { ImportStateCmd } from '@cerc-io/cli'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from '../database'; +import { Indexer } from '../indexer'; +import { State } from '../entity/State'; + +const log = debug('vulcanize:import-state'); + +export const main = async (): Promise => { + const importStateCmd = new ImportStateCmd(); + await importStateCmd.init(Database); + + const { graphWatcher, graphDb } = await getGraphDbAndWatcher( + importStateCmd.config.server, + importStateCmd.clients.ethClient, + importStateCmd.ethProvider, + importStateCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await importStateCmd.initIndexer(Indexer, graphWatcher); + + await importStateCmd.exec(State, graphDb); +}; + +main().catch(err => { + log(err); +}).finally(() => { + process.exit(0); +}); diff --git a/src/cli/index-block.ts b/src/cli/index-block.ts new file mode 100644 index 0000000..19a302a --- /dev/null +++ b/src/cli/index-block.ts @@ -0,0 +1,38 @@ +// +// Copyright 2022 Vulcanize, Inc. +// + +import 'reflect-metadata'; +import debug from 'debug'; + +import { IndexBlockCmd } from '@cerc-io/cli'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from '../database'; +import { Indexer } from '../indexer'; + +const log = debug('vulcanize:index-block'); + +const main = async (): Promise => { + const indexBlockCmd = new IndexBlockCmd(); + await indexBlockCmd.init(Database); + + const { graphWatcher } = await getGraphDbAndWatcher( + indexBlockCmd.config.server, + indexBlockCmd.clients.ethClient, + indexBlockCmd.ethProvider, + indexBlockCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await indexBlockCmd.initIndexer(Indexer, graphWatcher); + + await indexBlockCmd.exec(); +}; + +main().catch(err => { + log(err); +}).finally(() => { + process.exit(0); +}); diff --git a/src/cli/inspect-cid.ts b/src/cli/inspect-cid.ts new file mode 100644 index 0000000..4f5955e --- /dev/null +++ b/src/cli/inspect-cid.ts @@ -0,0 +1,38 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import 'reflect-metadata'; +import debug from 'debug'; + +import { InspectCIDCmd } from '@cerc-io/cli'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from '../database'; +import { Indexer } from '../indexer'; + +const log = debug('vulcanize:inspect-cid'); + +const main = async (): Promise => { + const inspectCIDCmd = new InspectCIDCmd(); + await inspectCIDCmd.init(Database); + + const { graphWatcher } = await getGraphDbAndWatcher( + inspectCIDCmd.config.server, + inspectCIDCmd.clients.ethClient, + inspectCIDCmd.ethProvider, + inspectCIDCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await inspectCIDCmd.initIndexer(Indexer, graphWatcher); + + await inspectCIDCmd.exec(); +}; + +main().catch(err => { + log(err); +}).finally(() => { + process.exit(0); +}); diff --git a/src/cli/reset-cmds/job-queue.ts b/src/cli/reset-cmds/job-queue.ts new file mode 100644 index 0000000..c33cbfd --- /dev/null +++ b/src/cli/reset-cmds/job-queue.ts @@ -0,0 +1,22 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import debug from 'debug'; + +import { getConfig, resetJobs, Config } from '@cerc-io/util'; + +const log = debug('vulcanize:reset-job-queue'); + +export const command = 'job-queue'; + +export const desc = 'Reset job queue'; + +export const builder = {}; + +export const handler = async (argv: any): Promise => { + const config: Config = await getConfig(argv.configFile); + await resetJobs(config); + + log('Job queue reset successfully'); +}; diff --git a/src/cli/reset-cmds/state.ts b/src/cli/reset-cmds/state.ts new file mode 100644 index 0000000..33211d6 --- /dev/null +++ b/src/cli/reset-cmds/state.ts @@ -0,0 +1,24 @@ +// +// Copyright 2022 Vulcanize, Inc. +// + +import { ResetStateCmd } from '@cerc-io/cli'; + +import { Database } from '../../database'; + +export const command = 'state'; + +export const desc = 'Reset State to a given block number'; + +export const builder = { + blockNumber: { + type: 'number' + } +}; + +export const handler = async (argv: any): Promise => { + const resetStateCmd = new ResetStateCmd(); + await resetStateCmd.init(argv, Database); + + await resetStateCmd.exec(); +}; diff --git a/src/cli/reset-cmds/watcher.ts b/src/cli/reset-cmds/watcher.ts new file mode 100644 index 0000000..827fd28 --- /dev/null +++ b/src/cli/reset-cmds/watcher.ts @@ -0,0 +1,37 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { ResetWatcherCmd } from '@cerc-io/cli'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from '../../database'; +import { Indexer } from '../../indexer'; + +export const command = 'watcher'; + +export const desc = 'Reset watcher to a block number'; + +export const builder = { + blockNumber: { + type: 'number' + } +}; + +export const handler = async (argv: any): Promise => { + const resetWatcherCmd = new ResetWatcherCmd(); + await resetWatcherCmd.init(argv, Database); + + const { graphWatcher } = await getGraphDbAndWatcher( + resetWatcherCmd.config.server, + resetWatcherCmd.clients.ethClient, + resetWatcherCmd.ethProvider, + resetWatcherCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await resetWatcherCmd.initIndexer(Indexer, graphWatcher); + + await resetWatcherCmd.exec(); +}; diff --git a/src/cli/reset.ts b/src/cli/reset.ts new file mode 100644 index 0000000..95648c8 --- /dev/null +++ b/src/cli/reset.ts @@ -0,0 +1,24 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import 'reflect-metadata'; +import debug from 'debug'; + +import { getResetYargs } from '@cerc-io/util'; + +const log = debug('vulcanize:reset'); + +const main = async () => { + return getResetYargs() + .commandDir('reset-cmds', { extensions: ['ts', 'js'], exclude: /([a-zA-Z0-9\s_\\.\-:])+(.d.ts)$/ }) + .demandCommand(1) + .help() + .argv; +}; + +main().then(() => { + process.exit(); +}).catch(err => { + log(err); +}); diff --git a/src/cli/watch-contract.ts b/src/cli/watch-contract.ts new file mode 100644 index 0000000..7d6ce1a --- /dev/null +++ b/src/cli/watch-contract.ts @@ -0,0 +1,38 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import 'reflect-metadata'; +import debug from 'debug'; + +import { WatchContractCmd } from '@cerc-io/cli'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from '../database'; +import { Indexer } from '../indexer'; + +const log = debug('vulcanize:watch-contract'); + +const main = async (): Promise => { + const watchContractCmd = new WatchContractCmd(); + await watchContractCmd.init(Database); + + const { graphWatcher } = await getGraphDbAndWatcher( + watchContractCmd.config.server, + watchContractCmd.clients.ethClient, + watchContractCmd.ethProvider, + watchContractCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await watchContractCmd.initIndexer(Indexer, graphWatcher); + + await watchContractCmd.exec(); +}; + +main().catch(err => { + log(err); +}).finally(() => { + process.exit(0); +}); diff --git a/src/client.ts b/src/client.ts new file mode 100644 index 0000000..8bb2bb0 --- /dev/null +++ b/src/client.ts @@ -0,0 +1,55 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { gql } from '@apollo/client/core'; +import { GraphQLClient, GraphQLConfig } from '@cerc-io/ipld-eth-client'; + +import { queries, mutations, subscriptions } from './gql'; + +export class Client { + _config: GraphQLConfig; + _client: GraphQLClient; + + constructor (config: GraphQLConfig) { + this._config = config; + + this._client = new GraphQLClient(config); + } + + async getEvents (blockHash: string, contractAddress: string, name: string): Promise { + const { events } = await this._client.query( + gql(queries.events), + { blockHash, contractAddress, name } + ); + + return events; + } + + async getEventsInRange (fromBlockNumber: number, toBlockNumber: number): Promise { + const { eventsInRange } = await this._client.query( + gql(queries.eventsInRange), + { fromBlockNumber, toBlockNumber } + ); + + return eventsInRange; + } + + async watchContract (contractAddress: string, startingBlock?: number): Promise { + const { watchContract } = await this._client.mutate( + gql(mutations.watchContract), + { contractAddress, startingBlock } + ); + + return watchContract; + } + + async watchEvents (onNext: (value: any) => void): Promise { + return this._client.subscribe( + gql(subscriptions.onEvent), + ({ data }) => { + onNext(data.onEvent); + } + ); + } +} diff --git a/src/database.ts b/src/database.ts new file mode 100644 index 0000000..9986c68 --- /dev/null +++ b/src/database.ts @@ -0,0 +1,351 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import assert from 'assert'; +import { Connection, ConnectionOptions, DeepPartial, FindConditions, QueryRunner, FindManyOptions, EntityTarget } from 'typeorm'; +import path from 'path'; + +import { + ENTITY_QUERY_TYPE, + Database as BaseDatabase, + DatabaseInterface, + QueryOptions, + StateKind, + Where +} from '@cerc-io/util'; + +import { Contract } from './entity/Contract'; +import { Event } from './entity/Event'; +import { SyncStatus } from './entity/SyncStatus'; +import { StateSyncStatus } from './entity/StateSyncStatus'; +import { BlockProgress } from './entity/BlockProgress'; +import { State } from './entity/State'; +import { Token } from './entity/Token'; +import { PoolFactory } from './entity/PoolFactory'; +import { Pool } from './entity/Pool'; +import { Bucket } from './entity/Bucket'; +import { Lend } from './entity/Lend'; +import { Loan } from './entity/Loan'; +import { Account } from './entity/Account'; +import { LiquidationAuction } from './entity/LiquidationAuction'; +import { ReserveAuction } from './entity/ReserveAuction'; +import { LPTransferorList } from './entity/LPTransferorList'; +import { LPAllowance } from './entity/LPAllowance'; +import { LPAllowanceList } from './entity/LPAllowanceList'; +import { AddCollateral } from './entity/AddCollateral'; +import { AddQuoteToken } from './entity/AddQuoteToken'; +import { AuctionSettle } from './entity/AuctionSettle'; +import { BondWithdrawn } from './entity/BondWithdrawn'; +import { BucketBankruptcy } from './entity/BucketBankruptcy'; +import { BucketTake } from './entity/BucketTake'; +import { BucketTakeLPAwarded } from './entity/BucketTakeLPAwarded'; +import { DrawDebt } from './entity/DrawDebt'; +import { Flashloan } from './entity/Flashloan'; +import { Kick } from './entity/Kick'; +import { LoanStamped } from './entity/LoanStamped'; +import { MoveQuoteToken } from './entity/MoveQuoteToken'; +import { RemoveCollateral } from './entity/RemoveCollateral'; +import { RemoveQuoteToken } from './entity/RemoveQuoteToken'; +import { RepayDebt } from './entity/RepayDebt'; +import { ReserveAuctionKick } from './entity/ReserveAuctionKick'; +import { ReserveAuctionTake } from './entity/ReserveAuctionTake'; +import { ResetInterestRate } from './entity/ResetInterestRate'; +import { Settle } from './entity/Settle'; +import { Take } from './entity/Take'; +import { TransferLP } from './entity/TransferLP'; +import { UpdateInterestRate } from './entity/UpdateInterestRate'; +import { Approval } from './entity/Approval'; +import { ApprovalForAll } from './entity/ApprovalForAll'; +import { MoveLiquidity } from './entity/MoveLiquidity'; +import { Transfer } from './entity/Transfer'; +import { PoolCreated } from './entity/PoolCreated'; +import { AddCollateralNFT } from './entity/AddCollateralNFT'; +import { AuctionNFTSettle } from './entity/AuctionNFTSettle'; +import { DrawDebtNFT } from './entity/DrawDebtNFT'; +import { MergeOrRemoveCollateralNFT } from './entity/MergeOrRemoveCollateralNFT'; +import { Position } from './entity/Position'; +import { PositionLend } from './entity/PositionLend'; +import { Burn } from './entity/Burn'; +import { MemorializePosition } from './entity/MemorializePosition'; +import { Mint } from './entity/Mint'; +import { RedeemPosition } from './entity/RedeemPosition'; +import { GrantFund } from './entity/GrantFund'; +import { DistributionPeriod } from './entity/DistributionPeriod'; +import { Proposal } from './entity/Proposal'; +import { ProposalParams } from './entity/ProposalParams'; +import { DistributionPeriodVote } from './entity/DistributionPeriodVote'; +import { ScreeningVote } from './entity/ScreeningVote'; +import { FundingVote } from './entity/FundingVote'; +import { FundedSlate } from './entity/FundedSlate'; +import { DelegateRewardClaimed } from './entity/DelegateRewardClaimed'; +import { FundTreasury } from './entity/FundTreasury'; +import { FundedSlateUpdated } from './entity/FundedSlateUpdated'; +import { ProposalCreated } from './entity/ProposalCreated'; +import { ProposalExecuted } from './entity/ProposalExecuted'; +import { DistributionPeriodStarted } from './entity/DistributionPeriodStarted'; +import { VoteCast } from './entity/VoteCast'; +import { DelegateChanged } from './entity/DelegateChanged'; +import { DelegateVotesChanged } from './entity/DelegateVotesChanged'; +import { BurnWrap } from './entity/BurnWrap'; + +export const SUBGRAPH_ENTITIES = new Set([Token, PoolFactory, Pool, Bucket, Lend, Loan, Account, LiquidationAuction, ReserveAuction, LPTransferorList, LPAllowance, LPAllowanceList, AddCollateral, AddQuoteToken, AuctionSettle, BondWithdrawn, BucketBankruptcy, BucketTake, BucketTakeLPAwarded, DrawDebt, Flashloan, Kick, LoanStamped, MoveQuoteToken, RemoveCollateral, RemoveQuoteToken, RepayDebt, ReserveAuctionKick, ReserveAuctionTake, ResetInterestRate, Settle, Take, TransferLP, UpdateInterestRate, Approval, ApprovalForAll, MoveLiquidity, Transfer, PoolCreated, AddCollateralNFT, AuctionNFTSettle, DrawDebtNFT, MergeOrRemoveCollateralNFT, Position, PositionLend, Burn, MemorializePosition, Mint, RedeemPosition, GrantFund, DistributionPeriod, Proposal, ProposalParams, DistributionPeriodVote, ScreeningVote, FundingVote, FundedSlate, DelegateRewardClaimed, FundTreasury, FundedSlateUpdated, ProposalCreated, ProposalExecuted, DistributionPeriodStarted, VoteCast, DelegateChanged, DelegateVotesChanged, BurnWrap]); +export const ENTITIES = [...SUBGRAPH_ENTITIES]; +// Map: Entity to suitable query type. +export const ENTITY_QUERY_TYPE_MAP = new Map any, ENTITY_QUERY_TYPE>([]); + +export const ENTITY_TO_LATEST_ENTITY_MAP: Map = new Map(); + +export class Database implements DatabaseInterface { + _config: ConnectionOptions; + _conn!: Connection; + _baseDatabase: BaseDatabase; + _propColMaps: { [key: string]: Map; }; + + constructor (config: ConnectionOptions) { + assert(config); + + this._config = { + ...config, + subscribers: [path.join(__dirname, 'entity/Subscriber.*')], + entities: [path.join(__dirname, 'entity/*')] + }; + + this._baseDatabase = new BaseDatabase(this._config); + this._propColMaps = {}; + } + + get baseDatabase (): BaseDatabase { + return this._baseDatabase; + } + + async init (): Promise { + this._conn = await this._baseDatabase.init(); + } + + async close (): Promise { + return this._baseDatabase.close(); + } + + getNewState (): State { + return new State(); + } + + async getStates (where: FindConditions): Promise { + const repo = this._conn.getRepository(State); + + return this._baseDatabase.getStates(repo, where); + } + + async getLatestState (contractAddress: string, kind: StateKind | null, blockNumber?: number): Promise { + const repo = this._conn.getRepository(State); + + return this._baseDatabase.getLatestState(repo, contractAddress, kind, blockNumber); + } + + async getPrevState (blockHash: string, contractAddress: string, kind?: string): Promise { + const repo = this._conn.getRepository(State); + + return this._baseDatabase.getPrevState(repo, blockHash, contractAddress, kind); + } + + // Fetch all diff States after the specified block number. + async getDiffStatesInRange (contractAddress: string, startblock: number, endBlock: number): Promise { + const repo = this._conn.getRepository(State); + + return this._baseDatabase.getDiffStatesInRange(repo, contractAddress, startblock, endBlock); + } + + async saveOrUpdateState (dbTx: QueryRunner, state: State): Promise { + const repo = dbTx.manager.getRepository(State); + + return this._baseDatabase.saveOrUpdateState(repo, state); + } + + async removeStates (dbTx: QueryRunner, blockNumber: number, kind: string): Promise { + const repo = dbTx.manager.getRepository(State); + + await this._baseDatabase.removeStates(repo, blockNumber, kind); + } + + async removeStatesAfterBlock (dbTx: QueryRunner, blockNumber: number): Promise { + const repo = dbTx.manager.getRepository(State); + + await this._baseDatabase.removeStatesAfterBlock(repo, blockNumber); + } + + async getStateSyncStatus (): Promise { + const repo = this._conn.getRepository(StateSyncStatus); + + return this._baseDatabase.getStateSyncStatus(repo); + } + + async updateStateSyncStatusIndexedBlock (queryRunner: QueryRunner, blockNumber: number, force?: boolean): Promise { + const repo = queryRunner.manager.getRepository(StateSyncStatus); + + return this._baseDatabase.updateStateSyncStatusIndexedBlock(repo, blockNumber, force); + } + + async updateStateSyncStatusCheckpointBlock (queryRunner: QueryRunner, blockNumber: number, force?: boolean): Promise { + const repo = queryRunner.manager.getRepository(StateSyncStatus); + + return this._baseDatabase.updateStateSyncStatusCheckpointBlock(repo, blockNumber, force); + } + + async getContracts (): Promise { + const repo = this._conn.getRepository(Contract); + + return this._baseDatabase.getContracts(repo); + } + + async createTransactionRunner (): Promise { + return this._baseDatabase.createTransactionRunner(); + } + + async getProcessedBlockCountForRange (fromBlockNumber: number, toBlockNumber: number): Promise<{ expected: number, actual: number }> { + const repo = this._conn.getRepository(BlockProgress); + + return this._baseDatabase.getProcessedBlockCountForRange(repo, fromBlockNumber, toBlockNumber); + } + + async getEventsInRange (fromBlockNumber: number, toBlockNumber: number): Promise> { + const repo = this._conn.getRepository(Event); + + return this._baseDatabase.getEventsInRange(repo, fromBlockNumber, toBlockNumber); + } + + async saveEventEntity (queryRunner: QueryRunner, entity: Event): Promise { + const repo = queryRunner.manager.getRepository(Event); + return this._baseDatabase.saveEventEntity(repo, entity); + } + + async getBlockEvents (blockHash: string, where: Where, queryOptions: QueryOptions): Promise { + const repo = this._conn.getRepository(Event); + + return this._baseDatabase.getBlockEvents(repo, blockHash, where, queryOptions); + } + + async saveBlockWithEvents (queryRunner: QueryRunner, block: DeepPartial, events: DeepPartial[]): Promise { + const blockRepo = queryRunner.manager.getRepository(BlockProgress); + const eventRepo = queryRunner.manager.getRepository(Event); + + return this._baseDatabase.saveBlockWithEvents(blockRepo, eventRepo, block, events); + } + + async saveEvents (queryRunner: QueryRunner, events: Event[]): Promise { + const eventRepo = queryRunner.manager.getRepository(Event); + + return this._baseDatabase.saveEvents(eventRepo, events); + } + + async saveBlockProgress (queryRunner: QueryRunner, block: DeepPartial): Promise { + const repo = queryRunner.manager.getRepository(BlockProgress); + + return this._baseDatabase.saveBlockProgress(repo, block); + } + + async saveContract (queryRunner: QueryRunner, address: string, kind: string, checkpoint: boolean, startingBlock: number, context?: any): Promise { + const repo = queryRunner.manager.getRepository(Contract); + + return this._baseDatabase.saveContract(repo, address, kind, checkpoint, startingBlock, context); + } + + async updateSyncStatusIndexedBlock (queryRunner: QueryRunner, blockHash: string, blockNumber: number, force = false): Promise { + const repo = queryRunner.manager.getRepository(SyncStatus); + + return this._baseDatabase.updateSyncStatusIndexedBlock(repo, blockHash, blockNumber, force); + } + + async updateSyncStatusCanonicalBlock (queryRunner: QueryRunner, blockHash: string, blockNumber: number, force = false): Promise { + const repo = queryRunner.manager.getRepository(SyncStatus); + + return this._baseDatabase.updateSyncStatusCanonicalBlock(repo, blockHash, blockNumber, force); + } + + async updateSyncStatusChainHead (queryRunner: QueryRunner, blockHash: string, blockNumber: number, force = false): Promise { + const repo = queryRunner.manager.getRepository(SyncStatus); + + return this._baseDatabase.updateSyncStatusChainHead(repo, blockHash, blockNumber, force); + } + + async updateSyncStatusProcessedBlock (queryRunner: QueryRunner, blockHash: string, blockNumber: number, force = false): Promise { + const repo = queryRunner.manager.getRepository(SyncStatus); + + return this._baseDatabase.updateSyncStatusProcessedBlock(repo, blockHash, blockNumber, force); + } + + async updateSyncStatusIndexingError (queryRunner: QueryRunner, hasIndexingError: boolean): Promise { + const repo = queryRunner.manager.getRepository(SyncStatus); + + return this._baseDatabase.updateSyncStatusIndexingError(repo, hasIndexingError); + } + + async updateSyncStatus (queryRunner: QueryRunner, syncStatus: DeepPartial): Promise { + const repo = queryRunner.manager.getRepository(SyncStatus); + + return this._baseDatabase.updateSyncStatus(repo, syncStatus); + } + + async getSyncStatus (queryRunner: QueryRunner): Promise { + const repo = queryRunner.manager.getRepository(SyncStatus); + + return this._baseDatabase.getSyncStatus(repo); + } + + async getEvent (id: string): Promise { + const repo = this._conn.getRepository(Event); + + return this._baseDatabase.getEvent(repo, id); + } + + async getBlocksAtHeight (height: number, isPruned: boolean): Promise { + const repo = this._conn.getRepository(BlockProgress); + + return this._baseDatabase.getBlocksAtHeight(repo, height, isPruned); + } + + async markBlocksAsPruned (queryRunner: QueryRunner, blocks: BlockProgress[]): Promise { + const repo = queryRunner.manager.getRepository(BlockProgress); + + return this._baseDatabase.markBlocksAsPruned(repo, blocks); + } + + async getBlockProgress (blockHash: string): Promise { + const repo = this._conn.getRepository(BlockProgress); + return this._baseDatabase.getBlockProgress(repo, blockHash); + } + + async getBlockProgressEntities (where: FindConditions, options: FindManyOptions): Promise { + const repo = this._conn.getRepository(BlockProgress); + + return this._baseDatabase.getBlockProgressEntities(repo, where, options); + } + + async getEntitiesForBlock (blockHash: string, tableName: string): Promise { + return this._baseDatabase.getEntitiesForBlock(blockHash, tableName); + } + + async updateBlockProgress (queryRunner: QueryRunner, block: BlockProgress, lastProcessedEventIndex: number): Promise { + const repo = queryRunner.manager.getRepository(BlockProgress); + + return this._baseDatabase.updateBlockProgress(repo, block, lastProcessedEventIndex); + } + + async removeEntities (queryRunner: QueryRunner, entity: new () => Entity, findConditions?: FindManyOptions | FindConditions): Promise { + return this._baseDatabase.removeEntities(queryRunner, entity, findConditions); + } + + async deleteEntitiesByConditions (queryRunner: QueryRunner, entity: EntityTarget, findConditions: FindConditions): Promise { + await this._baseDatabase.deleteEntitiesByConditions(queryRunner, entity, findConditions); + } + + async getAncestorAtHeight (blockHash: string, height: number): Promise { + return this._baseDatabase.getAncestorAtHeight(blockHash, height); + } + + _getPropertyColumnMapForEntity (entityName: string): Map { + return this._conn.getMetadata(entityName).ownColumns.reduce((acc, curr) => { + return acc.set(curr.propertyName, curr.databaseName); + }, new Map()); + } +} diff --git a/src/entity/Account.ts b/src/entity/Account.ts new file mode 100644 index 0000000..740520c --- /dev/null +++ b/src/entity/Account.ts @@ -0,0 +1,74 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Account { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar', { array: true }) + pools!: string[]; + + @Column('varchar', { array: true }) + kicks!: string[]; + + @Column('varchar', { array: true }) + lends!: string[]; + + @Column('varchar', { array: true }) + loans!: string[]; + + @Column('varchar', { array: true }) + settles!: string[]; + + @Column('varchar', { array: true }) + takes!: string[]; + + @Column('varchar', { array: true }) + reserveAuctions!: string[]; + + @Column('varchar', { array: true }) + proposalsCreated!: string[]; + + @Column('varchar', { array: true }) + proposalsExecuted!: string[]; + + @Column('varchar', { nullable: true }) + delegatedTo!: string | null; + + @Column('varchar', { array: true }) + delegatedFrom!: string[]; + + @Column('numeric', { transformer: decimalTransformer }) + rewardsClaimed!: Decimal; + + @Column('varchar', { array: true }) + distributionPeriodVotes!: string[]; + + @Column('numeric', { transformer: decimalTransformer }) + tokensDelegated!: Decimal; + + @Column('varchar', { array: true }) + positions!: string[]; + + @Column('numeric', { transformer: bigintTransformer }) + txCount!: bigint; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/AddCollateral.ts b/src/entity/AddCollateral.ts new file mode 100644 index 0000000..3230384 --- /dev/null +++ b/src/entity/AddCollateral.ts @@ -0,0 +1,53 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class AddCollateral { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + bucket!: string; + + @Column('varchar') + actor!: string; + + @Column('integer') + index!: number; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpAwarded!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/AddCollateralNFT.ts b/src/entity/AddCollateralNFT.ts new file mode 100644 index 0000000..4379bb0 --- /dev/null +++ b/src/entity/AddCollateralNFT.ts @@ -0,0 +1,53 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer, bigintArrayTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class AddCollateralNFT { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + bucket!: string; + + @Column('varchar') + actor!: string; + + @Column('numeric', { transformer: bigintTransformer }) + index!: bigint; + + @Column('numeric', { array: true, transformer: bigintArrayTransformer }) + tokenIds!: bigint[]; + + @Column('numeric', { transformer: decimalTransformer }) + lpAwarded!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/AddQuoteToken.ts b/src/entity/AddQuoteToken.ts new file mode 100644 index 0000000..1e9baf0 --- /dev/null +++ b/src/entity/AddQuoteToken.ts @@ -0,0 +1,56 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class AddQuoteToken { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + bucket!: string; + + @Column('varchar') + lender!: string; + + @Column('integer') + index!: number; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpAwarded!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lup!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Approval.ts b/src/entity/Approval.ts new file mode 100644 index 0000000..4f7b540 --- /dev/null +++ b/src/entity/Approval.ts @@ -0,0 +1,43 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class Approval { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + owner!: string; + + @Column('varchar') + approved!: string; + + @Column('numeric', { transformer: bigintTransformer }) + tokenId!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/ApprovalForAll.ts b/src/entity/ApprovalForAll.ts new file mode 100644 index 0000000..1001213 --- /dev/null +++ b/src/entity/ApprovalForAll.ts @@ -0,0 +1,43 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class ApprovalForAll { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + owner!: string; + + @Column('varchar') + operator!: string; + + @Column('boolean') + approved!: boolean; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/AuctionNFTSettle.ts b/src/entity/AuctionNFTSettle.ts new file mode 100644 index 0000000..c2d4cb3 --- /dev/null +++ b/src/entity/AuctionNFTSettle.ts @@ -0,0 +1,53 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class AuctionNFTSettle { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + loan!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + collateral!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lp!: Decimal; + + @Column('integer') + index!: number; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/AuctionSettle.ts b/src/entity/AuctionSettle.ts new file mode 100644 index 0000000..0b3c3d7 --- /dev/null +++ b/src/entity/AuctionSettle.ts @@ -0,0 +1,47 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class AuctionSettle { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + loan!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + collateral!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/BlockProgress.ts b/src/entity/BlockProgress.ts new file mode 100644 index 0000000..ded4a86 --- /dev/null +++ b/src/entity/BlockProgress.ts @@ -0,0 +1,48 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryGeneratedColumn, Column, Index, CreateDateColumn } from 'typeorm'; +import { BlockProgressInterface } from '@cerc-io/util'; + +@Entity() +@Index(['blockHash'], { unique: true }) +@Index(['blockNumber']) +@Index(['parentHash']) +export class BlockProgress implements BlockProgressInterface { + @PrimaryGeneratedColumn() + id!: number; + + @Column('varchar', { nullable: true }) + cid!: string | null; + + @Column('varchar', { length: 66 }) + blockHash!: string; + + @Column('varchar', { length: 66 }) + parentHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('integer') + blockTimestamp!: number; + + @Column('integer') + numEvents!: number; + + @Column('integer') + numProcessedEvents!: number; + + @Column('integer') + lastProcessedEventIndex!: number; + + @Column('boolean') + isComplete!: boolean; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @CreateDateColumn() + createdAt!: Date; +} diff --git a/src/entity/BondWithdrawn.ts b/src/entity/BondWithdrawn.ts new file mode 100644 index 0000000..0cb79cb --- /dev/null +++ b/src/entity/BondWithdrawn.ts @@ -0,0 +1,44 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class BondWithdrawn { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + kicker!: string; + + @Column('varchar') + reciever!: string; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Bucket.ts b/src/entity/Bucket.ts new file mode 100644 index 0000000..40a0cab --- /dev/null +++ b/src/entity/Bucket.ts @@ -0,0 +1,56 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Bucket { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('integer') + bucketIndex!: number; + + @Column('numeric', { transformer: decimalTransformer }) + bucketPrice!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + exchangeRate!: Decimal; + + @Column('varchar') + poolAddress!: string; + + @Column('varchar') + pool!: string; + + @Column('numeric', { transformer: decimalTransformer }) + collateral!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + deposit!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpb!: Decimal; + + @Column('varchar', { array: true }) + lends!: string[]; + + @Column('varchar', { array: true }) + positionLends!: string[]; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/BucketBankruptcy.ts b/src/entity/BucketBankruptcy.ts new file mode 100644 index 0000000..bf9b758 --- /dev/null +++ b/src/entity/BucketBankruptcy.ts @@ -0,0 +1,47 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class BucketBankruptcy { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + bucket!: string; + + @Column('integer') + index!: number; + + @Column('varchar') + pool!: string; + + @Column('numeric', { transformer: decimalTransformer }) + lpForfeited!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/BucketTake.ts b/src/entity/BucketTake.ts new file mode 100644 index 0000000..5581b9a --- /dev/null +++ b/src/entity/BucketTake.ts @@ -0,0 +1,71 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class BucketTake { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + borrower!: string; + + @Column('varchar') + taker!: string; + + @Column('varchar') + liquidationAuction!: string; + + @Column('varchar') + loan!: string; + + @Column('varchar') + pool!: string; + + @Column('integer') + index!: number; + + @Column('numeric', { transformer: decimalTransformer }) + auctionPrice!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + collateral!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + bondChange!: Decimal; + + @Column('boolean') + isReward!: boolean; + + @Column('varchar') + lpAwarded!: string; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/BucketTakeLPAwarded.ts b/src/entity/BucketTakeLPAwarded.ts new file mode 100644 index 0000000..05c7e19 --- /dev/null +++ b/src/entity/BucketTakeLPAwarded.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class BucketTakeLPAwarded { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + taker!: string; + + @Column('varchar') + pool!: string; + + @Column('varchar') + kicker!: string; + + @Column('numeric', { transformer: decimalTransformer }) + lpAwardedTaker!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpAwardedKicker!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Burn.ts b/src/entity/Burn.ts new file mode 100644 index 0000000..fcdf189 --- /dev/null +++ b/src/entity/Burn.ts @@ -0,0 +1,40 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class Burn { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + lender!: string; + + @Column('numeric', { transformer: bigintTransformer }) + tokenId!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/BurnWrap.ts b/src/entity/BurnWrap.ts new file mode 100644 index 0000000..9c3da61 --- /dev/null +++ b/src/entity/BurnWrap.ts @@ -0,0 +1,44 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class BurnWrap { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + wrapper!: string; + + @Column('varchar', { nullable: true }) + account!: string | null; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Contract.ts b/src/entity/Contract.ts new file mode 100644 index 0000000..e4defa8 --- /dev/null +++ b/src/entity/Contract.ts @@ -0,0 +1,27 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryGeneratedColumn, Column, Index } from 'typeorm'; + +@Entity() +@Index(['address'], { unique: true }) +export class Contract { + @PrimaryGeneratedColumn() + id!: number; + + @Column('varchar', { length: 42 }) + address!: string; + + @Column('varchar') + kind!: string; + + @Column('boolean') + checkpoint!: boolean; + + @Column('integer') + startingBlock!: number; + + @Column('jsonb', { nullable: true }) + context!: Record; +} diff --git a/src/entity/DelegateChanged.ts b/src/entity/DelegateChanged.ts new file mode 100644 index 0000000..83170cd --- /dev/null +++ b/src/entity/DelegateChanged.ts @@ -0,0 +1,43 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class DelegateChanged { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + delegator!: string; + + @Column('varchar') + fromDelegate!: string; + + @Column('varchar') + toDelegate!: string; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/DelegateRewardClaimed.ts b/src/entity/DelegateRewardClaimed.ts new file mode 100644 index 0000000..c5f011f --- /dev/null +++ b/src/entity/DelegateRewardClaimed.ts @@ -0,0 +1,43 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class DelegateRewardClaimed { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + delegateeAddress_!: string; + + @Column('varchar') + distribution!: string; + + @Column('numeric', { transformer: bigintTransformer }) + rewardClaimed_!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/DelegateVotesChanged.ts b/src/entity/DelegateVotesChanged.ts new file mode 100644 index 0000000..1bf8890 --- /dev/null +++ b/src/entity/DelegateVotesChanged.ts @@ -0,0 +1,44 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class DelegateVotesChanged { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + delegate!: string; + + @Column('numeric', { transformer: decimalTransformer }) + previousBalance!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + newBalance!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/DistributionPeriod.ts b/src/entity/DistributionPeriod.ts new file mode 100644 index 0000000..db2923e --- /dev/null +++ b/src/entity/DistributionPeriod.ts @@ -0,0 +1,62 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class DistributionPeriod { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('numeric', { transformer: bigintTransformer }) + distributionId!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + startBlock!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + endBlock!: bigint; + + @Column('varchar', { nullable: true }) + topSlate!: string | null; + + @Column('varchar', { array: true }) + slatesSubmitted!: string[]; + + @Column('numeric', { transformer: decimalTransformer }) + fundsAvailable!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + delegationRewardsClaimed!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + fundingVotePowerUsed!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + screeningVotesCast!: Decimal; + + @Column('varchar', { array: true }) + votes!: string[]; + + @Column('varchar', { array: true }) + proposals!: string[]; + + @Column('numeric', { transformer: decimalTransformer }) + totalTokensDistributed!: Decimal; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/DistributionPeriodStarted.ts b/src/entity/DistributionPeriodStarted.ts new file mode 100644 index 0000000..a0922ab --- /dev/null +++ b/src/entity/DistributionPeriodStarted.ts @@ -0,0 +1,43 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class DistributionPeriodStarted { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + distribution!: string; + + @Column('numeric', { transformer: bigintTransformer }) + startBlock!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + endBlock!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/DistributionPeriodVote.ts b/src/entity/DistributionPeriodVote.ts new file mode 100644 index 0000000..ec97c4c --- /dev/null +++ b/src/entity/DistributionPeriodVote.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class DistributionPeriodVote { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + voter!: string; + + @Column('varchar') + distribution!: string; + + @Column('numeric', { transformer: decimalTransformer }) + initialFundingStageVotingPowerRecordedPostVote!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + remainingFundingStageVotingPowerRecordedPostVote!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + initialScreeningStageVotingPowerRecordedPostVote!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + remainingScreeningStageVotingPowerRecordedPostVote!: Decimal; + + @Column('varchar', { array: true }) + screeningVotes!: string[]; + + @Column('varchar', { array: true }) + fundingVotes!: string[]; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/DrawDebt.ts b/src/entity/DrawDebt.ts new file mode 100644 index 0000000..9ccee47 --- /dev/null +++ b/src/entity/DrawDebt.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class DrawDebt { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + amountBorrowed!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + collateralPledged!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lup!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/DrawDebtNFT.ts b/src/entity/DrawDebtNFT.ts new file mode 100644 index 0000000..b55e0ea --- /dev/null +++ b/src/entity/DrawDebtNFT.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintArrayTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class DrawDebtNFT { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + amountBorrowed!: Decimal; + + @Column('numeric', { array: true, transformer: bigintArrayTransformer }) + tokenIdsPledged!: bigint[]; + + @Column('numeric', { transformer: decimalTransformer }) + lup!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Event.ts b/src/entity/Event.ts new file mode 100644 index 0000000..91f1e6d --- /dev/null +++ b/src/entity/Event.ts @@ -0,0 +1,38 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryGeneratedColumn, Column, Index, ManyToOne } from 'typeorm'; +import { BlockProgress } from './BlockProgress'; + +@Entity() +@Index(['block', 'contract']) +@Index(['block', 'contract', 'eventName']) +export class Event { + @PrimaryGeneratedColumn() + id!: number; + + @ManyToOne(() => BlockProgress, { onDelete: 'CASCADE' }) + block!: BlockProgress; + + @Column('varchar', { length: 66 }) + txHash!: string; + + @Column('integer') + index!: number; + + @Column('varchar', { length: 42 }) + contract!: string; + + @Column('varchar', { length: 256 }) + eventName!: string; + + @Column('text') + eventInfo!: string; + + @Column('text') + extraInfo!: string; + + @Column('text') + proof!: string; +} diff --git a/src/entity/Flashloan.ts b/src/entity/Flashloan.ts new file mode 100644 index 0000000..fa513bc --- /dev/null +++ b/src/entity/Flashloan.ts @@ -0,0 +1,35 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Flashloan { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/FrothyEntity.ts b/src/entity/FrothyEntity.ts new file mode 100644 index 0000000..9898ce8 --- /dev/null +++ b/src/entity/FrothyEntity.ts @@ -0,0 +1,21 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; + +@Entity() +@Index(['blockNumber']) +export class FrothyEntity { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar') + name!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; +} diff --git a/src/entity/FundTreasury.ts b/src/entity/FundTreasury.ts new file mode 100644 index 0000000..8335d6c --- /dev/null +++ b/src/entity/FundTreasury.ts @@ -0,0 +1,41 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class FundTreasury { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('numeric', { transformer: bigintTransformer }) + amount!: bigint; + + @Column('numeric', { transformer: decimalTransformer }) + treasuryBalance!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/FundedSlate.ts b/src/entity/FundedSlate.ts new file mode 100644 index 0000000..5706702 --- /dev/null +++ b/src/entity/FundedSlate.ts @@ -0,0 +1,41 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class FundedSlate { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + distribution!: string; + + @Column('varchar', { array: true }) + proposals!: string[]; + + @Column('numeric', { transformer: decimalTransformer }) + totalTokensRequested!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + totalFundingVotesReceived!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + updateBlock!: bigint; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/FundedSlateUpdated.ts b/src/entity/FundedSlateUpdated.ts new file mode 100644 index 0000000..88be392 --- /dev/null +++ b/src/entity/FundedSlateUpdated.ts @@ -0,0 +1,40 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class FundedSlateUpdated { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('numeric', { transformer: bigintTransformer }) + distributionId_!: bigint; + + @Column('varchar') + fundedSlateHash_!: string; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/FundingVote.ts b/src/entity/FundingVote.ts new file mode 100644 index 0000000..5c506cb --- /dev/null +++ b/src/entity/FundingVote.ts @@ -0,0 +1,44 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class FundingVote { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + distribution!: string; + + @Column('varchar') + voter!: string; + + @Column('varchar') + proposal!: string; + + @Column('numeric', { transformer: decimalTransformer }) + totalVotesCast!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + votingPowerUsed!: Decimal; + + @Column('varchar', { array: true }) + votesCast!: string[]; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/GrantFund.ts b/src/entity/GrantFund.ts new file mode 100644 index 0000000..80b913f --- /dev/null +++ b/src/entity/GrantFund.ts @@ -0,0 +1,35 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class GrantFund { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('numeric', { transformer: decimalTransformer }) + treasury!: Decimal; + + @Column('varchar', { array: true }) + distributionPeriods!: string[]; + + @Column('numeric', { transformer: decimalTransformer }) + totalDelegationRewardsClaimed!: Decimal; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Kick.ts b/src/entity/Kick.ts new file mode 100644 index 0000000..2f77df1 --- /dev/null +++ b/src/entity/Kick.ts @@ -0,0 +1,68 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Kick { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + kicker!: string; + + @Column('varchar') + pool!: string; + + @Column('varchar') + loan!: string; + + @Column('numeric', { transformer: decimalTransformer }) + locked!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + claimable!: Decimal; + + @Column('varchar') + liquidationAuction!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + debt!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + collateral!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + bond!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + startingPrice!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/LPAllowance.ts b/src/entity/LPAllowance.ts new file mode 100644 index 0000000..f0cd0fd --- /dev/null +++ b/src/entity/LPAllowance.ts @@ -0,0 +1,32 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class LPAllowance { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('integer') + index!: number; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/LPAllowanceList.ts b/src/entity/LPAllowanceList.ts new file mode 100644 index 0000000..bbae9fa --- /dev/null +++ b/src/entity/LPAllowanceList.ts @@ -0,0 +1,36 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; + +@Entity() +@Index(['blockNumber']) +export class LPAllowanceList { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + lender!: string; + + @Column('varchar') + spender!: string; + + @Column('varchar', { array: true }) + allowances!: string[]; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/LPTransferorList.ts b/src/entity/LPTransferorList.ts new file mode 100644 index 0000000..01acb9f --- /dev/null +++ b/src/entity/LPTransferorList.ts @@ -0,0 +1,33 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; + +@Entity() +@Index(['blockNumber']) +export class LPTransferorList { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + lender!: string; + + @Column('varchar', { array: true }) + transferors!: string[]; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Lend.ts b/src/entity/Lend.ts new file mode 100644 index 0000000..056548e --- /dev/null +++ b/src/entity/Lend.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Lend { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + bucket!: string; + + @Column('integer') + bucketIndex!: number; + + @Column('varchar') + poolAddress!: string; + + @Column('varchar') + lender!: string; + + @Column('varchar') + pool!: string; + + @Column('numeric', { transformer: decimalTransformer }) + lpb!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpbValueInQuote!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + depositTime!: bigint; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/LiquidationAuction.ts b/src/entity/LiquidationAuction.ts new file mode 100644 index 0000000..3b6a218 --- /dev/null +++ b/src/entity/LiquidationAuction.ts @@ -0,0 +1,92 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class LiquidationAuction { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + lastTakePrice!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + collateral!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + collateralRemaining!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + debt!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + debtRemaining!: Decimal; + + @Column('varchar') + loan!: string; + + @Column('varchar') + kicker!: string; + + @Column('varchar') + kick!: string; + + @Column('numeric', { transformer: bigintTransformer }) + kickTime!: bigint; + + @Column('varchar', { array: true }) + takes!: string[]; + + @Column('varchar', { array: true }) + bucketTakes!: string[]; + + @Column('varchar', { array: true }) + settles!: string[]; + + @Column('varchar', { nullable: true }) + settle!: string | null; + + @Column('numeric', { nullable: true, transformer: bigintTransformer }) + settleTime!: bigint | null; + + @Column('boolean') + settled!: boolean; + + @Column('numeric', { transformer: decimalTransformer }) + bondSize!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + bondFactor!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + neutralPrice!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + referencePrice!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + thresholdPrice!: Decimal; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Loan.ts b/src/entity/Loan.ts new file mode 100644 index 0000000..580243b --- /dev/null +++ b/src/entity/Loan.ts @@ -0,0 +1,56 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintArrayTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Loan { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + poolAddress!: string; + + @Column('varchar') + borrower!: string; + + @Column('varchar') + pool!: string; + + @Column('boolean') + inLiquidation!: boolean; + + @Column('varchar', { nullable: true }) + liquidationAuction!: string | null; + + @Column('numeric', { transformer: decimalTransformer }) + collateralPledged!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + thresholdPrice!: Decimal; + + @Column('numeric', { array: true, transformer: bigintArrayTransformer }) + tokenIdsPledged!: bigint[]; + + @Column('numeric', { transformer: decimalTransformer }) + t0debt!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + t0Np!: Decimal; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/LoanStamped.ts b/src/entity/LoanStamped.ts new file mode 100644 index 0000000..697a666 --- /dev/null +++ b/src/entity/LoanStamped.ts @@ -0,0 +1,40 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class LoanStamped { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/MemorializePosition.ts b/src/entity/MemorializePosition.ts new file mode 100644 index 0000000..96de65c --- /dev/null +++ b/src/entity/MemorializePosition.ts @@ -0,0 +1,46 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class MemorializePosition { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + lender!: string; + + @Column('numeric', { transformer: bigintTransformer }) + tokenId!: bigint; + + @Column('integer', { array: true }) + indexes!: number[]; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/MergeOrRemoveCollateralNFT.ts b/src/entity/MergeOrRemoveCollateralNFT.ts new file mode 100644 index 0000000..e6f95de --- /dev/null +++ b/src/entity/MergeOrRemoveCollateralNFT.ts @@ -0,0 +1,47 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class MergeOrRemoveCollateralNFT { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + actor!: string; + + @Column('numeric', { transformer: decimalTransformer }) + collateralMerged!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + toIndexLps!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Mint.ts b/src/entity/Mint.ts new file mode 100644 index 0000000..ce20585 --- /dev/null +++ b/src/entity/Mint.ts @@ -0,0 +1,43 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class Mint { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + lender!: string; + + @Column('varchar') + pool!: string; + + @Column('numeric', { transformer: bigintTransformer }) + tokenId!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/MoveLiquidity.ts b/src/entity/MoveLiquidity.ts new file mode 100644 index 0000000..f93c3d3 --- /dev/null +++ b/src/entity/MoveLiquidity.ts @@ -0,0 +1,49 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class MoveLiquidity { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + lender!: string; + + @Column('numeric', { transformer: bigintTransformer }) + tokenId!: bigint; + + @Column('varchar') + pool!: string; + + @Column('integer') + fromIndex!: number; + + @Column('integer') + toIndex!: number; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/MoveQuoteToken.ts b/src/entity/MoveQuoteToken.ts new file mode 100644 index 0000000..a96c313 --- /dev/null +++ b/src/entity/MoveQuoteToken.ts @@ -0,0 +1,59 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class MoveQuoteToken { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + lender!: string; + + @Column('varchar') + from!: string; + + @Column('varchar') + to!: string; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpRedeemedFrom!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpAwardedTo!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lup!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Pool.ts b/src/entity/Pool.ts new file mode 100644 index 0000000..7d50b51 --- /dev/null +++ b/src/entity/Pool.ts @@ -0,0 +1,152 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer, bigintArrayTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Pool { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('numeric', { transformer: bigintTransformer }) + createdAtBlockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + createdAtTimestamp!: bigint; + + @Column('varchar') + collateralToken!: string; + + @Column('varchar') + quoteToken!: string; + + @Column('numeric', { transformer: decimalTransformer }) + poolSize!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + t0debt!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + inflator!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + borrowRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lendRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + borrowFeeRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + depositFeeRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + pledgedCollateral!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + totalInterestEarned!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + txCount!: bigint; + + @Column('varchar') + poolType!: string; + + @Column('numeric', { transformer: bigintTransformer }) + loansCount!: bigint; + + @Column('varchar') + maxBorrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + quoteTokenFlashloaned!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + collateralFlashloaned!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + hpb!: Decimal; + + @Column('integer') + hpbIndex!: number; + + @Column('numeric', { transformer: decimalTransformer }) + htp!: Decimal; + + @Column('integer') + htpIndex!: number; + + @Column('numeric', { transformer: decimalTransformer }) + lup!: Decimal; + + @Column('integer') + lupIndex!: number; + + @Column('numeric', { transformer: decimalTransformer }) + reserves!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + claimableReserves!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + claimableReservesRemaining!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + burnEpoch!: bigint; + + @Column('numeric', { transformer: decimalTransformer }) + totalAjnaBurned!: Decimal; + + @Column('varchar', { array: true }) + reserveAuctions!: string[]; + + @Column('numeric', { transformer: decimalTransformer }) + minDebtAmount!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + actualUtilization!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + targetUtilization!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + totalBondEscrowed!: Decimal; + + @Column('varchar', { array: true }) + liquidationAuctions!: string[]; + + @Column('numeric', { transformer: decimalTransformer }) + quoteTokenBalance!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + collateralBalance!: Decimal; + + @Column('varchar') + subsetHash!: string; + + @Column('numeric', { array: true, transformer: bigintArrayTransformer }) + tokenIdsPledged!: bigint[]; + + @Column('numeric', { array: true, transformer: bigintArrayTransformer }) + bucketTokenIds!: bigint[]; + + @Column('numeric', { array: true, transformer: bigintArrayTransformer }) + tokenIdsAllowed!: bigint[]; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/PoolCreated.ts b/src/entity/PoolCreated.ts new file mode 100644 index 0000000..0c48845 --- /dev/null +++ b/src/entity/PoolCreated.ts @@ -0,0 +1,43 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class PoolCreated { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + poolType!: string; + + @Column('varchar') + factory!: string; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/PoolFactory.ts b/src/entity/PoolFactory.ts new file mode 100644 index 0000000..39b779a --- /dev/null +++ b/src/entity/PoolFactory.ts @@ -0,0 +1,37 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class PoolFactory { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + poolType!: string; + + @Column('numeric', { transformer: bigintTransformer }) + poolCount!: bigint; + + @Column('varchar', { array: true }) + pools!: string[]; + + @Column('numeric', { transformer: bigintTransformer }) + txCount!: bigint; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Position.ts b/src/entity/Position.ts new file mode 100644 index 0000000..b02463a --- /dev/null +++ b/src/entity/Position.ts @@ -0,0 +1,43 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class Position { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('numeric', { nullable: true, transformer: bigintTransformer }) + tokenId!: bigint | null; + + @Column('varchar', { array: true }) + indexes!: string[]; + + @Column('varchar') + owner!: string; + + @Column('varchar') + pool!: string; + + @Column('varchar') + token!: string; + + @Column('varchar') + tokenURI!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/PositionLend.ts b/src/entity/PositionLend.ts new file mode 100644 index 0000000..1e0d8a7 --- /dev/null +++ b/src/entity/PositionLend.ts @@ -0,0 +1,44 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class PositionLend { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + bucket!: string; + + @Column('integer') + bucketIndex!: number; + + @Column('numeric', { transformer: bigintTransformer }) + depositTime!: bigint; + + @Column('numeric', { transformer: decimalTransformer }) + lpb!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpbValueInQuote!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + tokenId!: bigint; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Proposal.ts b/src/entity/Proposal.ts new file mode 100644 index 0000000..3266f5e --- /dev/null +++ b/src/entity/Proposal.ts @@ -0,0 +1,56 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Proposal { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('numeric', { transformer: bigintTransformer }) + proposalId!: bigint; + + @Column('varchar') + description!: string; + + @Column('varchar', { nullable: true }) + distribution!: string | null; + + @Column('boolean') + executed!: boolean; + + @Column('numeric', { transformer: decimalTransformer }) + screeningVotesReceived!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + fundingVotesReceived!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + fundingVotesNegative!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + fundingVotesPositive!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + totalTokensRequested!: Decimal; + + @Column('varchar', { array: true }) + params!: string[]; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/ProposalCreated.ts b/src/entity/ProposalCreated.ts new file mode 100644 index 0000000..cfe4fa7 --- /dev/null +++ b/src/entity/ProposalCreated.ts @@ -0,0 +1,62 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalArrayTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class ProposalCreated { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + proposal!: string; + + @Column('varchar') + proposer!: string; + + @Column('varchar', { array: true }) + targets!: string[]; + + @Column('numeric', { array: true, transformer: decimalArrayTransformer }) + values!: Decimal[]; + + @Column('varchar', { array: true }) + signatures!: string[]; + + @Column('varchar', { array: true }) + calldatas!: string[]; + + @Column('numeric', { transformer: bigintTransformer }) + startBlock!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + endBlock!: bigint; + + @Column('varchar') + description!: string; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/ProposalExecuted.ts b/src/entity/ProposalExecuted.ts new file mode 100644 index 0000000..0700e0b --- /dev/null +++ b/src/entity/ProposalExecuted.ts @@ -0,0 +1,37 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class ProposalExecuted { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('numeric', { transformer: bigintTransformer }) + proposalId!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/ProposalParams.ts b/src/entity/ProposalParams.ts new file mode 100644 index 0000000..9034d4e --- /dev/null +++ b/src/entity/ProposalParams.ts @@ -0,0 +1,41 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class ProposalParams { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + target!: string; + + @Column('numeric', { transformer: bigintTransformer }) + value!: bigint; + + @Column('varchar') + calldata!: string; + + @Column('varchar') + recipient!: string; + + @Column('numeric', { transformer: decimalTransformer }) + tokensRequested!: Decimal; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/RedeemPosition.ts b/src/entity/RedeemPosition.ts new file mode 100644 index 0000000..bab40a4 --- /dev/null +++ b/src/entity/RedeemPosition.ts @@ -0,0 +1,46 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class RedeemPosition { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + lender!: string; + + @Column('numeric', { transformer: bigintTransformer }) + tokenId!: bigint; + + @Column('integer', { array: true }) + indexes!: number[]; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/RemoveCollateral.ts b/src/entity/RemoveCollateral.ts new file mode 100644 index 0000000..dbbd733 --- /dev/null +++ b/src/entity/RemoveCollateral.ts @@ -0,0 +1,53 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class RemoveCollateral { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + bucket!: string; + + @Column('varchar') + claimer!: string; + + @Column('integer') + index!: number; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpRedeemed!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/RemoveQuoteToken.ts b/src/entity/RemoveQuoteToken.ts new file mode 100644 index 0000000..2f849f3 --- /dev/null +++ b/src/entity/RemoveQuoteToken.ts @@ -0,0 +1,56 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class RemoveQuoteToken { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + bucket!: string; + + @Column('varchar') + lender!: string; + + @Column('integer') + index!: number; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lpRedeemed!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lup!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/RepayDebt.ts b/src/entity/RepayDebt.ts new file mode 100644 index 0000000..951e0a4 --- /dev/null +++ b/src/entity/RepayDebt.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class RepayDebt { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + quoteRepaid!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + collateralPulled!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lup!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/ReserveAuction.ts b/src/entity/ReserveAuction.ts new file mode 100644 index 0000000..462f468 --- /dev/null +++ b/src/entity/ReserveAuction.ts @@ -0,0 +1,47 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class ReserveAuction { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('numeric', { transformer: decimalTransformer }) + claimableReservesRemaining!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + lastTakePrice!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + burnEpoch!: bigint; + + @Column('varchar') + kick!: string; + + @Column('varchar', { array: true }) + takes!: string[]; + + @Column('numeric', { transformer: decimalTransformer }) + ajnaBurned!: Decimal; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/ReserveAuctionKick.ts b/src/entity/ReserveAuctionKick.ts new file mode 100644 index 0000000..cd245dd --- /dev/null +++ b/src/entity/ReserveAuctionKick.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class ReserveAuctionKick { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar', { nullable: true }) + kicker!: string | null; + + @Column('varchar') + reserveAuction!: string; + + @Column('varchar') + pool!: string; + + @Column('numeric', { transformer: decimalTransformer }) + claimableReserves!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + startingPrice!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/ReserveAuctionTake.ts b/src/entity/ReserveAuctionTake.ts new file mode 100644 index 0000000..e0f80a5 --- /dev/null +++ b/src/entity/ReserveAuctionTake.ts @@ -0,0 +1,56 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class ReserveAuctionTake { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar', { nullable: true }) + taker!: string | null; + + @Column('varchar') + reserveAuction!: string; + + @Column('varchar') + pool!: string; + + @Column('numeric', { transformer: decimalTransformer }) + claimableReservesRemaining!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + auctionPrice!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + quotePurchased!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + ajnaBurned!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/ResetInterestRate.ts b/src/entity/ResetInterestRate.ts new file mode 100644 index 0000000..ac5dfc2 --- /dev/null +++ b/src/entity/ResetInterestRate.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class ResetInterestRate { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('numeric', { transformer: decimalTransformer }) + oldBorrowRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + newBorrowRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + oldLendRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + newLendRate!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/ScreeningVote.ts b/src/entity/ScreeningVote.ts new file mode 100644 index 0000000..4a1d1c9 --- /dev/null +++ b/src/entity/ScreeningVote.ts @@ -0,0 +1,41 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class ScreeningVote { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + distribution!: string; + + @Column('varchar') + voter!: string; + + @Column('varchar') + proposal!: string; + + @Column('numeric', { transformer: decimalTransformer }) + totalVotesCast!: Decimal; + + @Column('varchar', { array: true }) + votesCast!: string[]; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Settle.ts b/src/entity/Settle.ts new file mode 100644 index 0000000..22ba79a --- /dev/null +++ b/src/entity/Settle.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Settle { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('varchar') + liquidationAuction!: string; + + @Column('varchar') + loan!: string; + + @Column('varchar') + borrower!: string; + + @Column('numeric', { transformer: decimalTransformer }) + settledDebt!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/State.ts b/src/entity/State.ts new file mode 100644 index 0000000..bc05bca --- /dev/null +++ b/src/entity/State.ts @@ -0,0 +1,31 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryGeneratedColumn, Column, Index, ManyToOne } from 'typeorm'; +import { StateKind } from '@cerc-io/util'; +import { BlockProgress } from './BlockProgress'; + +@Entity() +@Index(['cid'], { unique: true }) +@Index(['block', 'contractAddress']) +@Index(['block', 'contractAddress', 'kind'], { unique: true }) +export class State { + @PrimaryGeneratedColumn() + id!: number; + + @ManyToOne(() => BlockProgress, { onDelete: 'CASCADE' }) + block!: BlockProgress; + + @Column('varchar', { length: 42 }) + contractAddress!: string; + + @Column('varchar') + cid!: string; + + @Column({ type: 'enum', enum: StateKind }) + kind!: StateKind; + + @Column('bytea') + data!: Buffer; +} diff --git a/src/entity/StateSyncStatus.ts b/src/entity/StateSyncStatus.ts new file mode 100644 index 0000000..1535eb4 --- /dev/null +++ b/src/entity/StateSyncStatus.ts @@ -0,0 +1,17 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryGeneratedColumn, Column } from 'typeorm'; + +@Entity() +export class StateSyncStatus { + @PrimaryGeneratedColumn() + id!: number; + + @Column('integer') + latestIndexedBlockNumber!: number; + + @Column('integer') + latestCheckpointBlockNumber!: number; +} diff --git a/src/entity/Subscriber.ts b/src/entity/Subscriber.ts new file mode 100644 index 0000000..2cccb84 --- /dev/null +++ b/src/entity/Subscriber.ts @@ -0,0 +1,21 @@ +// +// Copyright 2022 Vulcanize, Inc. +// + +import { EventSubscriber, EntitySubscriberInterface, InsertEvent, UpdateEvent } from 'typeorm'; + +import { afterEntityInsertOrUpdate } from '@cerc-io/util'; + +import { FrothyEntity } from './FrothyEntity'; +import { ENTITY_TO_LATEST_ENTITY_MAP, SUBGRAPH_ENTITIES } from '../database'; + +@EventSubscriber() +export class EntitySubscriber implements EntitySubscriberInterface { + async afterInsert (event: InsertEvent): Promise { + await afterEntityInsertOrUpdate(FrothyEntity, SUBGRAPH_ENTITIES, event, ENTITY_TO_LATEST_ENTITY_MAP); + } + + async afterUpdate (event: UpdateEvent): Promise { + await afterEntityInsertOrUpdate(FrothyEntity, SUBGRAPH_ENTITIES, event, ENTITY_TO_LATEST_ENTITY_MAP); + } +} diff --git a/src/entity/SyncStatus.ts b/src/entity/SyncStatus.ts new file mode 100644 index 0000000..cc13c70 --- /dev/null +++ b/src/entity/SyncStatus.ts @@ -0,0 +1,45 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryGeneratedColumn, Column } from 'typeorm'; +import { SyncStatusInterface } from '@cerc-io/util'; + +@Entity() +export class SyncStatus implements SyncStatusInterface { + @PrimaryGeneratedColumn() + id!: number; + + @Column('varchar', { length: 66 }) + chainHeadBlockHash!: string; + + @Column('integer') + chainHeadBlockNumber!: number; + + @Column('varchar', { length: 66 }) + latestIndexedBlockHash!: string; + + @Column('integer') + latestIndexedBlockNumber!: number; + + @Column('varchar', { length: 66 }) + latestProcessedBlockHash!: string; + + @Column('integer') + latestProcessedBlockNumber!: number; + + @Column('varchar', { length: 66 }) + latestCanonicalBlockHash!: string; + + @Column('integer') + latestCanonicalBlockNumber!: number; + + @Column('varchar', { length: 66 }) + initialIndexedBlockHash!: string; + + @Column('integer') + initialIndexedBlockNumber!: number; + + @Column('boolean', { default: false }) + hasIndexingError!: boolean; +} diff --git a/src/entity/Take.ts b/src/entity/Take.ts new file mode 100644 index 0000000..219c6c6 --- /dev/null +++ b/src/entity/Take.ts @@ -0,0 +1,65 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class Take { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + taker!: string; + + @Column('varchar') + pool!: string; + + @Column('varchar') + borrower!: string; + + @Column('varchar') + liquidationAuction!: string; + + @Column('varchar') + loan!: string; + + @Column('numeric', { transformer: decimalTransformer }) + auctionPrice!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + amount!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + collateral!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + bondChange!: Decimal; + + @Column('boolean') + isReward!: boolean; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Token.ts b/src/entity/Token.ts new file mode 100644 index 0000000..851c161 --- /dev/null +++ b/src/entity/Token.ts @@ -0,0 +1,49 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class Token { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + symbol!: string; + + @Column('varchar') + name!: string; + + @Column('integer', { nullable: true }) + decimals!: number | null; + + @Column('varchar') + tokenType!: string; + + @Column('numeric', { transformer: bigintTransformer }) + poolCount!: bigint; + + @Column('varchar', { array: true }) + pools!: string[]; + + @Column('numeric', { nullable: true, transformer: bigintTransformer }) + totalSupply!: bigint | null; + + @Column('numeric', { transformer: bigintTransformer }) + txCount!: bigint; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/Transfer.ts b/src/entity/Transfer.ts new file mode 100644 index 0000000..4702470 --- /dev/null +++ b/src/entity/Transfer.ts @@ -0,0 +1,49 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { bigintTransformer } from '@cerc-io/util'; + +@Entity() +@Index(['blockNumber']) +export class Transfer { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + token!: string; + + @Column('varchar') + pool!: string; + + @Column('varchar') + from!: string; + + @Column('varchar') + to!: string; + + @Column('numeric', { transformer: bigintTransformer }) + tokenId!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/TransferLP.ts b/src/entity/TransferLP.ts new file mode 100644 index 0000000..afa1252 --- /dev/null +++ b/src/entity/TransferLP.ts @@ -0,0 +1,47 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class TransferLP { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + owner!: string; + + @Column('varchar') + newOwner!: string; + + @Column('integer', { array: true }) + indexes!: number[]; + + @Column('numeric', { transformer: decimalTransformer }) + lp!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/UpdateInterestRate.ts b/src/entity/UpdateInterestRate.ts new file mode 100644 index 0000000..dd92157 --- /dev/null +++ b/src/entity/UpdateInterestRate.ts @@ -0,0 +1,56 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class UpdateInterestRate { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + pool!: string; + + @Column('numeric', { transformer: decimalTransformer }) + oldBorrowRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + newBorrowRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + oldLendRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + newLendRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + borrowFeeRate!: Decimal; + + @Column('numeric', { transformer: decimalTransformer }) + depositFeeRate!: Decimal; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/entity/VoteCast.ts b/src/entity/VoteCast.ts new file mode 100644 index 0000000..5b04c9d --- /dev/null +++ b/src/entity/VoteCast.ts @@ -0,0 +1,50 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import { Entity, PrimaryColumn, Column, Index } from 'typeorm'; +import { decimalTransformer, bigintTransformer } from '@cerc-io/util'; +import { Decimal } from 'decimal.js'; + +@Entity() +@Index(['blockNumber']) +export class VoteCast { + @PrimaryColumn('varchar') + id!: string; + + @PrimaryColumn('varchar', { length: 66 }) + blockHash!: string; + + @Column('integer') + blockNumber!: number; + + @Column('varchar') + voter!: string; + + @Column('numeric', { transformer: bigintTransformer }) + proposalId!: bigint; + + @Column('integer') + support!: number; + + @Column('numeric', { transformer: decimalTransformer }) + weight!: Decimal; + + @Column('varchar') + reason!: string; + + @Column('numeric', { transformer: bigintTransformer }) + _blockNumber!: bigint; + + @Column('numeric', { transformer: bigintTransformer }) + blockTimestamp!: bigint; + + @Column('varchar') + transactionHash!: string; + + @Column('boolean', { default: false }) + isPruned!: boolean; + + @Column('boolean', { default: false }) + isRemoved!: boolean; +} diff --git a/src/fill.ts b/src/fill.ts new file mode 100644 index 0000000..210341e --- /dev/null +++ b/src/fill.ts @@ -0,0 +1,48 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import 'reflect-metadata'; +import debug from 'debug'; + +import { FillCmd } from '@cerc-io/cli'; +import { getContractEntitiesMap } from '@cerc-io/util'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from './database'; +import { Indexer } from './indexer'; + +const log = debug('vulcanize:fill'); + +export const main = async (): Promise => { + const fillCmd = new FillCmd(); + await fillCmd.init(Database); + + const { graphWatcher } = await getGraphDbAndWatcher( + fillCmd.config.server, + fillCmd.clients.ethClient, + fillCmd.ethProvider, + fillCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await fillCmd.initIndexer(Indexer, graphWatcher); + + // Get contractEntitiesMap required for fill-state + // NOTE: Assuming each entity type is only mapped to a single contract + const contractEntitiesMap = getContractEntitiesMap(graphWatcher.dataSources); + + await fillCmd.exec(contractEntitiesMap); +}; + +main().catch(err => { + log(err); +}).finally(() => { + process.exit(); +}); + +process.on('SIGINT', () => { + log(`Exiting process ${process.pid} with code 0`); + process.exit(0); +}); diff --git a/src/gql/index.ts b/src/gql/index.ts new file mode 100644 index 0000000..4732f68 --- /dev/null +++ b/src/gql/index.ts @@ -0,0 +1,3 @@ +export * as mutations from './mutations'; +export * as queries from './queries'; +export * as subscriptions from './subscriptions'; diff --git a/src/gql/mutations/index.ts b/src/gql/mutations/index.ts new file mode 100644 index 0000000..0c3bd85 --- /dev/null +++ b/src/gql/mutations/index.ts @@ -0,0 +1,4 @@ +import fs from 'fs'; +import path from 'path'; + +export const watchContract = fs.readFileSync(path.join(__dirname, 'watchContract.gql'), 'utf8'); diff --git a/src/gql/mutations/watchContract.gql b/src/gql/mutations/watchContract.gql new file mode 100644 index 0000000..2ecc74f --- /dev/null +++ b/src/gql/mutations/watchContract.gql @@ -0,0 +1,3 @@ +mutation watchContract($address: String!, $kind: String!, $checkpoint: Boolean!, $startingBlock: Int){ + watchContract(address: $address, kind: $kind, checkpoint: $checkpoint, startingBlock: $startingBlock) +} \ No newline at end of file diff --git a/src/gql/queries/_meta.gql b/src/gql/queries/_meta.gql new file mode 100644 index 0000000..d686e04 --- /dev/null +++ b/src/gql/queries/_meta.gql @@ -0,0 +1,11 @@ +query _meta($block: Block_height){ + _meta(block: $block){ + block{ + hash + number + timestamp + } + deployment + hasIndexingErrors + } +} \ No newline at end of file diff --git a/src/gql/queries/account.gql b/src/gql/queries/account.gql new file mode 100644 index 0000000..9b1af9d --- /dev/null +++ b/src/gql/queries/account.gql @@ -0,0 +1,158 @@ +query account($id: ID!, $block: Block_height){ + account(id: $id, block: $block){ + id + pools{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + kicks{ + id + kicker + locked + claimable + borrower + debt + collateral + bond + startingPrice + blockNumber + blockTimestamp + transactionHash + } + lends{ + id + bucketIndex + poolAddress + lender + lpb + lpbValueInQuote + depositTime + } + loans{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + settles{ + id + borrower + settledDebt + blockNumber + blockTimestamp + transactionHash + } + takes{ + id + taker + borrower + auctionPrice + amount + collateral + bondChange + isReward + blockNumber + blockTimestamp + transactionHash + } + reserveAuctions{ + id + claimableReservesRemaining + lastTakePrice + burnEpoch + ajnaBurned + } + proposalsCreated{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + proposalsExecuted{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + delegatedTo{ + id + rewardsClaimed + tokensDelegated + txCount + } + delegatedFrom{ + id + rewardsClaimed + tokensDelegated + txCount + } + rewardsClaimed + distributionPeriodVotes{ + id + initialFundingStageVotingPowerRecordedPostVote + remainingFundingStageVotingPowerRecordedPostVote + initialScreeningStageVotingPowerRecordedPostVote + remainingScreeningStageVotingPowerRecordedPostVote + } + tokensDelegated + positions{ + id + tokenId + owner + tokenURI + } + txCount + } +} \ No newline at end of file diff --git a/src/gql/queries/accounts.gql b/src/gql/queries/accounts.gql new file mode 100644 index 0000000..db444c5 --- /dev/null +++ b/src/gql/queries/accounts.gql @@ -0,0 +1,158 @@ +query accounts($block: Block_height, $where: Account_filter, $orderBy: Account_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + accounts(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pools{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + kicks{ + id + kicker + locked + claimable + borrower + debt + collateral + bond + startingPrice + blockNumber + blockTimestamp + transactionHash + } + lends{ + id + bucketIndex + poolAddress + lender + lpb + lpbValueInQuote + depositTime + } + loans{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + settles{ + id + borrower + settledDebt + blockNumber + blockTimestamp + transactionHash + } + takes{ + id + taker + borrower + auctionPrice + amount + collateral + bondChange + isReward + blockNumber + blockTimestamp + transactionHash + } + reserveAuctions{ + id + claimableReservesRemaining + lastTakePrice + burnEpoch + ajnaBurned + } + proposalsCreated{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + proposalsExecuted{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + delegatedTo{ + id + rewardsClaimed + tokensDelegated + txCount + } + delegatedFrom{ + id + rewardsClaimed + tokensDelegated + txCount + } + rewardsClaimed + distributionPeriodVotes{ + id + initialFundingStageVotingPowerRecordedPostVote + remainingFundingStageVotingPowerRecordedPostVote + initialScreeningStageVotingPowerRecordedPostVote + remainingScreeningStageVotingPowerRecordedPostVote + } + tokensDelegated + positions{ + id + tokenId + owner + tokenURI + } + txCount + } +} \ No newline at end of file diff --git a/src/gql/queries/addCollateral.gql b/src/gql/queries/addCollateral.gql new file mode 100644 index 0000000..a40ad1a --- /dev/null +++ b/src/gql/queries/addCollateral.gql @@ -0,0 +1,63 @@ +query addCollateral($id: ID!, $block: Block_height){ + addCollateral(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + actor + index + amount + lpAwarded + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/addCollateralNFT.gql b/src/gql/queries/addCollateralNFT.gql new file mode 100644 index 0000000..cb1035a --- /dev/null +++ b/src/gql/queries/addCollateralNFT.gql @@ -0,0 +1,63 @@ +query addCollateralNFT($id: ID!, $block: Block_height){ + addCollateralNFT(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + actor + index + tokenIds + lpAwarded + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/addCollateralNFTS.gql b/src/gql/queries/addCollateralNFTS.gql new file mode 100644 index 0000000..17729d7 --- /dev/null +++ b/src/gql/queries/addCollateralNFTS.gql @@ -0,0 +1,63 @@ +query addCollateralNFTS($block: Block_height, $where: AddCollateralNFT_filter, $orderBy: AddCollateralNFT_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + addCollateralNFTS(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + actor + index + tokenIds + lpAwarded + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/addCollaterals.gql b/src/gql/queries/addCollaterals.gql new file mode 100644 index 0000000..2d10614 --- /dev/null +++ b/src/gql/queries/addCollaterals.gql @@ -0,0 +1,63 @@ +query addCollaterals($block: Block_height, $where: AddCollateral_filter, $orderBy: AddCollateral_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + addCollaterals(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + actor + index + amount + lpAwarded + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/addQuoteToken.gql b/src/gql/queries/addQuoteToken.gql new file mode 100644 index 0000000..a2ccd5a --- /dev/null +++ b/src/gql/queries/addQuoteToken.gql @@ -0,0 +1,64 @@ +query addQuoteToken($id: ID!, $block: Block_height){ + addQuoteToken(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + lender + index + amount + lpAwarded + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/addQuoteTokens.gql b/src/gql/queries/addQuoteTokens.gql new file mode 100644 index 0000000..47fbf09 --- /dev/null +++ b/src/gql/queries/addQuoteTokens.gql @@ -0,0 +1,64 @@ +query addQuoteTokens($block: Block_height, $where: AddQuoteToken_filter, $orderBy: AddQuoteToken_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + addQuoteTokens(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + lender + index + amount + lpAwarded + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/approval.gql b/src/gql/queries/approval.gql new file mode 100644 index 0000000..8d3409d --- /dev/null +++ b/src/gql/queries/approval.gql @@ -0,0 +1,11 @@ +query approval($id: ID!, $block: Block_height){ + approval(id: $id, block: $block){ + id + owner + approved + tokenId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/approvalForAll.gql b/src/gql/queries/approvalForAll.gql new file mode 100644 index 0000000..5ce87eb --- /dev/null +++ b/src/gql/queries/approvalForAll.gql @@ -0,0 +1,11 @@ +query approvalForAll($id: ID!, $block: Block_height){ + approvalForAll(id: $id, block: $block){ + id + owner + operator + approved + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/approvalForAlls.gql b/src/gql/queries/approvalForAlls.gql new file mode 100644 index 0000000..bb9842b --- /dev/null +++ b/src/gql/queries/approvalForAlls.gql @@ -0,0 +1,11 @@ +query approvalForAlls($block: Block_height, $where: ApprovalForAll_filter, $orderBy: ApprovalForAll_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + approvalForAlls(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + owner + operator + approved + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/approvals.gql b/src/gql/queries/approvals.gql new file mode 100644 index 0000000..664c777 --- /dev/null +++ b/src/gql/queries/approvals.gql @@ -0,0 +1,11 @@ +query approvals($block: Block_height, $where: Approval_filter, $orderBy: Approval_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + approvals(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + owner + approved + tokenId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/auctionNFTSettle.gql b/src/gql/queries/auctionNFTSettle.gql new file mode 100644 index 0000000..0e42632 --- /dev/null +++ b/src/gql/queries/auctionNFTSettle.gql @@ -0,0 +1,64 @@ +query auctionNFTSettle($id: ID!, $block: Block_height){ + auctionNFTSettle(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + borrower + collateral + lp + index + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/auctionNFTSettles.gql b/src/gql/queries/auctionNFTSettles.gql new file mode 100644 index 0000000..230a549 --- /dev/null +++ b/src/gql/queries/auctionNFTSettles.gql @@ -0,0 +1,64 @@ +query auctionNFTSettles($block: Block_height, $where: AuctionNFTSettle_filter, $orderBy: AuctionNFTSettle_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + auctionNFTSettles(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + borrower + collateral + lp + index + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/auctionSettle.gql b/src/gql/queries/auctionSettle.gql new file mode 100644 index 0000000..145c1fb --- /dev/null +++ b/src/gql/queries/auctionSettle.gql @@ -0,0 +1,62 @@ +query auctionSettle($id: ID!, $block: Block_height){ + auctionSettle(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + borrower + collateral + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/auctionSettles.gql b/src/gql/queries/auctionSettles.gql new file mode 100644 index 0000000..51f5b85 --- /dev/null +++ b/src/gql/queries/auctionSettles.gql @@ -0,0 +1,62 @@ +query auctionSettles($block: Block_height, $where: AuctionSettle_filter, $orderBy: AuctionSettle_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + auctionSettles(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + borrower + collateral + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/bondWithdrawn.gql b/src/gql/queries/bondWithdrawn.gql new file mode 100644 index 0000000..766f0f0 --- /dev/null +++ b/src/gql/queries/bondWithdrawn.gql @@ -0,0 +1,11 @@ +query bondWithdrawn($id: ID!, $block: Block_height){ + bondWithdrawn(id: $id, block: $block){ + id + kicker + reciever + amount + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/bondWithdrawns.gql b/src/gql/queries/bondWithdrawns.gql new file mode 100644 index 0000000..8d1df5d --- /dev/null +++ b/src/gql/queries/bondWithdrawns.gql @@ -0,0 +1,11 @@ +query bondWithdrawns($block: Block_height, $where: BondWithdrawn_filter, $orderBy: BondWithdrawn_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + bondWithdrawns(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + kicker + reciever + amount + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/bucket.gql b/src/gql/queries/bucket.gql new file mode 100644 index 0000000..41e68e3 --- /dev/null +++ b/src/gql/queries/bucket.gql @@ -0,0 +1,70 @@ +query bucket($id: ID!, $block: Block_height){ + bucket(id: $id, block: $block){ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + collateral + deposit + lpb + lends{ + id + bucketIndex + poolAddress + lender + lpb + lpbValueInQuote + depositTime + } + positionLends{ + id + bucketIndex + depositTime + lpb + lpbValueInQuote + tokenId + } + } +} \ No newline at end of file diff --git a/src/gql/queries/bucketBankruptcies.gql b/src/gql/queries/bucketBankruptcies.gql new file mode 100644 index 0000000..ea2fd65 --- /dev/null +++ b/src/gql/queries/bucketBankruptcies.gql @@ -0,0 +1,61 @@ +query bucketBankruptcies($block: Block_height, $where: BucketBankruptcy_filter, $orderBy: BucketBankruptcy_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + bucketBankruptcies(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + index + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lpForfeited + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/bucketBankruptcy.gql b/src/gql/queries/bucketBankruptcy.gql new file mode 100644 index 0000000..b013bdb --- /dev/null +++ b/src/gql/queries/bucketBankruptcy.gql @@ -0,0 +1,61 @@ +query bucketBankruptcy($id: ID!, $block: Block_height){ + bucketBankruptcy(id: $id, block: $block){ + id + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + index + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lpForfeited + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/bucketTake.gql b/src/gql/queries/bucketTake.gql new file mode 100644 index 0000000..6f23b63 --- /dev/null +++ b/src/gql/queries/bucketTake.gql @@ -0,0 +1,96 @@ +query bucketTake($id: ID!, $block: Block_height){ + bucketTake(id: $id, block: $block){ + id + borrower + taker + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + index + auctionPrice + amount + collateral + bondChange + isReward + lpAwarded{ + id + taker + kicker + lpAwardedTaker + lpAwardedKicker + blockNumber + blockTimestamp + transactionHash + } + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/bucketTakeLPAwarded.gql b/src/gql/queries/bucketTakeLPAwarded.gql new file mode 100644 index 0000000..f98c431 --- /dev/null +++ b/src/gql/queries/bucketTakeLPAwarded.gql @@ -0,0 +1,53 @@ +query bucketTakeLPAwarded($id: ID!, $block: Block_height){ + bucketTakeLPAwarded(id: $id, block: $block){ + id + taker + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + kicker + lpAwardedTaker + lpAwardedKicker + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/bucketTakeLPAwardeds.gql b/src/gql/queries/bucketTakeLPAwardeds.gql new file mode 100644 index 0000000..787e173 --- /dev/null +++ b/src/gql/queries/bucketTakeLPAwardeds.gql @@ -0,0 +1,53 @@ +query bucketTakeLPAwardeds($block: Block_height, $where: BucketTakeLPAwarded_filter, $orderBy: BucketTakeLPAwarded_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + bucketTakeLPAwardeds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + taker + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + kicker + lpAwardedTaker + lpAwardedKicker + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/bucketTakes.gql b/src/gql/queries/bucketTakes.gql new file mode 100644 index 0000000..20fcfbe --- /dev/null +++ b/src/gql/queries/bucketTakes.gql @@ -0,0 +1,96 @@ +query bucketTakes($block: Block_height, $where: BucketTake_filter, $orderBy: BucketTake_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + bucketTakes(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + borrower + taker + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + index + auctionPrice + amount + collateral + bondChange + isReward + lpAwarded{ + id + taker + kicker + lpAwardedTaker + lpAwardedKicker + blockNumber + blockTimestamp + transactionHash + } + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/buckets.gql b/src/gql/queries/buckets.gql new file mode 100644 index 0000000..98c1e35 --- /dev/null +++ b/src/gql/queries/buckets.gql @@ -0,0 +1,70 @@ +query buckets($block: Block_height, $where: Bucket_filter, $orderBy: Bucket_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + buckets(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + collateral + deposit + lpb + lends{ + id + bucketIndex + poolAddress + lender + lpb + lpbValueInQuote + depositTime + } + positionLends{ + id + bucketIndex + depositTime + lpb + lpbValueInQuote + tokenId + } + } +} \ No newline at end of file diff --git a/src/gql/queries/burn.gql b/src/gql/queries/burn.gql new file mode 100644 index 0000000..02d24c1 --- /dev/null +++ b/src/gql/queries/burn.gql @@ -0,0 +1,10 @@ +query burn($id: ID!, $block: Block_height){ + burn(id: $id, block: $block){ + id + lender + tokenId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/burnWrap.gql b/src/gql/queries/burnWrap.gql new file mode 100644 index 0000000..f1d7508 --- /dev/null +++ b/src/gql/queries/burnWrap.gql @@ -0,0 +1,16 @@ +query burnWrap($id: ID!, $block: Block_height){ + burnWrap(id: $id, block: $block){ + id + wrapper + account{ + id + rewardsClaimed + tokensDelegated + txCount + } + amount + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/burnWraps.gql b/src/gql/queries/burnWraps.gql new file mode 100644 index 0000000..b6e6ab7 --- /dev/null +++ b/src/gql/queries/burnWraps.gql @@ -0,0 +1,16 @@ +query burnWraps($block: Block_height, $where: BurnWrap_filter, $orderBy: BurnWrap_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + burnWraps(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + wrapper + account{ + id + rewardsClaimed + tokensDelegated + txCount + } + amount + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/burns.gql b/src/gql/queries/burns.gql new file mode 100644 index 0000000..0d4d8e5 --- /dev/null +++ b/src/gql/queries/burns.gql @@ -0,0 +1,10 @@ +query burns($block: Block_height, $where: Burn_filter, $orderBy: Burn_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + burns(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + lender + tokenId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/delegateChanged.gql b/src/gql/queries/delegateChanged.gql new file mode 100644 index 0000000..bb0ff63 --- /dev/null +++ b/src/gql/queries/delegateChanged.gql @@ -0,0 +1,11 @@ +query delegateChanged($id: ID!, $block: Block_height){ + delegateChanged(id: $id, block: $block){ + id + delegator + fromDelegate + toDelegate + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/delegateChangeds.gql b/src/gql/queries/delegateChangeds.gql new file mode 100644 index 0000000..2750756 --- /dev/null +++ b/src/gql/queries/delegateChangeds.gql @@ -0,0 +1,11 @@ +query delegateChangeds($block: Block_height, $where: DelegateChanged_filter, $orderBy: DelegateChanged_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + delegateChangeds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + delegator + fromDelegate + toDelegate + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/delegateRewardClaimed.gql b/src/gql/queries/delegateRewardClaimed.gql new file mode 100644 index 0000000..6dfc2a1 --- /dev/null +++ b/src/gql/queries/delegateRewardClaimed.gql @@ -0,0 +1,21 @@ +query delegateRewardClaimed($id: ID!, $block: Block_height){ + delegateRewardClaimed(id: $id, block: $block){ + id + delegateeAddress_ + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + rewardClaimed_ + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/delegateRewardClaimeds.gql b/src/gql/queries/delegateRewardClaimeds.gql new file mode 100644 index 0000000..b343af5 --- /dev/null +++ b/src/gql/queries/delegateRewardClaimeds.gql @@ -0,0 +1,21 @@ +query delegateRewardClaimeds($block: Block_height, $where: DelegateRewardClaimed_filter, $orderBy: DelegateRewardClaimed_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + delegateRewardClaimeds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + delegateeAddress_ + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + rewardClaimed_ + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/delegateVotesChanged.gql b/src/gql/queries/delegateVotesChanged.gql new file mode 100644 index 0000000..431d869 --- /dev/null +++ b/src/gql/queries/delegateVotesChanged.gql @@ -0,0 +1,11 @@ +query delegateVotesChanged($id: ID!, $block: Block_height){ + delegateVotesChanged(id: $id, block: $block){ + id + delegate + previousBalance + newBalance + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/delegateVotesChangeds.gql b/src/gql/queries/delegateVotesChangeds.gql new file mode 100644 index 0000000..8a02f21 --- /dev/null +++ b/src/gql/queries/delegateVotesChangeds.gql @@ -0,0 +1,11 @@ +query delegateVotesChangeds($block: Block_height, $where: DelegateVotesChanged_filter, $orderBy: DelegateVotesChanged_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + delegateVotesChangeds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + delegate + previousBalance + newBalance + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/distributionPeriod.gql b/src/gql/queries/distributionPeriod.gql new file mode 100644 index 0000000..eb9619f --- /dev/null +++ b/src/gql/queries/distributionPeriod.gql @@ -0,0 +1,43 @@ +query distributionPeriod($id: ID!, $block: Block_height){ + distributionPeriod(id: $id, block: $block){ + id + distributionId + startBlock + endBlock + topSlate{ + id + totalTokensRequested + totalFundingVotesReceived + updateBlock + } + slatesSubmitted{ + id + totalTokensRequested + totalFundingVotesReceived + updateBlock + } + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + votes{ + id + initialFundingStageVotingPowerRecordedPostVote + remainingFundingStageVotingPowerRecordedPostVote + initialScreeningStageVotingPowerRecordedPostVote + remainingScreeningStageVotingPowerRecordedPostVote + } + proposals{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + totalTokensDistributed + } +} \ No newline at end of file diff --git a/src/gql/queries/distributionPeriodStarted.gql b/src/gql/queries/distributionPeriodStarted.gql new file mode 100644 index 0000000..c471ae8 --- /dev/null +++ b/src/gql/queries/distributionPeriodStarted.gql @@ -0,0 +1,21 @@ +query distributionPeriodStarted($id: ID!, $block: Block_height){ + distributionPeriodStarted(id: $id, block: $block){ + id + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + startBlock + endBlock + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/distributionPeriodStarteds.gql b/src/gql/queries/distributionPeriodStarteds.gql new file mode 100644 index 0000000..3ded43e --- /dev/null +++ b/src/gql/queries/distributionPeriodStarteds.gql @@ -0,0 +1,21 @@ +query distributionPeriodStarteds($block: Block_height, $where: DistributionPeriodStarted_filter, $orderBy: DistributionPeriodStarted_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + distributionPeriodStarteds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + startBlock + endBlock + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/distributionPeriodVote.gql b/src/gql/queries/distributionPeriodVote.gql new file mode 100644 index 0000000..caad311 --- /dev/null +++ b/src/gql/queries/distributionPeriodVote.gql @@ -0,0 +1,35 @@ +query distributionPeriodVote($id: ID!, $block: Block_height){ + distributionPeriodVote(id: $id, block: $block){ + id + voter{ + id + rewardsClaimed + tokensDelegated + txCount + } + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + initialFundingStageVotingPowerRecordedPostVote + remainingFundingStageVotingPowerRecordedPostVote + initialScreeningStageVotingPowerRecordedPostVote + remainingScreeningStageVotingPowerRecordedPostVote + screeningVotes{ + id + totalVotesCast + } + fundingVotes{ + id + totalVotesCast + votingPowerUsed + } + } +} \ No newline at end of file diff --git a/src/gql/queries/distributionPeriodVotes.gql b/src/gql/queries/distributionPeriodVotes.gql new file mode 100644 index 0000000..9e92559 --- /dev/null +++ b/src/gql/queries/distributionPeriodVotes.gql @@ -0,0 +1,35 @@ +query distributionPeriodVotes($block: Block_height, $where: DistributionPeriodVote_filter, $orderBy: DistributionPeriodVote_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + distributionPeriodVotes(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + voter{ + id + rewardsClaimed + tokensDelegated + txCount + } + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + initialFundingStageVotingPowerRecordedPostVote + remainingFundingStageVotingPowerRecordedPostVote + initialScreeningStageVotingPowerRecordedPostVote + remainingScreeningStageVotingPowerRecordedPostVote + screeningVotes{ + id + totalVotesCast + } + fundingVotes{ + id + totalVotesCast + votingPowerUsed + } + } +} \ No newline at end of file diff --git a/src/gql/queries/distributionPeriods.gql b/src/gql/queries/distributionPeriods.gql new file mode 100644 index 0000000..0998a86 --- /dev/null +++ b/src/gql/queries/distributionPeriods.gql @@ -0,0 +1,43 @@ +query distributionPeriods($block: Block_height, $where: DistributionPeriod_filter, $orderBy: DistributionPeriod_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + distributionPeriods(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + distributionId + startBlock + endBlock + topSlate{ + id + totalTokensRequested + totalFundingVotesReceived + updateBlock + } + slatesSubmitted{ + id + totalTokensRequested + totalFundingVotesReceived + updateBlock + } + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + votes{ + id + initialFundingStageVotingPowerRecordedPostVote + remainingFundingStageVotingPowerRecordedPostVote + initialScreeningStageVotingPowerRecordedPostVote + remainingScreeningStageVotingPowerRecordedPostVote + } + proposals{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + totalTokensDistributed + } +} \ No newline at end of file diff --git a/src/gql/queries/drawDebt.gql b/src/gql/queries/drawDebt.gql new file mode 100644 index 0000000..c724fa4 --- /dev/null +++ b/src/gql/queries/drawDebt.gql @@ -0,0 +1,53 @@ +query drawDebt($id: ID!, $block: Block_height){ + drawDebt(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + amountBorrowed + collateralPledged + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/drawDebtNFT.gql b/src/gql/queries/drawDebtNFT.gql new file mode 100644 index 0000000..4df5936 --- /dev/null +++ b/src/gql/queries/drawDebtNFT.gql @@ -0,0 +1,53 @@ +query drawDebtNFT($id: ID!, $block: Block_height){ + drawDebtNFT(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + amountBorrowed + tokenIdsPledged + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/drawDebtNFTS.gql b/src/gql/queries/drawDebtNFTS.gql new file mode 100644 index 0000000..8f214b6 --- /dev/null +++ b/src/gql/queries/drawDebtNFTS.gql @@ -0,0 +1,53 @@ +query drawDebtNFTS($block: Block_height, $where: DrawDebtNFT_filter, $orderBy: DrawDebtNFT_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + drawDebtNFTS(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + amountBorrowed + tokenIdsPledged + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/drawDebts.gql b/src/gql/queries/drawDebts.gql new file mode 100644 index 0000000..12fc837 --- /dev/null +++ b/src/gql/queries/drawDebts.gql @@ -0,0 +1,53 @@ +query drawDebts($block: Block_height, $where: DrawDebt_filter, $orderBy: DrawDebt_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + drawDebts(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + amountBorrowed + collateralPledged + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/events.gql b/src/gql/queries/events.gql new file mode 100644 index 0000000..1777bbe --- /dev/null +++ b/src/gql/queries/events.gql @@ -0,0 +1,296 @@ +query events($blockHash: String!, $contractAddress: String!, $name: String){ + events(blockHash: $blockHash, contractAddress: $contractAddress, name: $name){ + block{ + cid + hash + number + timestamp + parentHash + } + tx{ + hash + index + from + to + } + contract + eventIndex + event{ + ... on ApprovalEvent { + owner + approved + tokenId + spender + value + } + ... on ApprovalForAllEvent { + owner + operator + approved + } + ... on BurnEvent { + lender + tokenId + } + ... on MemorializePositionEvent { + lender + tokenId + indexes + } + ... on MintEvent { + lender + pool + tokenId + } + ... on MoveLiquidityEvent { + lender + tokenId + fromIndex + toIndex + lpRedeemedFrom + lpAwardedTo + } + ... on RedeemPositionEvent { + lender + tokenId + indexes + } + ... on TransferEvent { + from + to + tokenId + value + } + ... on PoolCreatedEvent { + pool_ + subsetHash_ + } + ... on DelegateRewardClaimedEvent { + delegateeAddress + distributionId + rewardClaimed + } + ... on DistributionPeriodStartedEvent { + distributionId + startBlock + endBlock + } + ... on FundTreasuryEvent { + amount + treasuryBalance + } + ... on FundedSlateUpdatedEvent { + distributionId + fundedSlateHash + } + ... on ProposalCreatedEvent { + proposalId + proposer + targets + values + signatures + calldatas + startBlock + endBlock + description + } + ... on ProposalExecutedEvent { + proposalId + } + ... on VoteCastEvent { + voter + proposalId + support + weight + reason + } + ... on DelegateChangedEvent { + delegator + fromDelegate + toDelegate + } + ... on DelegateVotesChangedEvent { + delegate + previousBalance + newBalance + } + ... on AddCollateralEvent { + actor + index + amount + lpAwarded + } + ... on AddQuoteTokenEvent { + lender + index + amount + lpAwarded + lup + } + ... on ApproveLPTransferorsEvent { + lender + transferors + } + ... on AuctionNFTSettleEvent { + borrower + collateral + lp + index + } + ... on AuctionSettleEvent { + borrower + collateral + } + ... on BondWithdrawnEvent { + kicker + reciever + amount + } + ... on BucketBankruptcyEvent { + index + lpForfeited + } + ... on BucketTakeEvent { + borrower + index + amount + collateral + bondChange + isReward + } + ... on BucketTakeLPAwardedEvent { + taker + kicker + lpAwardedTaker + lpAwardedKicker + } + ... on DecreaseLPAllowanceEvent { + owner + spender + indexes + amounts + } + ... on DrawDebtEvent { + borrower + amountBorrowed + collateralPledged + lup + } + ... on FlashloanEvent { + receiver + token + amount + } + ... on IncreaseLPAllowanceEvent { + owner + spender + indexes + amounts + } + ... on InterestUpdateFailureEvent { + dummy + } + ... on KickEvent { + borrower + debt + collateral + bond + } + ... on KickReserveAuctionEvent { + claimableReservesRemaining + auctionPrice + currentBurnEpoch + } + ... on LoanStampedEvent { + borrower + } + ... on MoveQuoteTokenEvent { + lender + from + to + amount + lpRedeemedFrom + lpAwardedTo + lup + } + ... on RemoveCollateralEvent { + claimer + index + amount + lpRedeemed + } + ... on RemoveQuoteTokenEvent { + lender + index + amount + lpRedeemed + lup + } + ... on RepayDebtEvent { + borrower + quoteRepaid + collateralPulled + lup + } + ... on ReserveAuctionEvent { + claimableReservesRemaining + auctionPrice + currentBurnEpoch + } + ... on ResetInterestRateEvent { + oldRate + newRate + } + ... on RevokeLPAllowanceEvent { + owner + spender + indexes + } + ... on RevokeLPTransferorsEvent { + lender + transferors + } + ... on SettleEvent { + borrower + settledDebt + } + ... on TakeEvent { + borrower + amount + collateral + bondChange + isReward + } + ... on TransferLPEvent { + owner + newOwner + indexes + lp + } + ... on UpdateInterestRateEvent { + oldRate + newRate + } + ... on AddCollateralNFTEvent { + actor + index + tokenIds + lpAwarded + } + ... on DrawDebtNFTEvent { + borrower + amountBorrowed + tokenIdsPledged + lup + } + ... on MergeOrRemoveCollateralNFTEvent { + actor + collateralMerged + toIndexLps + } + } + proof{ + data + } + } +} \ No newline at end of file diff --git a/src/gql/queries/eventsInRange.gql b/src/gql/queries/eventsInRange.gql new file mode 100644 index 0000000..c10aded --- /dev/null +++ b/src/gql/queries/eventsInRange.gql @@ -0,0 +1,296 @@ +query eventsInRange($fromBlockNumber: Int!, $toBlockNumber: Int!){ + eventsInRange(fromBlockNumber: $fromBlockNumber, toBlockNumber: $toBlockNumber){ + block{ + cid + hash + number + timestamp + parentHash + } + tx{ + hash + index + from + to + } + contract + eventIndex + event{ + ... on ApprovalEvent { + owner + approved + tokenId + spender + value + } + ... on ApprovalForAllEvent { + owner + operator + approved + } + ... on BurnEvent { + lender + tokenId + } + ... on MemorializePositionEvent { + lender + tokenId + indexes + } + ... on MintEvent { + lender + pool + tokenId + } + ... on MoveLiquidityEvent { + lender + tokenId + fromIndex + toIndex + lpRedeemedFrom + lpAwardedTo + } + ... on RedeemPositionEvent { + lender + tokenId + indexes + } + ... on TransferEvent { + from + to + tokenId + value + } + ... on PoolCreatedEvent { + pool_ + subsetHash_ + } + ... on DelegateRewardClaimedEvent { + delegateeAddress + distributionId + rewardClaimed + } + ... on DistributionPeriodStartedEvent { + distributionId + startBlock + endBlock + } + ... on FundTreasuryEvent { + amount + treasuryBalance + } + ... on FundedSlateUpdatedEvent { + distributionId + fundedSlateHash + } + ... on ProposalCreatedEvent { + proposalId + proposer + targets + values + signatures + calldatas + startBlock + endBlock + description + } + ... on ProposalExecutedEvent { + proposalId + } + ... on VoteCastEvent { + voter + proposalId + support + weight + reason + } + ... on DelegateChangedEvent { + delegator + fromDelegate + toDelegate + } + ... on DelegateVotesChangedEvent { + delegate + previousBalance + newBalance + } + ... on AddCollateralEvent { + actor + index + amount + lpAwarded + } + ... on AddQuoteTokenEvent { + lender + index + amount + lpAwarded + lup + } + ... on ApproveLPTransferorsEvent { + lender + transferors + } + ... on AuctionNFTSettleEvent { + borrower + collateral + lp + index + } + ... on AuctionSettleEvent { + borrower + collateral + } + ... on BondWithdrawnEvent { + kicker + reciever + amount + } + ... on BucketBankruptcyEvent { + index + lpForfeited + } + ... on BucketTakeEvent { + borrower + index + amount + collateral + bondChange + isReward + } + ... on BucketTakeLPAwardedEvent { + taker + kicker + lpAwardedTaker + lpAwardedKicker + } + ... on DecreaseLPAllowanceEvent { + owner + spender + indexes + amounts + } + ... on DrawDebtEvent { + borrower + amountBorrowed + collateralPledged + lup + } + ... on FlashloanEvent { + receiver + token + amount + } + ... on IncreaseLPAllowanceEvent { + owner + spender + indexes + amounts + } + ... on InterestUpdateFailureEvent { + dummy + } + ... on KickEvent { + borrower + debt + collateral + bond + } + ... on KickReserveAuctionEvent { + claimableReservesRemaining + auctionPrice + currentBurnEpoch + } + ... on LoanStampedEvent { + borrower + } + ... on MoveQuoteTokenEvent { + lender + from + to + amount + lpRedeemedFrom + lpAwardedTo + lup + } + ... on RemoveCollateralEvent { + claimer + index + amount + lpRedeemed + } + ... on RemoveQuoteTokenEvent { + lender + index + amount + lpRedeemed + lup + } + ... on RepayDebtEvent { + borrower + quoteRepaid + collateralPulled + lup + } + ... on ReserveAuctionEvent { + claimableReservesRemaining + auctionPrice + currentBurnEpoch + } + ... on ResetInterestRateEvent { + oldRate + newRate + } + ... on RevokeLPAllowanceEvent { + owner + spender + indexes + } + ... on RevokeLPTransferorsEvent { + lender + transferors + } + ... on SettleEvent { + borrower + settledDebt + } + ... on TakeEvent { + borrower + amount + collateral + bondChange + isReward + } + ... on TransferLPEvent { + owner + newOwner + indexes + lp + } + ... on UpdateInterestRateEvent { + oldRate + newRate + } + ... on AddCollateralNFTEvent { + actor + index + tokenIds + lpAwarded + } + ... on DrawDebtNFTEvent { + borrower + amountBorrowed + tokenIdsPledged + lup + } + ... on MergeOrRemoveCollateralNFTEvent { + actor + collateralMerged + toIndexLps + } + } + proof{ + data + } + } +} \ No newline at end of file diff --git a/src/gql/queries/flashloan.gql b/src/gql/queries/flashloan.gql new file mode 100644 index 0000000..b7f9007 --- /dev/null +++ b/src/gql/queries/flashloan.gql @@ -0,0 +1,48 @@ +query flashloan($id: ID!, $block: Block_height){ + flashloan(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + amount + } +} \ No newline at end of file diff --git a/src/gql/queries/flashloans.gql b/src/gql/queries/flashloans.gql new file mode 100644 index 0000000..fda3907 --- /dev/null +++ b/src/gql/queries/flashloans.gql @@ -0,0 +1,48 @@ +query flashloans($block: Block_height, $where: Flashloan_filter, $orderBy: Flashloan_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + flashloans(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + amount + } +} \ No newline at end of file diff --git a/src/gql/queries/fundTreasuries.gql b/src/gql/queries/fundTreasuries.gql new file mode 100644 index 0000000..1a27653 --- /dev/null +++ b/src/gql/queries/fundTreasuries.gql @@ -0,0 +1,10 @@ +query fundTreasuries($block: Block_height, $where: FundTreasury_filter, $orderBy: FundTreasury_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + fundTreasuries(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + amount + treasuryBalance + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/fundTreasury.gql b/src/gql/queries/fundTreasury.gql new file mode 100644 index 0000000..e5430a0 --- /dev/null +++ b/src/gql/queries/fundTreasury.gql @@ -0,0 +1,10 @@ +query fundTreasury($id: ID!, $block: Block_height){ + fundTreasury(id: $id, block: $block){ + id + amount + treasuryBalance + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/fundedSlate.gql b/src/gql/queries/fundedSlate.gql new file mode 100644 index 0000000..3b8e240 --- /dev/null +++ b/src/gql/queries/fundedSlate.gql @@ -0,0 +1,30 @@ +query fundedSlate($id: ID!, $block: Block_height){ + fundedSlate(id: $id, block: $block){ + id + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + proposals{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + totalTokensRequested + totalFundingVotesReceived + updateBlock + } +} \ No newline at end of file diff --git a/src/gql/queries/fundedSlateUpdated.gql b/src/gql/queries/fundedSlateUpdated.gql new file mode 100644 index 0000000..3ceb61e --- /dev/null +++ b/src/gql/queries/fundedSlateUpdated.gql @@ -0,0 +1,10 @@ +query fundedSlateUpdated($id: ID!, $block: Block_height){ + fundedSlateUpdated(id: $id, block: $block){ + id + distributionId_ + fundedSlateHash_ + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/fundedSlateUpdateds.gql b/src/gql/queries/fundedSlateUpdateds.gql new file mode 100644 index 0000000..34b8c9f --- /dev/null +++ b/src/gql/queries/fundedSlateUpdateds.gql @@ -0,0 +1,10 @@ +query fundedSlateUpdateds($block: Block_height, $where: FundedSlateUpdated_filter, $orderBy: FundedSlateUpdated_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + fundedSlateUpdateds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + distributionId_ + fundedSlateHash_ + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/fundedSlates.gql b/src/gql/queries/fundedSlates.gql new file mode 100644 index 0000000..60871d1 --- /dev/null +++ b/src/gql/queries/fundedSlates.gql @@ -0,0 +1,30 @@ +query fundedSlates($block: Block_height, $where: FundedSlate_filter, $orderBy: FundedSlate_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + fundedSlates(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + proposals{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + totalTokensRequested + totalFundingVotesReceived + updateBlock + } +} \ No newline at end of file diff --git a/src/gql/queries/fundingVote.gql b/src/gql/queries/fundingVote.gql new file mode 100644 index 0000000..b48e80e --- /dev/null +++ b/src/gql/queries/fundingVote.gql @@ -0,0 +1,46 @@ +query fundingVote($id: ID!, $block: Block_height){ + fundingVote(id: $id, block: $block){ + id + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + voter{ + id + rewardsClaimed + tokensDelegated + txCount + } + proposal{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + totalVotesCast + votingPowerUsed + votesCast{ + id + voter + proposalId + support + weight + reason + blockNumber + blockTimestamp + transactionHash + } + } +} \ No newline at end of file diff --git a/src/gql/queries/fundingVotes.gql b/src/gql/queries/fundingVotes.gql new file mode 100644 index 0000000..1e2b2aa --- /dev/null +++ b/src/gql/queries/fundingVotes.gql @@ -0,0 +1,46 @@ +query fundingVotes($block: Block_height, $where: FundingVote_filter, $orderBy: FundingVote_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + fundingVotes(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + voter{ + id + rewardsClaimed + tokensDelegated + txCount + } + proposal{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + totalVotesCast + votingPowerUsed + votesCast{ + id + voter + proposalId + support + weight + reason + blockNumber + blockTimestamp + transactionHash + } + } +} \ No newline at end of file diff --git a/src/gql/queries/getState.gql b/src/gql/queries/getState.gql new file mode 100644 index 0000000..3b8f605 --- /dev/null +++ b/src/gql/queries/getState.gql @@ -0,0 +1,15 @@ +query getState($blockHash: String!, $contractAddress: String!, $kind: String){ + getState(blockHash: $blockHash, contractAddress: $contractAddress, kind: $kind){ + block{ + cid + hash + number + timestamp + parentHash + } + contractAddress + cid + kind + data + } +} \ No newline at end of file diff --git a/src/gql/queries/getStateByCID.gql b/src/gql/queries/getStateByCID.gql new file mode 100644 index 0000000..6c3c4fd --- /dev/null +++ b/src/gql/queries/getStateByCID.gql @@ -0,0 +1,15 @@ +query getStateByCID($cid: String!){ + getStateByCID(cid: $cid){ + block{ + cid + hash + number + timestamp + parentHash + } + contractAddress + cid + kind + data + } +} \ No newline at end of file diff --git a/src/gql/queries/getSyncStatus.gql b/src/gql/queries/getSyncStatus.gql new file mode 100644 index 0000000..48175b4 --- /dev/null +++ b/src/gql/queries/getSyncStatus.gql @@ -0,0 +1,12 @@ +query getSyncStatus{ + getSyncStatus{ + latestIndexedBlockHash + latestIndexedBlockNumber + latestCanonicalBlockHash + latestCanonicalBlockNumber + initialIndexedBlockHash + initialIndexedBlockNumber + latestProcessedBlockHash + latestProcessedBlockNumber + } +} \ No newline at end of file diff --git a/src/gql/queries/grantFund.gql b/src/gql/queries/grantFund.gql new file mode 100644 index 0000000..7e4bfdc --- /dev/null +++ b/src/gql/queries/grantFund.gql @@ -0,0 +1,18 @@ +query grantFund($id: ID!, $block: Block_height){ + grantFund(id: $id, block: $block){ + id + treasury + distributionPeriods{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + totalDelegationRewardsClaimed + } +} \ No newline at end of file diff --git a/src/gql/queries/grantFunds.gql b/src/gql/queries/grantFunds.gql new file mode 100644 index 0000000..068d17a --- /dev/null +++ b/src/gql/queries/grantFunds.gql @@ -0,0 +1,18 @@ +query grantFunds($block: Block_height, $where: GrantFund_filter, $orderBy: GrantFund_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + grantFunds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + treasury + distributionPeriods{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + totalDelegationRewardsClaimed + } +} \ No newline at end of file diff --git a/src/gql/queries/index.ts b/src/gql/queries/index.ts new file mode 100644 index 0000000..4d33d86 --- /dev/null +++ b/src/gql/queries/index.ts @@ -0,0 +1,143 @@ +import fs from 'fs'; +import path from 'path'; + +export const events = fs.readFileSync(path.join(__dirname, 'events.gql'), 'utf8'); +export const eventsInRange = fs.readFileSync(path.join(__dirname, 'eventsInRange.gql'), 'utf8'); +export const token = fs.readFileSync(path.join(__dirname, 'token.gql'), 'utf8'); +export const tokens = fs.readFileSync(path.join(__dirname, 'tokens.gql'), 'utf8'); +export const poolFactory = fs.readFileSync(path.join(__dirname, 'poolFactory.gql'), 'utf8'); +export const poolFactories = fs.readFileSync(path.join(__dirname, 'poolFactories.gql'), 'utf8'); +export const pool = fs.readFileSync(path.join(__dirname, 'pool.gql'), 'utf8'); +export const pools = fs.readFileSync(path.join(__dirname, 'pools.gql'), 'utf8'); +export const bucket = fs.readFileSync(path.join(__dirname, 'bucket.gql'), 'utf8'); +export const buckets = fs.readFileSync(path.join(__dirname, 'buckets.gql'), 'utf8'); +export const lend = fs.readFileSync(path.join(__dirname, 'lend.gql'), 'utf8'); +export const lends = fs.readFileSync(path.join(__dirname, 'lends.gql'), 'utf8'); +export const loan = fs.readFileSync(path.join(__dirname, 'loan.gql'), 'utf8'); +export const loans = fs.readFileSync(path.join(__dirname, 'loans.gql'), 'utf8'); +export const account = fs.readFileSync(path.join(__dirname, 'account.gql'), 'utf8'); +export const accounts = fs.readFileSync(path.join(__dirname, 'accounts.gql'), 'utf8'); +export const liquidationAuction = fs.readFileSync(path.join(__dirname, 'liquidationAuction.gql'), 'utf8'); +export const liquidationAuctions = fs.readFileSync(path.join(__dirname, 'liquidationAuctions.gql'), 'utf8'); +export const reserveAuction = fs.readFileSync(path.join(__dirname, 'reserveAuction.gql'), 'utf8'); +export const reserveAuctions = fs.readFileSync(path.join(__dirname, 'reserveAuctions.gql'), 'utf8'); +export const lptransferorList = fs.readFileSync(path.join(__dirname, 'lptransferorList.gql'), 'utf8'); +export const lptransferorLists = fs.readFileSync(path.join(__dirname, 'lptransferorLists.gql'), 'utf8'); +export const lpallowance = fs.readFileSync(path.join(__dirname, 'lpallowance.gql'), 'utf8'); +export const lpallowances = fs.readFileSync(path.join(__dirname, 'lpallowances.gql'), 'utf8'); +export const lpallowanceList = fs.readFileSync(path.join(__dirname, 'lpallowanceList.gql'), 'utf8'); +export const lpallowanceLists = fs.readFileSync(path.join(__dirname, 'lpallowanceLists.gql'), 'utf8'); +export const addCollateral = fs.readFileSync(path.join(__dirname, 'addCollateral.gql'), 'utf8'); +export const addCollaterals = fs.readFileSync(path.join(__dirname, 'addCollaterals.gql'), 'utf8'); +export const addQuoteToken = fs.readFileSync(path.join(__dirname, 'addQuoteToken.gql'), 'utf8'); +export const addQuoteTokens = fs.readFileSync(path.join(__dirname, 'addQuoteTokens.gql'), 'utf8'); +export const auctionSettle = fs.readFileSync(path.join(__dirname, 'auctionSettle.gql'), 'utf8'); +export const auctionSettles = fs.readFileSync(path.join(__dirname, 'auctionSettles.gql'), 'utf8'); +export const bondWithdrawn = fs.readFileSync(path.join(__dirname, 'bondWithdrawn.gql'), 'utf8'); +export const bondWithdrawns = fs.readFileSync(path.join(__dirname, 'bondWithdrawns.gql'), 'utf8'); +export const bucketBankruptcy = fs.readFileSync(path.join(__dirname, 'bucketBankruptcy.gql'), 'utf8'); +export const bucketBankruptcies = fs.readFileSync(path.join(__dirname, 'bucketBankruptcies.gql'), 'utf8'); +export const bucketTake = fs.readFileSync(path.join(__dirname, 'bucketTake.gql'), 'utf8'); +export const bucketTakes = fs.readFileSync(path.join(__dirname, 'bucketTakes.gql'), 'utf8'); +export const bucketTakeLPAwarded = fs.readFileSync(path.join(__dirname, 'bucketTakeLPAwarded.gql'), 'utf8'); +export const bucketTakeLPAwardeds = fs.readFileSync(path.join(__dirname, 'bucketTakeLPAwardeds.gql'), 'utf8'); +export const drawDebt = fs.readFileSync(path.join(__dirname, 'drawDebt.gql'), 'utf8'); +export const drawDebts = fs.readFileSync(path.join(__dirname, 'drawDebts.gql'), 'utf8'); +export const flashloan = fs.readFileSync(path.join(__dirname, 'flashloan.gql'), 'utf8'); +export const flashloans = fs.readFileSync(path.join(__dirname, 'flashloans.gql'), 'utf8'); +export const kick = fs.readFileSync(path.join(__dirname, 'kick.gql'), 'utf8'); +export const kicks = fs.readFileSync(path.join(__dirname, 'kicks.gql'), 'utf8'); +export const loanStamped = fs.readFileSync(path.join(__dirname, 'loanStamped.gql'), 'utf8'); +export const loanStampeds = fs.readFileSync(path.join(__dirname, 'loanStampeds.gql'), 'utf8'); +export const moveQuoteToken = fs.readFileSync(path.join(__dirname, 'moveQuoteToken.gql'), 'utf8'); +export const moveQuoteTokens = fs.readFileSync(path.join(__dirname, 'moveQuoteTokens.gql'), 'utf8'); +export const removeCollateral = fs.readFileSync(path.join(__dirname, 'removeCollateral.gql'), 'utf8'); +export const removeCollaterals = fs.readFileSync(path.join(__dirname, 'removeCollaterals.gql'), 'utf8'); +export const removeQuoteToken = fs.readFileSync(path.join(__dirname, 'removeQuoteToken.gql'), 'utf8'); +export const removeQuoteTokens = fs.readFileSync(path.join(__dirname, 'removeQuoteTokens.gql'), 'utf8'); +export const repayDebt = fs.readFileSync(path.join(__dirname, 'repayDebt.gql'), 'utf8'); +export const repayDebts = fs.readFileSync(path.join(__dirname, 'repayDebts.gql'), 'utf8'); +export const reserveAuctionKick = fs.readFileSync(path.join(__dirname, 'reserveAuctionKick.gql'), 'utf8'); +export const reserveAuctionKicks = fs.readFileSync(path.join(__dirname, 'reserveAuctionKicks.gql'), 'utf8'); +export const reserveAuctionTake = fs.readFileSync(path.join(__dirname, 'reserveAuctionTake.gql'), 'utf8'); +export const reserveAuctionTakes = fs.readFileSync(path.join(__dirname, 'reserveAuctionTakes.gql'), 'utf8'); +export const resetInterestRate = fs.readFileSync(path.join(__dirname, 'resetInterestRate.gql'), 'utf8'); +export const resetInterestRates = fs.readFileSync(path.join(__dirname, 'resetInterestRates.gql'), 'utf8'); +export const settle = fs.readFileSync(path.join(__dirname, 'settle.gql'), 'utf8'); +export const settles = fs.readFileSync(path.join(__dirname, 'settles.gql'), 'utf8'); +export const take = fs.readFileSync(path.join(__dirname, 'take.gql'), 'utf8'); +export const takes = fs.readFileSync(path.join(__dirname, 'takes.gql'), 'utf8'); +export const transferLP = fs.readFileSync(path.join(__dirname, 'transferLP.gql'), 'utf8'); +export const transferLPS = fs.readFileSync(path.join(__dirname, 'transferLPS.gql'), 'utf8'); +export const updateInterestRate = fs.readFileSync(path.join(__dirname, 'updateInterestRate.gql'), 'utf8'); +export const updateInterestRates = fs.readFileSync(path.join(__dirname, 'updateInterestRates.gql'), 'utf8'); +export const approval = fs.readFileSync(path.join(__dirname, 'approval.gql'), 'utf8'); +export const approvals = fs.readFileSync(path.join(__dirname, 'approvals.gql'), 'utf8'); +export const approvalForAll = fs.readFileSync(path.join(__dirname, 'approvalForAll.gql'), 'utf8'); +export const approvalForAlls = fs.readFileSync(path.join(__dirname, 'approvalForAlls.gql'), 'utf8'); +export const moveLiquidity = fs.readFileSync(path.join(__dirname, 'moveLiquidity.gql'), 'utf8'); +export const moveLiquidities = fs.readFileSync(path.join(__dirname, 'moveLiquidities.gql'), 'utf8'); +export const transfer = fs.readFileSync(path.join(__dirname, 'transfer.gql'), 'utf8'); +export const transfers = fs.readFileSync(path.join(__dirname, 'transfers.gql'), 'utf8'); +export const poolCreated = fs.readFileSync(path.join(__dirname, 'poolCreated.gql'), 'utf8'); +export const poolCreateds = fs.readFileSync(path.join(__dirname, 'poolCreateds.gql'), 'utf8'); +export const addCollateralNFT = fs.readFileSync(path.join(__dirname, 'addCollateralNFT.gql'), 'utf8'); +export const addCollateralNFTS = fs.readFileSync(path.join(__dirname, 'addCollateralNFTS.gql'), 'utf8'); +export const auctionNFTSettle = fs.readFileSync(path.join(__dirname, 'auctionNFTSettle.gql'), 'utf8'); +export const auctionNFTSettles = fs.readFileSync(path.join(__dirname, 'auctionNFTSettles.gql'), 'utf8'); +export const drawDebtNFT = fs.readFileSync(path.join(__dirname, 'drawDebtNFT.gql'), 'utf8'); +export const drawDebtNFTS = fs.readFileSync(path.join(__dirname, 'drawDebtNFTS.gql'), 'utf8'); +export const mergeOrRemoveCollateralNFT = fs.readFileSync(path.join(__dirname, 'mergeOrRemoveCollateralNFT.gql'), 'utf8'); +export const mergeOrRemoveCollateralNFTS = fs.readFileSync(path.join(__dirname, 'mergeOrRemoveCollateralNFTS.gql'), 'utf8'); +export const position = fs.readFileSync(path.join(__dirname, 'position.gql'), 'utf8'); +export const positions = fs.readFileSync(path.join(__dirname, 'positions.gql'), 'utf8'); +export const positionLend = fs.readFileSync(path.join(__dirname, 'positionLend.gql'), 'utf8'); +export const positionLends = fs.readFileSync(path.join(__dirname, 'positionLends.gql'), 'utf8'); +export const burn = fs.readFileSync(path.join(__dirname, 'burn.gql'), 'utf8'); +export const burns = fs.readFileSync(path.join(__dirname, 'burns.gql'), 'utf8'); +export const memorializePosition = fs.readFileSync(path.join(__dirname, 'memorializePosition.gql'), 'utf8'); +export const memorializePositions = fs.readFileSync(path.join(__dirname, 'memorializePositions.gql'), 'utf8'); +export const mint = fs.readFileSync(path.join(__dirname, 'mint.gql'), 'utf8'); +export const mints = fs.readFileSync(path.join(__dirname, 'mints.gql'), 'utf8'); +export const redeemPosition = fs.readFileSync(path.join(__dirname, 'redeemPosition.gql'), 'utf8'); +export const redeemPositions = fs.readFileSync(path.join(__dirname, 'redeemPositions.gql'), 'utf8'); +export const grantFund = fs.readFileSync(path.join(__dirname, 'grantFund.gql'), 'utf8'); +export const grantFunds = fs.readFileSync(path.join(__dirname, 'grantFunds.gql'), 'utf8'); +export const distributionPeriod = fs.readFileSync(path.join(__dirname, 'distributionPeriod.gql'), 'utf8'); +export const distributionPeriods = fs.readFileSync(path.join(__dirname, 'distributionPeriods.gql'), 'utf8'); +export const proposal = fs.readFileSync(path.join(__dirname, 'proposal.gql'), 'utf8'); +export const proposals = fs.readFileSync(path.join(__dirname, 'proposals.gql'), 'utf8'); +export const proposalParams = fs.readFileSync(path.join(__dirname, 'proposalParams.gql'), 'utf8'); +export const proposalParamss = fs.readFileSync(path.join(__dirname, 'proposalParamss.gql'), 'utf8'); +export const distributionPeriodVote = fs.readFileSync(path.join(__dirname, 'distributionPeriodVote.gql'), 'utf8'); +export const distributionPeriodVotes = fs.readFileSync(path.join(__dirname, 'distributionPeriodVotes.gql'), 'utf8'); +export const screeningVote = fs.readFileSync(path.join(__dirname, 'screeningVote.gql'), 'utf8'); +export const screeningVotes = fs.readFileSync(path.join(__dirname, 'screeningVotes.gql'), 'utf8'); +export const fundingVote = fs.readFileSync(path.join(__dirname, 'fundingVote.gql'), 'utf8'); +export const fundingVotes = fs.readFileSync(path.join(__dirname, 'fundingVotes.gql'), 'utf8'); +export const fundedSlate = fs.readFileSync(path.join(__dirname, 'fundedSlate.gql'), 'utf8'); +export const fundedSlates = fs.readFileSync(path.join(__dirname, 'fundedSlates.gql'), 'utf8'); +export const delegateRewardClaimed = fs.readFileSync(path.join(__dirname, 'delegateRewardClaimed.gql'), 'utf8'); +export const delegateRewardClaimeds = fs.readFileSync(path.join(__dirname, 'delegateRewardClaimeds.gql'), 'utf8'); +export const fundTreasury = fs.readFileSync(path.join(__dirname, 'fundTreasury.gql'), 'utf8'); +export const fundTreasuries = fs.readFileSync(path.join(__dirname, 'fundTreasuries.gql'), 'utf8'); +export const fundedSlateUpdated = fs.readFileSync(path.join(__dirname, 'fundedSlateUpdated.gql'), 'utf8'); +export const fundedSlateUpdateds = fs.readFileSync(path.join(__dirname, 'fundedSlateUpdateds.gql'), 'utf8'); +export const proposalCreated = fs.readFileSync(path.join(__dirname, 'proposalCreated.gql'), 'utf8'); +export const proposalCreateds = fs.readFileSync(path.join(__dirname, 'proposalCreateds.gql'), 'utf8'); +export const proposalExecuted = fs.readFileSync(path.join(__dirname, 'proposalExecuted.gql'), 'utf8'); +export const proposalExecuteds = fs.readFileSync(path.join(__dirname, 'proposalExecuteds.gql'), 'utf8'); +export const distributionPeriodStarted = fs.readFileSync(path.join(__dirname, 'distributionPeriodStarted.gql'), 'utf8'); +export const distributionPeriodStarteds = fs.readFileSync(path.join(__dirname, 'distributionPeriodStarteds.gql'), 'utf8'); +export const voteCast = fs.readFileSync(path.join(__dirname, 'voteCast.gql'), 'utf8'); +export const voteCasts = fs.readFileSync(path.join(__dirname, 'voteCasts.gql'), 'utf8'); +export const delegateChanged = fs.readFileSync(path.join(__dirname, 'delegateChanged.gql'), 'utf8'); +export const delegateChangeds = fs.readFileSync(path.join(__dirname, 'delegateChangeds.gql'), 'utf8'); +export const delegateVotesChanged = fs.readFileSync(path.join(__dirname, 'delegateVotesChanged.gql'), 'utf8'); +export const delegateVotesChangeds = fs.readFileSync(path.join(__dirname, 'delegateVotesChangeds.gql'), 'utf8'); +export const burnWrap = fs.readFileSync(path.join(__dirname, 'burnWrap.gql'), 'utf8'); +export const burnWraps = fs.readFileSync(path.join(__dirname, 'burnWraps.gql'), 'utf8'); +export const _meta = fs.readFileSync(path.join(__dirname, '_meta.gql'), 'utf8'); +export const getStateByCID = fs.readFileSync(path.join(__dirname, 'getStateByCID.gql'), 'utf8'); +export const getState = fs.readFileSync(path.join(__dirname, 'getState.gql'), 'utf8'); +export const getSyncStatus = fs.readFileSync(path.join(__dirname, 'getSyncStatus.gql'), 'utf8'); diff --git a/src/gql/queries/kick.gql b/src/gql/queries/kick.gql new file mode 100644 index 0000000..fb0cffa --- /dev/null +++ b/src/gql/queries/kick.gql @@ -0,0 +1,86 @@ +query kick($id: ID!, $block: Block_height){ + kick(id: $id, block: $block){ + id + kicker + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + locked + claimable + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + borrower + debt + collateral + bond + startingPrice + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/kicks.gql b/src/gql/queries/kicks.gql new file mode 100644 index 0000000..c8f84c2 --- /dev/null +++ b/src/gql/queries/kicks.gql @@ -0,0 +1,86 @@ +query kicks($block: Block_height, $where: Kick_filter, $orderBy: Kick_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + kicks(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + kicker + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + locked + claimable + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + borrower + debt + collateral + bond + startingPrice + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/lend.gql b/src/gql/queries/lend.gql new file mode 100644 index 0000000..4afe3fe --- /dev/null +++ b/src/gql/queries/lend.gql @@ -0,0 +1,62 @@ +query lend($id: ID!, $block: Block_height){ + lend(id: $id, block: $block){ + id + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + bucketIndex + poolAddress + lender + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lpb + lpbValueInQuote + depositTime + } +} \ No newline at end of file diff --git a/src/gql/queries/lends.gql b/src/gql/queries/lends.gql new file mode 100644 index 0000000..fb7470c --- /dev/null +++ b/src/gql/queries/lends.gql @@ -0,0 +1,62 @@ +query lends($block: Block_height, $where: Lend_filter, $orderBy: Lend_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + lends(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + bucketIndex + poolAddress + lender + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lpb + lpbValueInQuote + depositTime + } +} \ No newline at end of file diff --git a/src/gql/queries/liquidationAuction.gql b/src/gql/queries/liquidationAuction.gql new file mode 100644 index 0000000..59c115b --- /dev/null +++ b/src/gql/queries/liquidationAuction.gql @@ -0,0 +1,129 @@ +query liquidationAuction($id: ID!, $block: Block_height){ + liquidationAuction(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + kicker + kick{ + id + kicker + locked + claimable + borrower + debt + collateral + bond + startingPrice + blockNumber + blockTimestamp + transactionHash + } + kickTime + takes{ + id + taker + borrower + auctionPrice + amount + collateral + bondChange + isReward + blockNumber + blockTimestamp + transactionHash + } + bucketTakes{ + id + borrower + taker + index + auctionPrice + amount + collateral + bondChange + isReward + blockNumber + blockTimestamp + transactionHash + } + settles{ + id + borrower + settledDebt + blockNumber + blockTimestamp + transactionHash + } + settle{ + id + borrower + collateral + blockNumber + blockTimestamp + transactionHash + } + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } +} \ No newline at end of file diff --git a/src/gql/queries/liquidationAuctions.gql b/src/gql/queries/liquidationAuctions.gql new file mode 100644 index 0000000..454f5a3 --- /dev/null +++ b/src/gql/queries/liquidationAuctions.gql @@ -0,0 +1,129 @@ +query liquidationAuctions($block: Block_height, $where: LiquidationAuction_filter, $orderBy: LiquidationAuction_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + liquidationAuctions(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + kicker + kick{ + id + kicker + locked + claimable + borrower + debt + collateral + bond + startingPrice + blockNumber + blockTimestamp + transactionHash + } + kickTime + takes{ + id + taker + borrower + auctionPrice + amount + collateral + bondChange + isReward + blockNumber + blockTimestamp + transactionHash + } + bucketTakes{ + id + borrower + taker + index + auctionPrice + amount + collateral + bondChange + isReward + blockNumber + blockTimestamp + transactionHash + } + settles{ + id + borrower + settledDebt + blockNumber + blockTimestamp + transactionHash + } + settle{ + id + borrower + collateral + blockNumber + blockTimestamp + transactionHash + } + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } +} \ No newline at end of file diff --git a/src/gql/queries/loan.gql b/src/gql/queries/loan.gql new file mode 100644 index 0000000..613135a --- /dev/null +++ b/src/gql/queries/loan.gql @@ -0,0 +1,72 @@ +query loan($id: ID!, $block: Block_height){ + loan(id: $id, block: $block){ + id + poolAddress + borrower + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + inLiquidation + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } +} \ No newline at end of file diff --git a/src/gql/queries/loanStamped.gql b/src/gql/queries/loanStamped.gql new file mode 100644 index 0000000..b05035e --- /dev/null +++ b/src/gql/queries/loanStamped.gql @@ -0,0 +1,50 @@ +query loanStamped($id: ID!, $block: Block_height){ + loanStamped(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/loanStampeds.gql b/src/gql/queries/loanStampeds.gql new file mode 100644 index 0000000..883cea2 --- /dev/null +++ b/src/gql/queries/loanStampeds.gql @@ -0,0 +1,50 @@ +query loanStampeds($block: Block_height, $where: LoanStamped_filter, $orderBy: LoanStamped_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + loanStampeds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/loans.gql b/src/gql/queries/loans.gql new file mode 100644 index 0000000..9383549 --- /dev/null +++ b/src/gql/queries/loans.gql @@ -0,0 +1,72 @@ +query loans($block: Block_height, $where: Loan_filter, $orderBy: Loan_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + loans(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + poolAddress + borrower + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + inLiquidation + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } +} \ No newline at end of file diff --git a/src/gql/queries/lpallowance.gql b/src/gql/queries/lpallowance.gql new file mode 100644 index 0000000..cb0a350 --- /dev/null +++ b/src/gql/queries/lpallowance.gql @@ -0,0 +1,7 @@ +query lpallowance($id: ID!, $block: Block_height){ + lpallowance(id: $id, block: $block){ + id + index + amount + } +} \ No newline at end of file diff --git a/src/gql/queries/lpallowanceList.gql b/src/gql/queries/lpallowanceList.gql new file mode 100644 index 0000000..0fce397 --- /dev/null +++ b/src/gql/queries/lpallowanceList.gql @@ -0,0 +1,53 @@ +query lpallowanceList($id: ID!, $block: Block_height){ + lpallowanceList(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + spender + allowances{ + id + index + amount + } + } +} \ No newline at end of file diff --git a/src/gql/queries/lpallowanceLists.gql b/src/gql/queries/lpallowanceLists.gql new file mode 100644 index 0000000..31b5780 --- /dev/null +++ b/src/gql/queries/lpallowanceLists.gql @@ -0,0 +1,53 @@ +query lpallowanceLists($block: Block_height, $where: LPAllowanceList_filter, $orderBy: LPAllowanceList_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + lpallowanceLists(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + spender + allowances{ + id + index + amount + } + } +} \ No newline at end of file diff --git a/src/gql/queries/lpallowances.gql b/src/gql/queries/lpallowances.gql new file mode 100644 index 0000000..cd44baa --- /dev/null +++ b/src/gql/queries/lpallowances.gql @@ -0,0 +1,7 @@ +query lpallowances($block: Block_height, $where: LPAllowance_filter, $orderBy: LPAllowance_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + lpallowances(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + index + amount + } +} \ No newline at end of file diff --git a/src/gql/queries/lptransferorList.gql b/src/gql/queries/lptransferorList.gql new file mode 100644 index 0000000..d518fab --- /dev/null +++ b/src/gql/queries/lptransferorList.gql @@ -0,0 +1,48 @@ +query lptransferorList($id: ID!, $block: Block_height){ + lptransferorList(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + transferors + } +} \ No newline at end of file diff --git a/src/gql/queries/lptransferorLists.gql b/src/gql/queries/lptransferorLists.gql new file mode 100644 index 0000000..b099122 --- /dev/null +++ b/src/gql/queries/lptransferorLists.gql @@ -0,0 +1,48 @@ +query lptransferorLists($block: Block_height, $where: LPTransferorList_filter, $orderBy: LPTransferorList_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + lptransferorLists(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + transferors + } +} \ No newline at end of file diff --git a/src/gql/queries/memorializePosition.gql b/src/gql/queries/memorializePosition.gql new file mode 100644 index 0000000..f71c4a9 --- /dev/null +++ b/src/gql/queries/memorializePosition.gql @@ -0,0 +1,52 @@ +query memorializePosition($id: ID!, $block: Block_height){ + memorializePosition(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + tokenId + indexes + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/memorializePositions.gql b/src/gql/queries/memorializePositions.gql new file mode 100644 index 0000000..d1c1600 --- /dev/null +++ b/src/gql/queries/memorializePositions.gql @@ -0,0 +1,52 @@ +query memorializePositions($block: Block_height, $where: MemorializePosition_filter, $orderBy: MemorializePosition_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + memorializePositions(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + tokenId + indexes + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/mergeOrRemoveCollateralNFT.gql b/src/gql/queries/mergeOrRemoveCollateralNFT.gql new file mode 100644 index 0000000..f242535 --- /dev/null +++ b/src/gql/queries/mergeOrRemoveCollateralNFT.gql @@ -0,0 +1,52 @@ +query mergeOrRemoveCollateralNFT($id: ID!, $block: Block_height){ + mergeOrRemoveCollateralNFT(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + actor + collateralMerged + toIndexLps + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/mergeOrRemoveCollateralNFTS.gql b/src/gql/queries/mergeOrRemoveCollateralNFTS.gql new file mode 100644 index 0000000..f9345ec --- /dev/null +++ b/src/gql/queries/mergeOrRemoveCollateralNFTS.gql @@ -0,0 +1,52 @@ +query mergeOrRemoveCollateralNFTS($block: Block_height, $where: MergeOrRemoveCollateralNFT_filter, $orderBy: MergeOrRemoveCollateralNFT_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + mergeOrRemoveCollateralNFTS(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + actor + collateralMerged + toIndexLps + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/mint.gql b/src/gql/queries/mint.gql new file mode 100644 index 0000000..58ce77f --- /dev/null +++ b/src/gql/queries/mint.gql @@ -0,0 +1,51 @@ +query mint($id: ID!, $block: Block_height){ + mint(id: $id, block: $block){ + id + lender + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + tokenId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/mints.gql b/src/gql/queries/mints.gql new file mode 100644 index 0000000..3b5d756 --- /dev/null +++ b/src/gql/queries/mints.gql @@ -0,0 +1,51 @@ +query mints($block: Block_height, $where: Mint_filter, $orderBy: Mint_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + mints(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + lender + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + tokenId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/moveLiquidities.gql b/src/gql/queries/moveLiquidities.gql new file mode 100644 index 0000000..af5fe35 --- /dev/null +++ b/src/gql/queries/moveLiquidities.gql @@ -0,0 +1,53 @@ +query moveLiquidities($block: Block_height, $where: MoveLiquidity_filter, $orderBy: MoveLiquidity_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + moveLiquidities(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + lender + tokenId + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + fromIndex + toIndex + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/moveLiquidity.gql b/src/gql/queries/moveLiquidity.gql new file mode 100644 index 0000000..9504ae5 --- /dev/null +++ b/src/gql/queries/moveLiquidity.gql @@ -0,0 +1,53 @@ +query moveLiquidity($id: ID!, $block: Block_height){ + moveLiquidity(id: $id, block: $block){ + id + lender + tokenId + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + fromIndex + toIndex + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/moveQuoteToken.gql b/src/gql/queries/moveQuoteToken.gql new file mode 100644 index 0000000..f6b05a8 --- /dev/null +++ b/src/gql/queries/moveQuoteToken.gql @@ -0,0 +1,74 @@ +query moveQuoteToken($id: ID!, $block: Block_height){ + moveQuoteToken(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + from{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + to{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + amount + lpRedeemedFrom + lpAwardedTo + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/moveQuoteTokens.gql b/src/gql/queries/moveQuoteTokens.gql new file mode 100644 index 0000000..e4d71aa --- /dev/null +++ b/src/gql/queries/moveQuoteTokens.gql @@ -0,0 +1,74 @@ +query moveQuoteTokens($block: Block_height, $where: MoveQuoteToken_filter, $orderBy: MoveQuoteToken_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + moveQuoteTokens(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + from{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + to{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + amount + lpRedeemedFrom + lpAwardedTo + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/pool.gql b/src/gql/queries/pool.gql new file mode 100644 index 0000000..519faac --- /dev/null +++ b/src/gql/queries/pool.gql @@ -0,0 +1,88 @@ +query pool($id: ID!, $block: Block_height){ + pool(id: $id, block: $block){ + id + createdAtBlockNumber + createdAtTimestamp + collateralToken{ + id + symbol + name + decimals + tokenType + poolCount + totalSupply + txCount + } + quoteToken{ + id + symbol + name + decimals + tokenType + poolCount + totalSupply + txCount + } + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + reserveAuctions{ + id + claimableReservesRemaining + lastTakePrice + burnEpoch + ajnaBurned + } + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + liquidationAuctions{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } +} \ No newline at end of file diff --git a/src/gql/queries/poolCreated.gql b/src/gql/queries/poolCreated.gql new file mode 100644 index 0000000..b77681f --- /dev/null +++ b/src/gql/queries/poolCreated.gql @@ -0,0 +1,56 @@ +query poolCreated($id: ID!, $block: Block_height){ + poolCreated(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + poolType + factory{ + id + poolType + poolCount + txCount + } + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/poolCreateds.gql b/src/gql/queries/poolCreateds.gql new file mode 100644 index 0000000..56146c2 --- /dev/null +++ b/src/gql/queries/poolCreateds.gql @@ -0,0 +1,56 @@ +query poolCreateds($block: Block_height, $where: PoolCreated_filter, $orderBy: PoolCreated_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + poolCreateds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + poolType + factory{ + id + poolType + poolCount + txCount + } + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/poolFactories.gql b/src/gql/queries/poolFactories.gql new file mode 100644 index 0000000..765705c --- /dev/null +++ b/src/gql/queries/poolFactories.gql @@ -0,0 +1,49 @@ +query poolFactories($block: Block_height, $where: PoolFactory_filter, $orderBy: PoolFactory_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + poolFactories(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + poolType + poolCount + pools{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + txCount + } +} \ No newline at end of file diff --git a/src/gql/queries/poolFactory.gql b/src/gql/queries/poolFactory.gql new file mode 100644 index 0000000..63796b3 --- /dev/null +++ b/src/gql/queries/poolFactory.gql @@ -0,0 +1,49 @@ +query poolFactory($id: ID!, $block: Block_height){ + poolFactory(id: $id, block: $block){ + id + poolType + poolCount + pools{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + txCount + } +} \ No newline at end of file diff --git a/src/gql/queries/pools.gql b/src/gql/queries/pools.gql new file mode 100644 index 0000000..b7d19c0 --- /dev/null +++ b/src/gql/queries/pools.gql @@ -0,0 +1,88 @@ +query pools($block: Block_height, $where: Pool_filter, $orderBy: Pool_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + pools(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + createdAtBlockNumber + createdAtTimestamp + collateralToken{ + id + symbol + name + decimals + tokenType + poolCount + totalSupply + txCount + } + quoteToken{ + id + symbol + name + decimals + tokenType + poolCount + totalSupply + txCount + } + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + reserveAuctions{ + id + claimableReservesRemaining + lastTakePrice + burnEpoch + ajnaBurned + } + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + liquidationAuctions{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } +} \ No newline at end of file diff --git a/src/gql/queries/position.gql b/src/gql/queries/position.gql new file mode 100644 index 0000000..4a484dc --- /dev/null +++ b/src/gql/queries/position.gql @@ -0,0 +1,67 @@ +query position($id: ID!, $block: Block_height){ + position(id: $id, block: $block){ + id + tokenId + indexes{ + id + bucketIndex + depositTime + lpb + lpbValueInQuote + tokenId + } + owner + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + token{ + id + symbol + name + decimals + tokenType + poolCount + totalSupply + txCount + } + tokenURI + } +} \ No newline at end of file diff --git a/src/gql/queries/positionLend.gql b/src/gql/queries/positionLend.gql new file mode 100644 index 0000000..edc7569 --- /dev/null +++ b/src/gql/queries/positionLend.gql @@ -0,0 +1,20 @@ +query positionLend($id: ID!, $block: Block_height){ + positionLend(id: $id, block: $block){ + id + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + bucketIndex + depositTime + lpb + lpbValueInQuote + tokenId + } +} \ No newline at end of file diff --git a/src/gql/queries/positionLends.gql b/src/gql/queries/positionLends.gql new file mode 100644 index 0000000..a423821 --- /dev/null +++ b/src/gql/queries/positionLends.gql @@ -0,0 +1,20 @@ +query positionLends($block: Block_height, $where: PositionLend_filter, $orderBy: PositionLend_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + positionLends(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + bucketIndex + depositTime + lpb + lpbValueInQuote + tokenId + } +} \ No newline at end of file diff --git a/src/gql/queries/positions.gql b/src/gql/queries/positions.gql new file mode 100644 index 0000000..0733b37 --- /dev/null +++ b/src/gql/queries/positions.gql @@ -0,0 +1,67 @@ +query positions($block: Block_height, $where: Position_filter, $orderBy: Position_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + positions(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + tokenId + indexes{ + id + bucketIndex + depositTime + lpb + lpbValueInQuote + tokenId + } + owner + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + token{ + id + symbol + name + decimals + tokenType + poolCount + totalSupply + txCount + } + tokenURI + } +} \ No newline at end of file diff --git a/src/gql/queries/proposal.gql b/src/gql/queries/proposal.gql new file mode 100644 index 0000000..175c6a2 --- /dev/null +++ b/src/gql/queries/proposal.gql @@ -0,0 +1,32 @@ +query proposal($id: ID!, $block: Block_height){ + proposal(id: $id, block: $block){ + id + proposalId + description + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + params{ + id + target + value + calldata + recipient + tokensRequested + } + } +} \ No newline at end of file diff --git a/src/gql/queries/proposalCreated.gql b/src/gql/queries/proposalCreated.gql new file mode 100644 index 0000000..2b93031 --- /dev/null +++ b/src/gql/queries/proposalCreated.gql @@ -0,0 +1,27 @@ +query proposalCreated($id: ID!, $block: Block_height){ + proposalCreated(id: $id, block: $block){ + id + proposal{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + proposer + targets + values + signatures + calldatas + startBlock + endBlock + description + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/proposalCreateds.gql b/src/gql/queries/proposalCreateds.gql new file mode 100644 index 0000000..afb0ea8 --- /dev/null +++ b/src/gql/queries/proposalCreateds.gql @@ -0,0 +1,27 @@ +query proposalCreateds($block: Block_height, $where: ProposalCreated_filter, $orderBy: ProposalCreated_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + proposalCreateds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + proposal{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + proposer + targets + values + signatures + calldatas + startBlock + endBlock + description + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/proposalExecuted.gql b/src/gql/queries/proposalExecuted.gql new file mode 100644 index 0000000..f311333 --- /dev/null +++ b/src/gql/queries/proposalExecuted.gql @@ -0,0 +1,9 @@ +query proposalExecuted($id: ID!, $block: Block_height){ + proposalExecuted(id: $id, block: $block){ + id + proposalId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/proposalExecuteds.gql b/src/gql/queries/proposalExecuteds.gql new file mode 100644 index 0000000..5b47b34 --- /dev/null +++ b/src/gql/queries/proposalExecuteds.gql @@ -0,0 +1,9 @@ +query proposalExecuteds($block: Block_height, $where: ProposalExecuted_filter, $orderBy: ProposalExecuted_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + proposalExecuteds(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + proposalId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/proposalParams.gql b/src/gql/queries/proposalParams.gql new file mode 100644 index 0000000..ed5ed9f --- /dev/null +++ b/src/gql/queries/proposalParams.gql @@ -0,0 +1,10 @@ +query proposalParams($id: ID!, $block: Block_height){ + proposalParams(id: $id, block: $block){ + id + target + value + calldata + recipient + tokensRequested + } +} \ No newline at end of file diff --git a/src/gql/queries/proposalParamss.gql b/src/gql/queries/proposalParamss.gql new file mode 100644 index 0000000..4595cc7 --- /dev/null +++ b/src/gql/queries/proposalParamss.gql @@ -0,0 +1,10 @@ +query proposalParamss($block: Block_height, $where: ProposalParams_filter, $orderBy: ProposalParams_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + proposalParamss(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + target + value + calldata + recipient + tokensRequested + } +} \ No newline at end of file diff --git a/src/gql/queries/proposals.gql b/src/gql/queries/proposals.gql new file mode 100644 index 0000000..9ff6b7d --- /dev/null +++ b/src/gql/queries/proposals.gql @@ -0,0 +1,32 @@ +query proposals($block: Block_height, $where: Proposal_filter, $orderBy: Proposal_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + proposals(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + proposalId + description + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + params{ + id + target + value + calldata + recipient + tokensRequested + } + } +} \ No newline at end of file diff --git a/src/gql/queries/redeemPosition.gql b/src/gql/queries/redeemPosition.gql new file mode 100644 index 0000000..3fa6f0d --- /dev/null +++ b/src/gql/queries/redeemPosition.gql @@ -0,0 +1,52 @@ +query redeemPosition($id: ID!, $block: Block_height){ + redeemPosition(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + tokenId + indexes + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/redeemPositions.gql b/src/gql/queries/redeemPositions.gql new file mode 100644 index 0000000..53248b8 --- /dev/null +++ b/src/gql/queries/redeemPositions.gql @@ -0,0 +1,52 @@ +query redeemPositions($block: Block_height, $where: RedeemPosition_filter, $orderBy: RedeemPosition_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + redeemPositions(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + lender + tokenId + indexes + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/removeCollateral.gql b/src/gql/queries/removeCollateral.gql new file mode 100644 index 0000000..dbe8fde --- /dev/null +++ b/src/gql/queries/removeCollateral.gql @@ -0,0 +1,63 @@ +query removeCollateral($id: ID!, $block: Block_height){ + removeCollateral(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + claimer + index + amount + lpRedeemed + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/removeCollaterals.gql b/src/gql/queries/removeCollaterals.gql new file mode 100644 index 0000000..076a614 --- /dev/null +++ b/src/gql/queries/removeCollaterals.gql @@ -0,0 +1,63 @@ +query removeCollaterals($block: Block_height, $where: RemoveCollateral_filter, $orderBy: RemoveCollateral_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + removeCollaterals(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + claimer + index + amount + lpRedeemed + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/removeQuoteToken.gql b/src/gql/queries/removeQuoteToken.gql new file mode 100644 index 0000000..f999bf8 --- /dev/null +++ b/src/gql/queries/removeQuoteToken.gql @@ -0,0 +1,64 @@ +query removeQuoteToken($id: ID!, $block: Block_height){ + removeQuoteToken(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + lender + index + amount + lpRedeemed + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/removeQuoteTokens.gql b/src/gql/queries/removeQuoteTokens.gql new file mode 100644 index 0000000..0e7345c --- /dev/null +++ b/src/gql/queries/removeQuoteTokens.gql @@ -0,0 +1,64 @@ +query removeQuoteTokens($block: Block_height, $where: RemoveQuoteToken_filter, $orderBy: RemoveQuoteToken_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + removeQuoteTokens(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + bucket{ + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + collateral + deposit + lpb + } + lender + index + amount + lpRedeemed + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/repayDebt.gql b/src/gql/queries/repayDebt.gql new file mode 100644 index 0000000..40dbb80 --- /dev/null +++ b/src/gql/queries/repayDebt.gql @@ -0,0 +1,53 @@ +query repayDebt($id: ID!, $block: Block_height){ + repayDebt(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + quoteRepaid + collateralPulled + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/repayDebts.gql b/src/gql/queries/repayDebts.gql new file mode 100644 index 0000000..c4e90af --- /dev/null +++ b/src/gql/queries/repayDebts.gql @@ -0,0 +1,53 @@ +query repayDebts($block: Block_height, $where: RepayDebt_filter, $orderBy: RepayDebt_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + repayDebts(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + quoteRepaid + collateralPulled + lup + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/reserveAuction.gql b/src/gql/queries/reserveAuction.gql new file mode 100644 index 0000000..dbf1472 --- /dev/null +++ b/src/gql/queries/reserveAuction.gql @@ -0,0 +1,70 @@ +query reserveAuction($id: ID!, $block: Block_height){ + reserveAuction(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + claimableReservesRemaining + lastTakePrice + burnEpoch + kick{ + id + kicker + claimableReserves + startingPrice + blockNumber + blockTimestamp + transactionHash + } + takes{ + id + taker + claimableReservesRemaining + auctionPrice + quotePurchased + ajnaBurned + blockNumber + blockTimestamp + transactionHash + } + ajnaBurned + } +} \ No newline at end of file diff --git a/src/gql/queries/reserveAuctionKick.gql b/src/gql/queries/reserveAuctionKick.gql new file mode 100644 index 0000000..f33ec17 --- /dev/null +++ b/src/gql/queries/reserveAuctionKick.gql @@ -0,0 +1,59 @@ +query reserveAuctionKick($id: ID!, $block: Block_height){ + reserveAuctionKick(id: $id, block: $block){ + id + kicker + reserveAuction{ + id + claimableReservesRemaining + lastTakePrice + burnEpoch + ajnaBurned + } + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + claimableReserves + startingPrice + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/reserveAuctionKicks.gql b/src/gql/queries/reserveAuctionKicks.gql new file mode 100644 index 0000000..3282629 --- /dev/null +++ b/src/gql/queries/reserveAuctionKicks.gql @@ -0,0 +1,59 @@ +query reserveAuctionKicks($block: Block_height, $where: ReserveAuctionKick_filter, $orderBy: ReserveAuctionKick_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + reserveAuctionKicks(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + kicker + reserveAuction{ + id + claimableReservesRemaining + lastTakePrice + burnEpoch + ajnaBurned + } + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + claimableReserves + startingPrice + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/reserveAuctionTake.gql b/src/gql/queries/reserveAuctionTake.gql new file mode 100644 index 0000000..fab33b5 --- /dev/null +++ b/src/gql/queries/reserveAuctionTake.gql @@ -0,0 +1,61 @@ +query reserveAuctionTake($id: ID!, $block: Block_height){ + reserveAuctionTake(id: $id, block: $block){ + id + taker + reserveAuction{ + id + claimableReservesRemaining + lastTakePrice + burnEpoch + ajnaBurned + } + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + claimableReservesRemaining + auctionPrice + quotePurchased + ajnaBurned + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/reserveAuctionTakes.gql b/src/gql/queries/reserveAuctionTakes.gql new file mode 100644 index 0000000..86ac88d --- /dev/null +++ b/src/gql/queries/reserveAuctionTakes.gql @@ -0,0 +1,61 @@ +query reserveAuctionTakes($block: Block_height, $where: ReserveAuctionTake_filter, $orderBy: ReserveAuctionTake_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + reserveAuctionTakes(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + taker + reserveAuction{ + id + claimableReservesRemaining + lastTakePrice + burnEpoch + ajnaBurned + } + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + claimableReservesRemaining + auctionPrice + quotePurchased + ajnaBurned + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/reserveAuctions.gql b/src/gql/queries/reserveAuctions.gql new file mode 100644 index 0000000..37086ed --- /dev/null +++ b/src/gql/queries/reserveAuctions.gql @@ -0,0 +1,70 @@ +query reserveAuctions($block: Block_height, $where: ReserveAuction_filter, $orderBy: ReserveAuction_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + reserveAuctions(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + claimableReservesRemaining + lastTakePrice + burnEpoch + kick{ + id + kicker + claimableReserves + startingPrice + blockNumber + blockTimestamp + transactionHash + } + takes{ + id + taker + claimableReservesRemaining + auctionPrice + quotePurchased + ajnaBurned + blockNumber + blockTimestamp + transactionHash + } + ajnaBurned + } +} \ No newline at end of file diff --git a/src/gql/queries/resetInterestRate.gql b/src/gql/queries/resetInterestRate.gql new file mode 100644 index 0000000..6aab8f1 --- /dev/null +++ b/src/gql/queries/resetInterestRate.gql @@ -0,0 +1,53 @@ +query resetInterestRate($id: ID!, $block: Block_height){ + resetInterestRate(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + oldBorrowRate + newBorrowRate + oldLendRate + newLendRate + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/resetInterestRates.gql b/src/gql/queries/resetInterestRates.gql new file mode 100644 index 0000000..4f48270 --- /dev/null +++ b/src/gql/queries/resetInterestRates.gql @@ -0,0 +1,53 @@ +query resetInterestRates($block: Block_height, $where: ResetInterestRate_filter, $orderBy: ResetInterestRate_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + resetInterestRates(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + oldBorrowRate + newBorrowRate + oldLendRate + newLendRate + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/screeningVote.gql b/src/gql/queries/screeningVote.gql new file mode 100644 index 0000000..c611a5b --- /dev/null +++ b/src/gql/queries/screeningVote.gql @@ -0,0 +1,45 @@ +query screeningVote($id: ID!, $block: Block_height){ + screeningVote(id: $id, block: $block){ + id + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + voter{ + id + rewardsClaimed + tokensDelegated + txCount + } + proposal{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + totalVotesCast + votesCast{ + id + voter + proposalId + support + weight + reason + blockNumber + blockTimestamp + transactionHash + } + } +} \ No newline at end of file diff --git a/src/gql/queries/screeningVotes.gql b/src/gql/queries/screeningVotes.gql new file mode 100644 index 0000000..5edca0b --- /dev/null +++ b/src/gql/queries/screeningVotes.gql @@ -0,0 +1,45 @@ +query screeningVotes($block: Block_height, $where: ScreeningVote_filter, $orderBy: ScreeningVote_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + screeningVotes(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + distribution{ + id + distributionId + startBlock + endBlock + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + totalTokensDistributed + } + voter{ + id + rewardsClaimed + tokensDelegated + txCount + } + proposal{ + id + proposalId + description + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + } + totalVotesCast + votesCast{ + id + voter + proposalId + support + weight + reason + blockNumber + blockTimestamp + transactionHash + } + } +} \ No newline at end of file diff --git a/src/gql/queries/settle.gql b/src/gql/queries/settle.gql new file mode 100644 index 0000000..f1fe90d --- /dev/null +++ b/src/gql/queries/settle.gql @@ -0,0 +1,80 @@ +query settle($id: ID!, $block: Block_height){ + settle(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + borrower + settledDebt + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/settles.gql b/src/gql/queries/settles.gql new file mode 100644 index 0000000..d92f769 --- /dev/null +++ b/src/gql/queries/settles.gql @@ -0,0 +1,80 @@ +query settles($block: Block_height, $where: Settle_filter, $orderBy: Settle_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + settles(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + borrower + settledDebt + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/take.gql b/src/gql/queries/take.gql new file mode 100644 index 0000000..028ffcf --- /dev/null +++ b/src/gql/queries/take.gql @@ -0,0 +1,85 @@ +query take($id: ID!, $block: Block_height){ + take(id: $id, block: $block){ + id + taker + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + auctionPrice + amount + collateral + bondChange + isReward + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/takes.gql b/src/gql/queries/takes.gql new file mode 100644 index 0000000..04c5ac8 --- /dev/null +++ b/src/gql/queries/takes.gql @@ -0,0 +1,85 @@ +query takes($block: Block_height, $where: Take_filter, $orderBy: Take_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + takes(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + taker + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + borrower + liquidationAuction{ + id + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + kicker + kickTime + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice + } + loan{ + id + poolAddress + borrower + inLiquidation + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np + } + auctionPrice + amount + collateral + bondChange + isReward + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/token.gql b/src/gql/queries/token.gql new file mode 100644 index 0000000..8ca3037 --- /dev/null +++ b/src/gql/queries/token.gql @@ -0,0 +1,53 @@ +query token($id: ID!, $block: Block_height){ + token(id: $id, block: $block){ + id + symbol + name + decimals + tokenType + poolCount + pools{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + totalSupply + txCount + } +} \ No newline at end of file diff --git a/src/gql/queries/tokens.gql b/src/gql/queries/tokens.gql new file mode 100644 index 0000000..41f3a1c --- /dev/null +++ b/src/gql/queries/tokens.gql @@ -0,0 +1,53 @@ +query tokens($block: Block_height, $where: Token_filter, $orderBy: Token_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + tokens(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + symbol + name + decimals + tokenType + poolCount + pools{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + totalSupply + txCount + } +} \ No newline at end of file diff --git a/src/gql/queries/transfer.gql b/src/gql/queries/transfer.gql new file mode 100644 index 0000000..df80880 --- /dev/null +++ b/src/gql/queries/transfer.gql @@ -0,0 +1,62 @@ +query transfer($id: ID!, $block: Block_height){ + transfer(id: $id, block: $block){ + id + token{ + id + symbol + name + decimals + tokenType + poolCount + totalSupply + txCount + } + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + from + to + tokenId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/transferLP.gql b/src/gql/queries/transferLP.gql new file mode 100644 index 0000000..73f2fb5 --- /dev/null +++ b/src/gql/queries/transferLP.gql @@ -0,0 +1,12 @@ +query transferLP($id: ID!, $block: Block_height){ + transferLP(id: $id, block: $block){ + id + owner + newOwner + indexes + lp + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/transferLPS.gql b/src/gql/queries/transferLPS.gql new file mode 100644 index 0000000..fd5fe06 --- /dev/null +++ b/src/gql/queries/transferLPS.gql @@ -0,0 +1,12 @@ +query transferLPS($block: Block_height, $where: TransferLP_filter, $orderBy: TransferLP_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + transferLPS(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + owner + newOwner + indexes + lp + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/transfers.gql b/src/gql/queries/transfers.gql new file mode 100644 index 0000000..da0373f --- /dev/null +++ b/src/gql/queries/transfers.gql @@ -0,0 +1,62 @@ +query transfers($block: Block_height, $where: Transfer_filter, $orderBy: Transfer_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + transfers(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + token{ + id + symbol + name + decimals + tokenType + poolCount + totalSupply + txCount + } + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + from + to + tokenId + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/updateInterestRate.gql b/src/gql/queries/updateInterestRate.gql new file mode 100644 index 0000000..a8b41b2 --- /dev/null +++ b/src/gql/queries/updateInterestRate.gql @@ -0,0 +1,55 @@ +query updateInterestRate($id: ID!, $block: Block_height){ + updateInterestRate(id: $id, block: $block){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + oldBorrowRate + newBorrowRate + oldLendRate + newLendRate + borrowFeeRate + depositFeeRate + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/updateInterestRates.gql b/src/gql/queries/updateInterestRates.gql new file mode 100644 index 0000000..e75770d --- /dev/null +++ b/src/gql/queries/updateInterestRates.gql @@ -0,0 +1,55 @@ +query updateInterestRates($block: Block_height, $where: UpdateInterestRate_filter, $orderBy: UpdateInterestRate_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + updateInterestRates(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + pool{ + id + createdAtBlockNumber + createdAtTimestamp + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed + } + oldBorrowRate + newBorrowRate + oldLendRate + newLendRate + borrowFeeRate + depositFeeRate + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/voteCast.gql b/src/gql/queries/voteCast.gql new file mode 100644 index 0000000..13c3fde --- /dev/null +++ b/src/gql/queries/voteCast.gql @@ -0,0 +1,13 @@ +query voteCast($id: ID!, $block: Block_height){ + voteCast(id: $id, block: $block){ + id + voter + proposalId + support + weight + reason + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/queries/voteCasts.gql b/src/gql/queries/voteCasts.gql new file mode 100644 index 0000000..20627b1 --- /dev/null +++ b/src/gql/queries/voteCasts.gql @@ -0,0 +1,13 @@ +query voteCasts($block: Block_height, $where: VoteCast_filter, $orderBy: VoteCast_orderBy, $orderDirection: OrderDirection, $first: Int, $skip: Int){ + voteCasts(block: $block, where: $where, orderBy: $orderBy, orderDirection: $orderDirection, first: $first, skip: $skip){ + id + voter + proposalId + support + weight + reason + blockNumber + blockTimestamp + transactionHash + } +} \ No newline at end of file diff --git a/src/gql/subscriptions/index.ts b/src/gql/subscriptions/index.ts new file mode 100644 index 0000000..f12910c --- /dev/null +++ b/src/gql/subscriptions/index.ts @@ -0,0 +1,4 @@ +import fs from 'fs'; +import path from 'path'; + +export const onEvent = fs.readFileSync(path.join(__dirname, 'onEvent.gql'), 'utf8'); diff --git a/src/gql/subscriptions/onEvent.gql b/src/gql/subscriptions/onEvent.gql new file mode 100644 index 0000000..636f90f --- /dev/null +++ b/src/gql/subscriptions/onEvent.gql @@ -0,0 +1,296 @@ +subscription onEvent{ + onEvent{ + block{ + cid + hash + number + timestamp + parentHash + } + tx{ + hash + index + from + to + } + contract + eventIndex + event{ + ... on ApprovalEvent { + owner + approved + tokenId + spender + value + } + ... on ApprovalForAllEvent { + owner + operator + approved + } + ... on BurnEvent { + lender + tokenId + } + ... on MemorializePositionEvent { + lender + tokenId + indexes + } + ... on MintEvent { + lender + pool + tokenId + } + ... on MoveLiquidityEvent { + lender + tokenId + fromIndex + toIndex + lpRedeemedFrom + lpAwardedTo + } + ... on RedeemPositionEvent { + lender + tokenId + indexes + } + ... on TransferEvent { + from + to + tokenId + value + } + ... on PoolCreatedEvent { + pool_ + subsetHash_ + } + ... on DelegateRewardClaimedEvent { + delegateeAddress + distributionId + rewardClaimed + } + ... on DistributionPeriodStartedEvent { + distributionId + startBlock + endBlock + } + ... on FundTreasuryEvent { + amount + treasuryBalance + } + ... on FundedSlateUpdatedEvent { + distributionId + fundedSlateHash + } + ... on ProposalCreatedEvent { + proposalId + proposer + targets + values + signatures + calldatas + startBlock + endBlock + description + } + ... on ProposalExecutedEvent { + proposalId + } + ... on VoteCastEvent { + voter + proposalId + support + weight + reason + } + ... on DelegateChangedEvent { + delegator + fromDelegate + toDelegate + } + ... on DelegateVotesChangedEvent { + delegate + previousBalance + newBalance + } + ... on AddCollateralEvent { + actor + index + amount + lpAwarded + } + ... on AddQuoteTokenEvent { + lender + index + amount + lpAwarded + lup + } + ... on ApproveLPTransferorsEvent { + lender + transferors + } + ... on AuctionNFTSettleEvent { + borrower + collateral + lp + index + } + ... on AuctionSettleEvent { + borrower + collateral + } + ... on BondWithdrawnEvent { + kicker + reciever + amount + } + ... on BucketBankruptcyEvent { + index + lpForfeited + } + ... on BucketTakeEvent { + borrower + index + amount + collateral + bondChange + isReward + } + ... on BucketTakeLPAwardedEvent { + taker + kicker + lpAwardedTaker + lpAwardedKicker + } + ... on DecreaseLPAllowanceEvent { + owner + spender + indexes + amounts + } + ... on DrawDebtEvent { + borrower + amountBorrowed + collateralPledged + lup + } + ... on FlashloanEvent { + receiver + token + amount + } + ... on IncreaseLPAllowanceEvent { + owner + spender + indexes + amounts + } + ... on InterestUpdateFailureEvent { + dummy + } + ... on KickEvent { + borrower + debt + collateral + bond + } + ... on KickReserveAuctionEvent { + claimableReservesRemaining + auctionPrice + currentBurnEpoch + } + ... on LoanStampedEvent { + borrower + } + ... on MoveQuoteTokenEvent { + lender + from + to + amount + lpRedeemedFrom + lpAwardedTo + lup + } + ... on RemoveCollateralEvent { + claimer + index + amount + lpRedeemed + } + ... on RemoveQuoteTokenEvent { + lender + index + amount + lpRedeemed + lup + } + ... on RepayDebtEvent { + borrower + quoteRepaid + collateralPulled + lup + } + ... on ReserveAuctionEvent { + claimableReservesRemaining + auctionPrice + currentBurnEpoch + } + ... on ResetInterestRateEvent { + oldRate + newRate + } + ... on RevokeLPAllowanceEvent { + owner + spender + indexes + } + ... on RevokeLPTransferorsEvent { + lender + transferors + } + ... on SettleEvent { + borrower + settledDebt + } + ... on TakeEvent { + borrower + amount + collateral + bondChange + isReward + } + ... on TransferLPEvent { + owner + newOwner + indexes + lp + } + ... on UpdateInterestRateEvent { + oldRate + newRate + } + ... on AddCollateralNFTEvent { + actor + index + tokenIds + lpAwarded + } + ... on DrawDebtNFTEvent { + borrower + amountBorrowed + tokenIdsPledged + lup + } + ... on MergeOrRemoveCollateralNFTEvent { + actor + collateralMerged + toIndexLps + } + } + proof{ + data + } + } +} \ No newline at end of file diff --git a/src/hooks.ts b/src/hooks.ts new file mode 100644 index 0000000..d45498b --- /dev/null +++ b/src/hooks.ts @@ -0,0 +1,86 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import assert from 'assert'; + +import { + ResultEvent, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + updateStateForMappingType, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + updateStateForElementaryType +} from '@cerc-io/util'; + +import { Indexer } from './indexer'; + +/** + * Hook function to store an initial state. + * @param indexer Indexer instance. + * @param blockHash Hash of the concerned block. + * @param contractAddress Address of the concerned contract. + * @returns Data block to be stored. + */ +export async function createInitialState (indexer: Indexer, contractAddress: string, blockHash: string): Promise { + assert(indexer); + assert(blockHash); + assert(contractAddress); + + // Store an empty State. + const stateData: any = { + state: {} + }; + + // Use updateStateForElementaryType to update initial state with an elementary property. + // Eg. const stateData = updateStateForElementaryType(stateData, '_totalBalance', result.value.toString()); + + // Use updateStateForMappingType to update initial state with a nested property. + // Eg. const stateData = updateStateForMappingType(stateData, '_allowances', [owner, spender], allowance.value.toString()); + + // Return initial state data to be saved. + return stateData; +} + +/** + * Hook function to create state diff. + * @param indexer Indexer instance that contains methods to fetch the contract variable values. + * @param blockHash Block hash of the concerned block. + */ +export async function createStateDiff (indexer: Indexer, blockHash: string): Promise { + assert(indexer); + assert(blockHash); + + // Use indexer.createDiff() method to save custom state diff(s). +} + +/** + * Hook function to create state checkpoint + * @param indexer Indexer instance. + * @param contractAddress Address of the concerned contract. + * @param blockHash Block hash of the concerned block. + * @returns Whether to disable default checkpoint. If false, the state from this hook is updated with that from default checkpoint. + */ +export async function createStateCheckpoint (indexer: Indexer, contractAddress: string, blockHash: string): Promise { + assert(indexer); + assert(blockHash); + assert(contractAddress); + + // Use indexer.createStateCheckpoint() method to create a custom checkpoint. + + // Return false to update the state created by this hook by auto-generated checkpoint state. + // Return true to disable update of the state created by this hook by auto-generated checkpoint state. + return false; +} + +/** + * Event hook function. + * @param indexer Indexer instance that contains methods to fetch and update the contract values in the database. + * @param eventData ResultEvent object containing event information. + */ +export async function handleEvent (indexer: Indexer, eventData: ResultEvent): Promise { + assert(indexer); + assert(eventData); + + // Use indexer methods to index data. + // Pass `diff` parameter to indexer methods as true to save an auto-generated state from the indexed data. +} diff --git a/src/indexer.ts b/src/indexer.ts new file mode 100644 index 0000000..2077a4f --- /dev/null +++ b/src/indexer.ts @@ -0,0 +1,2289 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import assert from 'assert'; +import { DeepPartial, FindConditions, FindManyOptions, ObjectLiteral } from 'typeorm'; +import debug from 'debug'; +import { ethers, constants } from 'ethers'; +import { SelectionNode } from 'graphql'; + +import { JsonFragment } from '@ethersproject/abi'; +import { BaseProvider } from '@ethersproject/providers'; +import { MappingKey, StorageLayout } from '@cerc-io/solidity-mapper'; +import { + Indexer as BaseIndexer, + IndexerInterface, + ValueResult, + ServerConfig, + JobQueue, + Where, + QueryOptions, + BlockHeight, + ResultMeta, + updateSubgraphState, + dumpSubgraphState, + GraphWatcherInterface, + StateKind, + StateStatus, + ResultEvent, + getResultEvent, + DatabaseInterface, + Clients, + EthClient, + UpstreamConfig, + EthFullBlock, + EthFullTransaction, + ExtraEventData +} from '@cerc-io/util'; +import { GraphWatcher } from '@cerc-io/graph-node'; + +import PositionManagerArtifacts from './artifacts/PositionManager.json'; +import ERC20PoolFactoryArtifacts from './artifacts/ERC20PoolFactory.json'; +import ERC721PoolFactoryArtifacts from './artifacts/ERC721PoolFactory.json'; +import GrantFundArtifacts from './artifacts/GrantFund.json'; +import AjnaTokenArtifacts from './artifacts/AjnaToken.json'; +import BurnWrappedAjnaArtifacts from './artifacts/BurnWrappedAjna.json'; +import ERC20PoolArtifacts from './artifacts/ERC20Pool.json'; +import ERC721PoolArtifacts from './artifacts/ERC721Pool.json'; +import { Database, ENTITIES, SUBGRAPH_ENTITIES } from './database'; +import { createInitialState, handleEvent, createStateDiff, createStateCheckpoint } from './hooks'; +import { Contract } from './entity/Contract'; +import { Event } from './entity/Event'; +import { SyncStatus } from './entity/SyncStatus'; +import { StateSyncStatus } from './entity/StateSyncStatus'; +import { BlockProgress } from './entity/BlockProgress'; +import { State } from './entity/State'; +/* eslint-disable @typescript-eslint/no-unused-vars */ +import { Token } from './entity/Token'; +import { PoolFactory } from './entity/PoolFactory'; +import { Pool } from './entity/Pool'; +import { Bucket } from './entity/Bucket'; +import { Lend } from './entity/Lend'; +import { Loan } from './entity/Loan'; +import { Account } from './entity/Account'; +import { LiquidationAuction } from './entity/LiquidationAuction'; +import { ReserveAuction } from './entity/ReserveAuction'; +import { LPTransferorList } from './entity/LPTransferorList'; +import { LPAllowance } from './entity/LPAllowance'; +import { LPAllowanceList } from './entity/LPAllowanceList'; +import { AddCollateral } from './entity/AddCollateral'; +import { AddQuoteToken } from './entity/AddQuoteToken'; +import { AuctionSettle } from './entity/AuctionSettle'; +import { BondWithdrawn } from './entity/BondWithdrawn'; +import { BucketBankruptcy } from './entity/BucketBankruptcy'; +import { BucketTake } from './entity/BucketTake'; +import { BucketTakeLPAwarded } from './entity/BucketTakeLPAwarded'; +import { DrawDebt } from './entity/DrawDebt'; +import { Flashloan } from './entity/Flashloan'; +import { Kick } from './entity/Kick'; +import { LoanStamped } from './entity/LoanStamped'; +import { MoveQuoteToken } from './entity/MoveQuoteToken'; +import { RemoveCollateral } from './entity/RemoveCollateral'; +import { RemoveQuoteToken } from './entity/RemoveQuoteToken'; +import { RepayDebt } from './entity/RepayDebt'; +import { ReserveAuctionKick } from './entity/ReserveAuctionKick'; +import { ReserveAuctionTake } from './entity/ReserveAuctionTake'; +import { ResetInterestRate } from './entity/ResetInterestRate'; +import { Settle } from './entity/Settle'; +import { Take } from './entity/Take'; +import { TransferLP } from './entity/TransferLP'; +import { UpdateInterestRate } from './entity/UpdateInterestRate'; +import { Approval } from './entity/Approval'; +import { ApprovalForAll } from './entity/ApprovalForAll'; +import { MoveLiquidity } from './entity/MoveLiquidity'; +import { Transfer } from './entity/Transfer'; +import { PoolCreated } from './entity/PoolCreated'; +import { AddCollateralNFT } from './entity/AddCollateralNFT'; +import { AuctionNFTSettle } from './entity/AuctionNFTSettle'; +import { DrawDebtNFT } from './entity/DrawDebtNFT'; +import { MergeOrRemoveCollateralNFT } from './entity/MergeOrRemoveCollateralNFT'; +import { Position } from './entity/Position'; +import { PositionLend } from './entity/PositionLend'; +import { Burn } from './entity/Burn'; +import { MemorializePosition } from './entity/MemorializePosition'; +import { Mint } from './entity/Mint'; +import { RedeemPosition } from './entity/RedeemPosition'; +import { GrantFund } from './entity/GrantFund'; +import { DistributionPeriod } from './entity/DistributionPeriod'; +import { Proposal } from './entity/Proposal'; +import { ProposalParams } from './entity/ProposalParams'; +import { DistributionPeriodVote } from './entity/DistributionPeriodVote'; +import { ScreeningVote } from './entity/ScreeningVote'; +import { FundingVote } from './entity/FundingVote'; +import { FundedSlate } from './entity/FundedSlate'; +import { DelegateRewardClaimed } from './entity/DelegateRewardClaimed'; +import { FundTreasury } from './entity/FundTreasury'; +import { FundedSlateUpdated } from './entity/FundedSlateUpdated'; +import { ProposalCreated } from './entity/ProposalCreated'; +import { ProposalExecuted } from './entity/ProposalExecuted'; +import { DistributionPeriodStarted } from './entity/DistributionPeriodStarted'; +import { VoteCast } from './entity/VoteCast'; +import { DelegateChanged } from './entity/DelegateChanged'; +import { DelegateVotesChanged } from './entity/DelegateVotesChanged'; +import { BurnWrap } from './entity/BurnWrap'; +/* eslint-enable @typescript-eslint/no-unused-vars */ + +import { FrothyEntity } from './entity/FrothyEntity'; + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +const log = debug('vulcanize:indexer'); + +const KIND_POSITIONMANAGER = 'PositionManager'; + +const KIND_ERC20POOLFACTORY = 'ERC20PoolFactory'; + +const KIND_ERC721POOLFACTORY = 'ERC721PoolFactory'; + +const KIND_GRANTFUND = 'GrantFund'; + +const KIND_AJNATOKEN = 'AjnaToken'; + +const KIND_BURNWRAPPEDAJNA = 'BurnWrappedAjna'; + +const KIND_ERC20POOL = 'ERC20Pool'; + +const KIND_ERC721POOL = 'ERC721Pool'; + +export class Indexer implements IndexerInterface { + _db: Database; + _ethClient: EthClient; + _ethProvider: BaseProvider; + _baseIndexer: BaseIndexer; + _serverConfig: ServerConfig; + _upstreamConfig: UpstreamConfig; + _graphWatcher: GraphWatcher; + + _abiMap: Map; + _storageLayoutMap: Map; + _contractMap: Map; + eventSignaturesMap: Map; + + _entityTypesMap: Map; + _relationsMap: Map; + + _subgraphStateMap: Map; + + constructor ( + config: { + server: ServerConfig; + upstream: UpstreamConfig; + }, + db: DatabaseInterface, + clients: Clients, + ethProvider: BaseProvider, + jobQueue: JobQueue, + graphWatcher?: GraphWatcherInterface + ) { + assert(db); + assert(clients.ethClient); + + this._db = db as Database; + this._ethClient = clients.ethClient; + this._ethProvider = ethProvider; + this._serverConfig = config.server; + this._upstreamConfig = config.upstream; + this._baseIndexer = new BaseIndexer(config, this._db, this._ethClient, this._ethProvider, jobQueue); + assert(graphWatcher); + this._graphWatcher = graphWatcher as GraphWatcher; + + this._abiMap = new Map(); + this._storageLayoutMap = new Map(); + this._contractMap = new Map(); + this.eventSignaturesMap = new Map(); + + const { abi: PositionManagerABI } = PositionManagerArtifacts; + + const { abi: ERC20PoolFactoryABI } = ERC20PoolFactoryArtifacts; + + const { abi: ERC721PoolFactoryABI } = ERC721PoolFactoryArtifacts; + + const { abi: GrantFundABI } = GrantFundArtifacts; + + const { abi: AjnaTokenABI } = AjnaTokenArtifacts; + + const { abi: BurnWrappedAjnaABI } = BurnWrappedAjnaArtifacts; + + const { abi: ERC20PoolABI } = ERC20PoolArtifacts; + + const { abi: ERC721PoolABI } = ERC721PoolArtifacts; + + assert(PositionManagerABI); + this._abiMap.set(KIND_POSITIONMANAGER, PositionManagerABI); + + const PositionManagerContractInterface = new ethers.utils.Interface(PositionManagerABI); + this._contractMap.set(KIND_POSITIONMANAGER, PositionManagerContractInterface); + + const PositionManagerEventSignatures = Object.values(PositionManagerContractInterface.events).map(value => { + return PositionManagerContractInterface.getEventTopic(value); + }); + this.eventSignaturesMap.set(KIND_POSITIONMANAGER, PositionManagerEventSignatures); + + assert(ERC20PoolFactoryABI); + this._abiMap.set(KIND_ERC20POOLFACTORY, ERC20PoolFactoryABI); + + const ERC20PoolFactoryContractInterface = new ethers.utils.Interface(ERC20PoolFactoryABI); + this._contractMap.set(KIND_ERC20POOLFACTORY, ERC20PoolFactoryContractInterface); + + const ERC20PoolFactoryEventSignatures = Object.values(ERC20PoolFactoryContractInterface.events).map(value => { + return ERC20PoolFactoryContractInterface.getEventTopic(value); + }); + this.eventSignaturesMap.set(KIND_ERC20POOLFACTORY, ERC20PoolFactoryEventSignatures); + + assert(ERC721PoolFactoryABI); + this._abiMap.set(KIND_ERC721POOLFACTORY, ERC721PoolFactoryABI); + + const ERC721PoolFactoryContractInterface = new ethers.utils.Interface(ERC721PoolFactoryABI); + this._contractMap.set(KIND_ERC721POOLFACTORY, ERC721PoolFactoryContractInterface); + + const ERC721PoolFactoryEventSignatures = Object.values(ERC721PoolFactoryContractInterface.events).map(value => { + return ERC721PoolFactoryContractInterface.getEventTopic(value); + }); + this.eventSignaturesMap.set(KIND_ERC721POOLFACTORY, ERC721PoolFactoryEventSignatures); + + assert(GrantFundABI); + this._abiMap.set(KIND_GRANTFUND, GrantFundABI); + + const GrantFundContractInterface = new ethers.utils.Interface(GrantFundABI); + this._contractMap.set(KIND_GRANTFUND, GrantFundContractInterface); + + const GrantFundEventSignatures = Object.values(GrantFundContractInterface.events).map(value => { + return GrantFundContractInterface.getEventTopic(value); + }); + this.eventSignaturesMap.set(KIND_GRANTFUND, GrantFundEventSignatures); + + assert(AjnaTokenABI); + this._abiMap.set(KIND_AJNATOKEN, AjnaTokenABI); + + const AjnaTokenContractInterface = new ethers.utils.Interface(AjnaTokenABI); + this._contractMap.set(KIND_AJNATOKEN, AjnaTokenContractInterface); + + const AjnaTokenEventSignatures = Object.values(AjnaTokenContractInterface.events).map(value => { + return AjnaTokenContractInterface.getEventTopic(value); + }); + this.eventSignaturesMap.set(KIND_AJNATOKEN, AjnaTokenEventSignatures); + + assert(BurnWrappedAjnaABI); + this._abiMap.set(KIND_BURNWRAPPEDAJNA, BurnWrappedAjnaABI); + + const BurnWrappedAjnaContractInterface = new ethers.utils.Interface(BurnWrappedAjnaABI); + this._contractMap.set(KIND_BURNWRAPPEDAJNA, BurnWrappedAjnaContractInterface); + + const BurnWrappedAjnaEventSignatures = Object.values(BurnWrappedAjnaContractInterface.events).map(value => { + return BurnWrappedAjnaContractInterface.getEventTopic(value); + }); + this.eventSignaturesMap.set(KIND_BURNWRAPPEDAJNA, BurnWrappedAjnaEventSignatures); + + assert(ERC20PoolABI); + this._abiMap.set(KIND_ERC20POOL, ERC20PoolABI); + + const ERC20PoolContractInterface = new ethers.utils.Interface(ERC20PoolABI); + this._contractMap.set(KIND_ERC20POOL, ERC20PoolContractInterface); + + const ERC20PoolEventSignatures = Object.values(ERC20PoolContractInterface.events).map(value => { + return ERC20PoolContractInterface.getEventTopic(value); + }); + this.eventSignaturesMap.set(KIND_ERC20POOL, ERC20PoolEventSignatures); + + assert(ERC721PoolABI); + this._abiMap.set(KIND_ERC721POOL, ERC721PoolABI); + + const ERC721PoolContractInterface = new ethers.utils.Interface(ERC721PoolABI); + this._contractMap.set(KIND_ERC721POOL, ERC721PoolContractInterface); + + const ERC721PoolEventSignatures = Object.values(ERC721PoolContractInterface.events).map(value => { + return ERC721PoolContractInterface.getEventTopic(value); + }); + this.eventSignaturesMap.set(KIND_ERC721POOL, ERC721PoolEventSignatures); + + this._entityTypesMap = new Map(); + this._populateEntityTypesMap(); + + this._relationsMap = new Map(); + this._populateRelationsMap(); + + this._subgraphStateMap = new Map(); + } + + get serverConfig (): ServerConfig { + return this._serverConfig; + } + + get upstreamConfig (): UpstreamConfig { + return this._upstreamConfig; + } + + get storageLayoutMap (): Map { + return this._storageLayoutMap; + } + + get graphWatcher (): GraphWatcher { + return this._graphWatcher; + } + + async init (): Promise { + await this._baseIndexer.fetchContracts(); + await this._baseIndexer.fetchStateStatus(); + } + + async getMetaData (block: BlockHeight): Promise { + return this._baseIndexer.getMetaData(block); + } + + getResultEvent (event: Event): ResultEvent { + return getResultEvent(event); + } + + async getStorageValue (storageLayout: StorageLayout, blockHash: string, contractAddress: string, variable: string, ...mappingKeys: MappingKey[]): Promise { + return this._baseIndexer.getStorageValue( + storageLayout, + blockHash, + contractAddress, + variable, + ...mappingKeys + ); + } + + async getEntitiesForBlock (blockHash: string, tableName: string): Promise { + return this._db.getEntitiesForBlock(blockHash, tableName); + } + + async processInitialState (contractAddress: string, blockHash: string): Promise { + // Call initial state hook. + return createInitialState(this, contractAddress, blockHash); + } + + async processStateCheckpoint (contractAddress: string, blockHash: string): Promise { + // Call checkpoint hook. + return createStateCheckpoint(this, contractAddress, blockHash); + } + + async processCanonicalBlock (blockHash: string, blockNumber: number): Promise { + console.time('time:indexer#processCanonicalBlock-finalize_auto_diffs'); + // Finalize staged diff blocks if any. + await this._baseIndexer.finalizeDiffStaged(blockHash); + console.timeEnd('time:indexer#processCanonicalBlock-finalize_auto_diffs'); + + // Call custom stateDiff hook. + await createStateDiff(this, blockHash); + + this._graphWatcher.pruneEntityCacheFrothyBlocks(blockHash, blockNumber); + } + + async processCheckpoint (blockHash: string): Promise { + // Return if checkpointInterval is <= 0. + const checkpointInterval = this._serverConfig.checkpointInterval; + if (checkpointInterval <= 0) return; + + console.time('time:indexer#processCheckpoint-checkpoint'); + await this._baseIndexer.processCheckpoint(this, blockHash, checkpointInterval); + console.timeEnd('time:indexer#processCheckpoint-checkpoint'); + } + + async processCLICheckpoint (contractAddress: string, blockHash?: string): Promise { + return this._baseIndexer.processCLICheckpoint(this, contractAddress, blockHash); + } + + async getPrevState (blockHash: string, contractAddress: string, kind?: string): Promise { + return this._db.getPrevState(blockHash, contractAddress, kind); + } + + async getLatestState (contractAddress: string, kind: StateKind | null, blockNumber?: number): Promise { + return this._db.getLatestState(contractAddress, kind, blockNumber); + } + + async getStatesByHash (blockHash: string): Promise { + return this._baseIndexer.getStatesByHash(blockHash); + } + + async getStateByCID (cid: string): Promise { + return this._baseIndexer.getStateByCID(cid); + } + + async getStates (where: FindConditions): Promise { + return this._db.getStates(where); + } + + getStateData (state: State): any { + return this._baseIndexer.getStateData(state); + } + + // Method used to create auto diffs (diff_staged). + async createDiffStaged (contractAddress: string, blockHash: string, data: any): Promise { + console.time('time:indexer#createDiffStaged-auto_diff'); + await this._baseIndexer.createDiffStaged(contractAddress, blockHash, data); + console.timeEnd('time:indexer#createDiffStaged-auto_diff'); + } + + // Method to be used by createStateDiff hook. + async createDiff (contractAddress: string, blockHash: string, data: any): Promise { + const block = await this.getBlockProgress(blockHash); + assert(block); + + await this._baseIndexer.createDiff(contractAddress, block, data); + } + + // Method to be used by createStateCheckpoint hook. + async createStateCheckpoint (contractAddress: string, blockHash: string, data: any): Promise { + const block = await this.getBlockProgress(blockHash); + assert(block); + + return this._baseIndexer.createStateCheckpoint(contractAddress, block, data); + } + + // Method to be used by export-state CLI. + async createCheckpoint (contractAddress: string, blockHash: string): Promise { + const block = await this.getBlockProgress(blockHash); + assert(block); + + return this._baseIndexer.createCheckpoint(this, contractAddress, block); + } + + // Method to be used by fill-state CLI. + async createInit (blockHash: string, blockNumber: number): Promise { + // Create initial state for contracts. + await this._baseIndexer.createInit(this, blockHash, blockNumber); + } + + async saveOrUpdateState (state: State): Promise { + return this._baseIndexer.saveOrUpdateState(state); + } + + async removeStates (blockNumber: number, kind: StateKind): Promise { + await this._baseIndexer.removeStates(blockNumber, kind); + } + + async getSubgraphEntity ( + entity: new () => Entity, + id: string, + block: BlockHeight, + selections: ReadonlyArray = [] + ): Promise { + const data = await this._graphWatcher.getEntity(entity, id, this._relationsMap, block, selections); + + return data; + } + + async getSubgraphEntities ( + entity: new () => Entity, + block: BlockHeight, + where: { [key: string]: any } = {}, + queryOptions: QueryOptions = {}, + selections: ReadonlyArray = [] + ): Promise { + return this._graphWatcher.getEntities(entity, this._relationsMap, block, where, queryOptions, selections); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + async triggerIndexingOnEvent (event: Event, extraData: ExtraEventData): Promise { + const resultEvent = this.getResultEvent(event); + + console.time('time:indexer#processEvent-mapping_code'); + // Call subgraph handler for event. + await this._graphWatcher.handleEvent(resultEvent, extraData); + console.timeEnd('time:indexer#processEvent-mapping_code'); + + // Call custom hook function for indexing on event. + await handleEvent(this, resultEvent); + } + + async processEvent (event: Event, extraData: ExtraEventData): Promise { + // Trigger indexing of data based on the event. + await this.triggerIndexingOnEvent(event, extraData); + } + + async processBlock (blockProgress: BlockProgress): Promise { + console.time('time:indexer#processBlock-init_state'); + // Call a function to create initial state for contracts. + await this._baseIndexer.createInit(this, blockProgress.blockHash, blockProgress.blockNumber); + console.timeEnd('time:indexer#processBlock-init_state'); + + this._graphWatcher.updateEntityCacheFrothyBlocks(blockProgress); + } + + async processBlockAfterEvents (blockHash: string, blockNumber: number, extraData: ExtraEventData): Promise { + console.time('time:indexer#processBlockAfterEvents-mapping_code'); + // Call subgraph handler for block. + await this._graphWatcher.handleBlock(blockHash, blockNumber, extraData); + console.timeEnd('time:indexer#processBlockAfterEvents-mapping_code'); + + console.time('time:indexer#processBlockAfterEvents-dump_subgraph_state'); + // Persist subgraph state to the DB. + await this.dumpSubgraphState(blockHash); + console.timeEnd('time:indexer#processBlockAfterEvents-dump_subgraph_state'); + } + + parseEventNameAndArgs (kind: string, logObj: any): any { + const { topics, data } = logObj; + + const contract = this._contractMap.get(kind); + assert(contract); + + const logDescription = contract.parseLog({ data, topics }); + + const { eventName, eventInfo, eventSignature } = this._baseIndexer.parseEvent(logDescription); + + return { + eventName, + eventInfo, + eventSignature + }; + } + + async getStateSyncStatus (): Promise { + return this._db.getStateSyncStatus(); + } + + async updateStateSyncStatusIndexedBlock (blockNumber: number, force?: boolean): Promise { + if (!this._serverConfig.enableState) { + return; + } + + const dbTx = await this._db.createTransactionRunner(); + let res; + + try { + res = await this._db.updateStateSyncStatusIndexedBlock(dbTx, blockNumber, force); + await dbTx.commitTransaction(); + } catch (error) { + await dbTx.rollbackTransaction(); + throw error; + } finally { + await dbTx.release(); + } + + return res; + } + + async updateStateSyncStatusCheckpointBlock (blockNumber: number, force?: boolean): Promise { + const dbTx = await this._db.createTransactionRunner(); + let res; + + try { + res = await this._db.updateStateSyncStatusCheckpointBlock(dbTx, blockNumber, force); + await dbTx.commitTransaction(); + } catch (error) { + await dbTx.rollbackTransaction(); + throw error; + } finally { + await dbTx.release(); + } + + return res; + } + + async getLatestCanonicalBlock (): Promise { + const syncStatus = await this.getSyncStatus(); + assert(syncStatus); + + if (syncStatus.latestCanonicalBlockHash === constants.HashZero) { + return; + } + + const latestCanonicalBlock = await this.getBlockProgress(syncStatus.latestCanonicalBlockHash); + assert(latestCanonicalBlock); + + return latestCanonicalBlock; + } + + async getLatestStateIndexedBlock (): Promise { + return this._baseIndexer.getLatestStateIndexedBlock(); + } + + async addContracts (): Promise { + // Watching all the contracts in the subgraph. + await this._graphWatcher.addContracts(); + } + + async watchContract (address: string, kind: string, checkpoint: boolean, startingBlock: number, context?: any): Promise { + return this._baseIndexer.watchContract(address, kind, checkpoint, startingBlock, context); + } + + updateStateStatusMap (address: string, stateStatus: StateStatus): void { + this._baseIndexer.updateStateStatusMap(address, stateStatus); + } + + cacheContract (contract: Contract): void { + return this._baseIndexer.cacheContract(contract); + } + + async saveEventEntity (dbEvent: Event): Promise { + return this._baseIndexer.saveEventEntity(dbEvent); + } + + async saveEvents (dbEvents: Event[]): Promise { + return this._baseIndexer.saveEvents(dbEvents); + } + + async getEventsByFilter (blockHash: string, contract?: string, name?: string): Promise> { + return this._baseIndexer.getEventsByFilter(blockHash, contract, name); + } + + isWatchedContract (address : string): Contract | undefined { + return this._baseIndexer.isWatchedContract(address); + } + + getWatchedContracts (): Contract[] { + return this._baseIndexer.getWatchedContracts(); + } + + getContractsByKind (kind: string): Contract[] { + return this._baseIndexer.getContractsByKind(kind); + } + + async getProcessedBlockCountForRange (fromBlockNumber: number, toBlockNumber: number): Promise<{ expected: number, actual: number }> { + return this._baseIndexer.getProcessedBlockCountForRange(fromBlockNumber, toBlockNumber); + } + + async getEventsInRange (fromBlockNumber: number, toBlockNumber: number): Promise> { + return this._baseIndexer.getEventsInRange(fromBlockNumber, toBlockNumber, this._serverConfig.maxEventsBlockRange); + } + + async getSyncStatus (): Promise { + return this._baseIndexer.getSyncStatus(); + } + + async getBlocks (blockFilter: { blockHash?: string, blockNumber?: number }): Promise { + return this._baseIndexer.getBlocks(blockFilter); + } + + async updateSyncStatusIndexedBlock (blockHash: string, blockNumber: number, force = false): Promise { + return this._baseIndexer.updateSyncStatusIndexedBlock(blockHash, blockNumber, force); + } + + async updateSyncStatusChainHead (blockHash: string, blockNumber: number, force = false): Promise { + return this._baseIndexer.updateSyncStatusChainHead(blockHash, blockNumber, force); + } + + async updateSyncStatusCanonicalBlock (blockHash: string, blockNumber: number, force = false): Promise { + const syncStatus = this._baseIndexer.updateSyncStatusCanonicalBlock(blockHash, blockNumber, force); + await this.pruneFrothyEntities(blockNumber); + + return syncStatus; + } + + async updateSyncStatusProcessedBlock (blockHash: string, blockNumber: number, force = false): Promise { + return this._baseIndexer.updateSyncStatusProcessedBlock(blockHash, blockNumber, force); + } + + async updateSyncStatusIndexingError (hasIndexingError: boolean): Promise { + return this._baseIndexer.updateSyncStatusIndexingError(hasIndexingError); + } + + async updateSyncStatus (syncStatus: DeepPartial): Promise { + return this._baseIndexer.updateSyncStatus(syncStatus); + } + + async getEvent (id: string): Promise { + return this._baseIndexer.getEvent(id); + } + + async getBlockProgress (blockHash: string): Promise { + return this._baseIndexer.getBlockProgress(blockHash); + } + + async getBlockProgressEntities (where: FindConditions, options: FindManyOptions): Promise { + return this._baseIndexer.getBlockProgressEntities(where, options); + } + + async getBlocksAtHeight (height: number, isPruned: boolean): Promise { + return this._baseIndexer.getBlocksAtHeight(height, isPruned); + } + + async fetchAndSaveFilteredEventsAndBlocks (startBlock: number, endBlock: number): Promise<{ + blockProgress: BlockProgress, + events: DeepPartial[], + ethFullBlock: EthFullBlock; + ethFullTransactions: EthFullTransaction[]; + }[]> { + return this._baseIndexer.fetchAndSaveFilteredEventsAndBlocks(startBlock, endBlock, this.eventSignaturesMap, this.parseEventNameAndArgs.bind(this)); + } + + async fetchEventsForContracts (blockHash: string, blockNumber: number, addresses: string[]): Promise[]> { + return this._baseIndexer.fetchEventsForContracts(blockHash, blockNumber, addresses, this.eventSignaturesMap, this.parseEventNameAndArgs.bind(this)); + } + + async saveBlockAndFetchEvents (block: DeepPartial): Promise<[ + BlockProgress, + DeepPartial[], + EthFullTransaction[] + ]> { + return this._saveBlockAndFetchEvents(block); + } + + async getBlockEvents (blockHash: string, where: Where, queryOptions: QueryOptions): Promise> { + return this._baseIndexer.getBlockEvents(blockHash, where, queryOptions); + } + + async removeUnknownEvents (block: BlockProgress): Promise { + return this._baseIndexer.removeUnknownEvents(Event, block); + } + + async markBlocksAsPruned (blocks: BlockProgress[]): Promise { + await this._baseIndexer.markBlocksAsPruned(blocks); + + await this._graphWatcher.pruneEntities(FrothyEntity, blocks, SUBGRAPH_ENTITIES); + } + + async pruneFrothyEntities (blockNumber: number): Promise { + await this._graphWatcher.pruneFrothyEntities(FrothyEntity, blockNumber); + } + + async resetLatestEntities (blockNumber: number): Promise { + await this._graphWatcher.resetLatestEntities(blockNumber); + } + + async updateBlockProgress (block: BlockProgress, lastProcessedEventIndex: number): Promise { + return this._baseIndexer.updateBlockProgress(block, lastProcessedEventIndex); + } + + async getAncestorAtHeight (blockHash: string, height: number): Promise { + return this._baseIndexer.getAncestorAtHeight(blockHash, height); + } + + async resetWatcherToBlock (blockNumber: number): Promise { + const entities = [...ENTITIES, FrothyEntity]; + await this._baseIndexer.resetWatcherToBlock(blockNumber, entities); + + await this.resetLatestEntities(blockNumber); + } + + async clearProcessedBlockData (block: BlockProgress): Promise { + const entities = [...ENTITIES, FrothyEntity]; + await this._baseIndexer.clearProcessedBlockData(block, entities); + + await this.resetLatestEntities(block.blockNumber); + } + + getEntityTypesMap (): Map { + return this._entityTypesMap; + } + + getRelationsMap (): Map { + return this._relationsMap; + } + + updateSubgraphState (contractAddress: string, data: any): void { + return updateSubgraphState(this._subgraphStateMap, contractAddress, data); + } + + async dumpSubgraphState (blockHash: string, isStateFinalized = false): Promise { + return dumpSubgraphState(this, this._subgraphStateMap, blockHash, isStateFinalized); + } + + _populateEntityTypesMap (): void { + this._entityTypesMap.set('Token', { + id: 'Bytes', + symbol: 'String', + name: 'String', + decimals: 'Int', + tokenType: 'String', + poolCount: 'BigInt', + pools: 'Pool', + totalSupply: 'BigInt', + txCount: 'BigInt' + }); + this._entityTypesMap.set('PoolFactory', { + id: 'Bytes', + poolType: 'String', + poolCount: 'BigInt', + pools: 'Pool', + txCount: 'BigInt' + }); + this._entityTypesMap.set('Pool', { + id: 'Bytes', + createdAtBlockNumber: 'BigInt', + createdAtTimestamp: 'BigInt', + collateralToken: 'Token', + quoteToken: 'Token', + poolSize: 'BigDecimal', + t0debt: 'BigDecimal', + inflator: 'BigDecimal', + borrowRate: 'BigDecimal', + lendRate: 'BigDecimal', + borrowFeeRate: 'BigDecimal', + depositFeeRate: 'BigDecimal', + pledgedCollateral: 'BigDecimal', + totalInterestEarned: 'BigDecimal', + txCount: 'BigInt', + poolType: 'String', + loansCount: 'BigInt', + maxBorrower: 'Bytes', + quoteTokenFlashloaned: 'BigDecimal', + collateralFlashloaned: 'BigDecimal', + hpb: 'BigDecimal', + hpbIndex: 'Int', + htp: 'BigDecimal', + htpIndex: 'Int', + lup: 'BigDecimal', + lupIndex: 'Int', + reserves: 'BigDecimal', + claimableReserves: 'BigDecimal', + claimableReservesRemaining: 'BigDecimal', + burnEpoch: 'BigInt', + totalAjnaBurned: 'BigDecimal', + reserveAuctions: 'ReserveAuction', + minDebtAmount: 'BigDecimal', + actualUtilization: 'BigDecimal', + targetUtilization: 'BigDecimal', + totalBondEscrowed: 'BigDecimal', + liquidationAuctions: 'LiquidationAuction', + quoteTokenBalance: 'BigDecimal', + collateralBalance: 'BigDecimal', + subsetHash: 'Bytes', + tokenIdsPledged: 'BigInt', + bucketTokenIds: 'BigInt', + tokenIdsAllowed: 'BigInt' + }); + this._entityTypesMap.set('Bucket', { + id: 'Bytes', + bucketIndex: 'Int', + bucketPrice: 'BigDecimal', + exchangeRate: 'BigDecimal', + poolAddress: 'String', + pool: 'Pool', + collateral: 'BigDecimal', + deposit: 'BigDecimal', + lpb: 'BigDecimal', + lends: 'Lend', + positionLends: 'PositionLend' + }); + this._entityTypesMap.set('Lend', { + id: 'Bytes', + bucket: 'Bucket', + bucketIndex: 'Int', + poolAddress: 'String', + lender: 'Bytes', + pool: 'Pool', + lpb: 'BigDecimal', + lpbValueInQuote: 'BigDecimal', + depositTime: 'BigInt' + }); + this._entityTypesMap.set('Loan', { + id: 'Bytes', + poolAddress: 'String', + borrower: 'Bytes', + pool: 'Pool', + inLiquidation: 'Boolean', + liquidationAuction: 'LiquidationAuction', + collateralPledged: 'BigDecimal', + thresholdPrice: 'BigDecimal', + tokenIdsPledged: 'BigInt', + t0debt: 'BigDecimal', + t0Np: 'BigDecimal' + }); + this._entityTypesMap.set('Account', { + id: 'Bytes', + pools: 'Pool', + kicks: 'Kick', + lends: 'Lend', + loans: 'Loan', + settles: 'Settle', + takes: 'Take', + reserveAuctions: 'ReserveAuction', + proposalsCreated: 'Proposal', + proposalsExecuted: 'Proposal', + delegatedTo: 'Account', + delegatedFrom: 'Account', + rewardsClaimed: 'BigDecimal', + distributionPeriodVotes: 'DistributionPeriodVote', + tokensDelegated: 'BigDecimal', + positions: 'Position', + txCount: 'BigInt' + }); + this._entityTypesMap.set('LiquidationAuction', { + id: 'Bytes', + pool: 'Pool', + borrower: 'Bytes', + lastTakePrice: 'BigDecimal', + collateral: 'BigDecimal', + collateralRemaining: 'BigDecimal', + debt: 'BigDecimal', + debtRemaining: 'BigDecimal', + loan: 'Loan', + kicker: 'Bytes', + kick: 'Kick', + kickTime: 'BigInt', + takes: 'Take', + bucketTakes: 'BucketTake', + settles: 'Settle', + settle: 'AuctionSettle', + settleTime: 'BigInt', + settled: 'Boolean', + bondSize: 'BigDecimal', + bondFactor: 'BigDecimal', + neutralPrice: 'BigDecimal', + referencePrice: 'BigDecimal', + thresholdPrice: 'BigDecimal' + }); + this._entityTypesMap.set('ReserveAuction', { + id: 'Bytes', + pool: 'Pool', + claimableReservesRemaining: 'BigDecimal', + lastTakePrice: 'BigDecimal', + burnEpoch: 'BigInt', + kick: 'ReserveAuctionKick', + takes: 'ReserveAuctionTake', + ajnaBurned: 'BigDecimal' + }); + this._entityTypesMap.set('LPTransferorList', { + id: 'Bytes', + pool: 'Pool', + lender: 'Bytes', + transferors: 'Bytes' + }); + this._entityTypesMap.set('LPAllowance', { + id: 'Bytes', + index: 'Int', + amount: 'BigDecimal' + }); + this._entityTypesMap.set('LPAllowanceList', { + id: 'Bytes', + pool: 'Pool', + lender: 'Bytes', + spender: 'Bytes', + allowances: 'LPAllowance' + }); + this._entityTypesMap.set('AddCollateral', { + id: 'Bytes', + pool: 'Pool', + bucket: 'Bucket', + actor: 'Bytes', + index: 'Int', + amount: 'BigDecimal', + lpAwarded: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('AddQuoteToken', { + id: 'Bytes', + pool: 'Pool', + bucket: 'Bucket', + lender: 'Bytes', + index: 'Int', + amount: 'BigDecimal', + lpAwarded: 'BigDecimal', + lup: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('AuctionSettle', { + id: 'Bytes', + pool: 'Pool', + loan: 'Loan', + borrower: 'Bytes', + collateral: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('BondWithdrawn', { + id: 'Bytes', + kicker: 'Bytes', + reciever: 'Bytes', + amount: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('BucketBankruptcy', { + id: 'Bytes', + bucket: 'Bucket', + index: 'Int', + pool: 'Pool', + lpForfeited: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('BucketTake', { + id: 'Bytes', + borrower: 'Bytes', + taker: 'Bytes', + liquidationAuction: 'LiquidationAuction', + loan: 'Loan', + pool: 'Pool', + index: 'Int', + auctionPrice: 'BigDecimal', + amount: 'BigDecimal', + collateral: 'BigDecimal', + bondChange: 'BigDecimal', + isReward: 'Boolean', + lpAwarded: 'BucketTakeLPAwarded', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('BucketTakeLPAwarded', { + id: 'Bytes', + taker: 'Bytes', + pool: 'Pool', + kicker: 'Bytes', + lpAwardedTaker: 'BigDecimal', + lpAwardedKicker: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('DrawDebt', { + id: 'Bytes', + pool: 'Pool', + borrower: 'Bytes', + amountBorrowed: 'BigDecimal', + collateralPledged: 'BigDecimal', + lup: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('Flashloan', { + id: 'Bytes', + pool: 'Pool', + borrower: 'Bytes', + amount: 'BigDecimal' + }); + this._entityTypesMap.set('Kick', { + id: 'Bytes', + kicker: 'Bytes', + pool: 'Pool', + loan: 'Loan', + locked: 'BigDecimal', + claimable: 'BigDecimal', + liquidationAuction: 'LiquidationAuction', + borrower: 'Bytes', + debt: 'BigDecimal', + collateral: 'BigDecimal', + bond: 'BigDecimal', + startingPrice: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('LoanStamped', { + id: 'Bytes', + pool: 'Pool', + borrower: 'Bytes', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('MoveQuoteToken', { + id: 'Bytes', + pool: 'Pool', + lender: 'Bytes', + from: 'Bucket', + to: 'Bucket', + amount: 'BigDecimal', + lpRedeemedFrom: 'BigDecimal', + lpAwardedTo: 'BigDecimal', + lup: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('RemoveCollateral', { + id: 'Bytes', + pool: 'Pool', + bucket: 'Bucket', + claimer: 'Bytes', + index: 'Int', + amount: 'BigDecimal', + lpRedeemed: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('RemoveQuoteToken', { + id: 'Bytes', + pool: 'Pool', + bucket: 'Bucket', + lender: 'Bytes', + index: 'Int', + amount: 'BigDecimal', + lpRedeemed: 'BigDecimal', + lup: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('RepayDebt', { + id: 'Bytes', + pool: 'Pool', + borrower: 'Bytes', + quoteRepaid: 'BigDecimal', + collateralPulled: 'BigDecimal', + lup: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('ReserveAuctionKick', { + id: 'Bytes', + kicker: 'Bytes', + reserveAuction: 'ReserveAuction', + pool: 'Pool', + claimableReserves: 'BigDecimal', + startingPrice: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('ReserveAuctionTake', { + id: 'Bytes', + taker: 'Bytes', + reserveAuction: 'ReserveAuction', + pool: 'Pool', + claimableReservesRemaining: 'BigDecimal', + auctionPrice: 'BigDecimal', + quotePurchased: 'BigDecimal', + ajnaBurned: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('ResetInterestRate', { + id: 'Bytes', + pool: 'Pool', + oldBorrowRate: 'BigDecimal', + newBorrowRate: 'BigDecimal', + oldLendRate: 'BigDecimal', + newLendRate: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('Settle', { + id: 'Bytes', + pool: 'Pool', + liquidationAuction: 'LiquidationAuction', + loan: 'Loan', + borrower: 'Bytes', + settledDebt: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('Take', { + id: 'Bytes', + taker: 'Bytes', + pool: 'Pool', + borrower: 'Bytes', + liquidationAuction: 'LiquidationAuction', + loan: 'Loan', + auctionPrice: 'BigDecimal', + amount: 'BigDecimal', + collateral: 'BigDecimal', + bondChange: 'BigDecimal', + isReward: 'Boolean', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('TransferLP', { + id: 'Bytes', + owner: 'Bytes', + newOwner: 'Bytes', + indexes: 'Int', + lp: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('UpdateInterestRate', { + id: 'Bytes', + pool: 'Pool', + oldBorrowRate: 'BigDecimal', + newBorrowRate: 'BigDecimal', + oldLendRate: 'BigDecimal', + newLendRate: 'BigDecimal', + borrowFeeRate: 'BigDecimal', + depositFeeRate: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('Approval', { + id: 'Bytes', + owner: 'Bytes', + approved: 'Bytes', + tokenId: 'BigInt', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('ApprovalForAll', { + id: 'Bytes', + owner: 'Bytes', + operator: 'Bytes', + approved: 'Boolean', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('MoveLiquidity', { + id: 'Bytes', + lender: 'Bytes', + tokenId: 'BigInt', + pool: 'Pool', + fromIndex: 'Int', + toIndex: 'Int', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('Transfer', { + id: 'Bytes', + token: 'Token', + pool: 'Pool', + from: 'Bytes', + to: 'Bytes', + tokenId: 'BigInt', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('PoolCreated', { + id: 'Bytes', + pool: 'Pool', + poolType: 'String', + factory: 'PoolFactory', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('AddCollateralNFT', { + id: 'Bytes', + pool: 'Pool', + bucket: 'Bucket', + actor: 'Bytes', + index: 'BigInt', + tokenIds: 'BigInt', + lpAwarded: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('AuctionNFTSettle', { + id: 'Bytes', + pool: 'Pool', + loan: 'Loan', + borrower: 'Bytes', + collateral: 'BigDecimal', + lp: 'BigDecimal', + index: 'Int', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('DrawDebtNFT', { + id: 'Bytes', + pool: 'Pool', + borrower: 'Bytes', + amountBorrowed: 'BigDecimal', + tokenIdsPledged: 'BigInt', + lup: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('MergeOrRemoveCollateralNFT', { + id: 'Bytes', + pool: 'Pool', + actor: 'Bytes', + collateralMerged: 'BigDecimal', + toIndexLps: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('Position', { + id: 'Bytes', + tokenId: 'BigInt', + indexes: 'PositionLend', + owner: 'Bytes', + pool: 'Pool', + token: 'Token', + tokenURI: 'String' + }); + this._entityTypesMap.set('PositionLend', { + id: 'Bytes', + bucket: 'Bucket', + bucketIndex: 'Int', + depositTime: 'BigInt', + lpb: 'BigDecimal', + lpbValueInQuote: 'BigDecimal', + tokenId: 'BigInt' + }); + this._entityTypesMap.set('Burn', { + id: 'Bytes', + lender: 'Bytes', + tokenId: 'BigInt', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('MemorializePosition', { + id: 'Bytes', + pool: 'Pool', + lender: 'Bytes', + tokenId: 'BigInt', + indexes: 'Int', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('Mint', { + id: 'Bytes', + lender: 'Bytes', + pool: 'Pool', + tokenId: 'BigInt', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('RedeemPosition', { + id: 'Bytes', + pool: 'Pool', + lender: 'Bytes', + tokenId: 'BigInt', + indexes: 'Int', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('GrantFund', { + id: 'Bytes', + treasury: 'BigDecimal', + distributionPeriods: 'DistributionPeriod', + totalDelegationRewardsClaimed: 'BigDecimal' + }); + this._entityTypesMap.set('DistributionPeriod', { + id: 'Bytes', + distributionId: 'BigInt', + startBlock: 'BigInt', + endBlock: 'BigInt', + topSlate: 'FundedSlate', + slatesSubmitted: 'FundedSlate', + fundsAvailable: 'BigDecimal', + delegationRewardsClaimed: 'BigDecimal', + fundingVotePowerUsed: 'BigDecimal', + screeningVotesCast: 'BigDecimal', + votes: 'DistributionPeriodVote', + proposals: 'Proposal', + totalTokensDistributed: 'BigDecimal' + }); + this._entityTypesMap.set('Proposal', { + id: 'Bytes', + proposalId: 'BigInt', + description: 'String', + distribution: 'DistributionPeriod', + executed: 'Boolean', + screeningVotesReceived: 'BigDecimal', + fundingVotesReceived: 'BigDecimal', + fundingVotesNegative: 'BigDecimal', + fundingVotesPositive: 'BigDecimal', + totalTokensRequested: 'BigDecimal', + params: 'ProposalParams' + }); + this._entityTypesMap.set('ProposalParams', { + id: 'Bytes', + target: 'Bytes', + value: 'BigInt', + calldata: 'Bytes', + recipient: 'Bytes', + tokensRequested: 'BigDecimal' + }); + this._entityTypesMap.set('DistributionPeriodVote', { + id: 'Bytes', + voter: 'Account', + distribution: 'DistributionPeriod', + initialFundingStageVotingPowerRecordedPostVote: 'BigDecimal', + remainingFundingStageVotingPowerRecordedPostVote: 'BigDecimal', + initialScreeningStageVotingPowerRecordedPostVote: 'BigDecimal', + remainingScreeningStageVotingPowerRecordedPostVote: 'BigDecimal', + screeningVotes: 'ScreeningVote', + fundingVotes: 'FundingVote' + }); + this._entityTypesMap.set('ScreeningVote', { + id: 'Bytes', + distribution: 'DistributionPeriod', + voter: 'Account', + proposal: 'Proposal', + totalVotesCast: 'BigDecimal', + votesCast: 'VoteCast' + }); + this._entityTypesMap.set('FundingVote', { + id: 'Bytes', + distribution: 'DistributionPeriod', + voter: 'Account', + proposal: 'Proposal', + totalVotesCast: 'BigDecimal', + votingPowerUsed: 'BigDecimal', + votesCast: 'VoteCast' + }); + this._entityTypesMap.set('FundedSlate', { + id: 'Bytes', + distribution: 'DistributionPeriod', + proposals: 'Proposal', + totalTokensRequested: 'BigDecimal', + totalFundingVotesReceived: 'BigDecimal', + updateBlock: 'BigInt' + }); + this._entityTypesMap.set('DelegateRewardClaimed', { + id: 'Bytes', + delegateeAddress_: 'Bytes', + distribution: 'DistributionPeriod', + rewardClaimed_: 'BigInt', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('FundTreasury', { + id: 'Bytes', + amount: 'BigInt', + treasuryBalance: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('FundedSlateUpdated', { + id: 'Bytes', + distributionId_: 'BigInt', + fundedSlateHash_: 'Bytes', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('ProposalCreated', { + id: 'Bytes', + proposal: 'Proposal', + proposer: 'Bytes', + targets: 'Bytes', + values: 'BigDecimal', + signatures: 'String', + calldatas: 'Bytes', + startBlock: 'BigInt', + endBlock: 'BigInt', + description: 'String', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('ProposalExecuted', { + id: 'Bytes', + proposalId: 'BigInt', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('DistributionPeriodStarted', { + id: 'Bytes', + distribution: 'DistributionPeriod', + startBlock: 'BigInt', + endBlock: 'BigInt', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('VoteCast', { + id: 'Bytes', + voter: 'Bytes', + proposalId: 'BigInt', + support: 'Int', + weight: 'BigDecimal', + reason: 'String', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('DelegateChanged', { + id: 'Bytes', + delegator: 'Bytes', + fromDelegate: 'Bytes', + toDelegate: 'Bytes', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('DelegateVotesChanged', { + id: 'Bytes', + delegate: 'Bytes', + previousBalance: 'BigDecimal', + newBalance: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + this._entityTypesMap.set('BurnWrap', { + id: 'Bytes', + wrapper: 'Bytes', + account: 'Account', + amount: 'BigDecimal', + blockNumber: 'BigInt', + blockTimestamp: 'BigInt', + transactionHash: 'Bytes' + }); + } + + _populateRelationsMap (): void { + this._relationsMap.set(Token, { + pools: { + entity: Pool, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(PoolFactory, { + pools: { + entity: Pool, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(Pool, { + collateralToken: { + entity: Token, + isArray: false, + isDerived: false + }, + quoteToken: { + entity: Token, + isArray: false, + isDerived: false + }, + reserveAuctions: { + entity: ReserveAuction, + isArray: true, + isDerived: false + }, + liquidationAuctions: { + entity: LiquidationAuction, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(Bucket, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + lends: { + entity: Lend, + isArray: true, + isDerived: false + }, + positionLends: { + entity: PositionLend, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(Lend, { + bucket: { + entity: Bucket, + isArray: false, + isDerived: false + }, + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(Loan, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + liquidationAuction: { + entity: LiquidationAuction, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(Account, { + pools: { + entity: Pool, + isArray: true, + isDerived: false + }, + kicks: { + entity: Kick, + isArray: true, + isDerived: false + }, + lends: { + entity: Lend, + isArray: true, + isDerived: false + }, + loans: { + entity: Loan, + isArray: true, + isDerived: false + }, + settles: { + entity: Settle, + isArray: true, + isDerived: false + }, + takes: { + entity: Take, + isArray: true, + isDerived: false + }, + reserveAuctions: { + entity: ReserveAuction, + isArray: true, + isDerived: false + }, + proposalsCreated: { + entity: Proposal, + isArray: true, + isDerived: false + }, + proposalsExecuted: { + entity: Proposal, + isArray: true, + isDerived: false + }, + delegatedTo: { + entity: Account, + isArray: false, + isDerived: false + }, + delegatedFrom: { + entity: Account, + isArray: true, + isDerived: false + }, + distributionPeriodVotes: { + entity: DistributionPeriodVote, + isArray: true, + isDerived: false + }, + positions: { + entity: Position, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(LiquidationAuction, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + loan: { + entity: Loan, + isArray: false, + isDerived: false + }, + kick: { + entity: Kick, + isArray: false, + isDerived: false + }, + takes: { + entity: Take, + isArray: true, + isDerived: false + }, + bucketTakes: { + entity: BucketTake, + isArray: true, + isDerived: false + }, + settles: { + entity: Settle, + isArray: true, + isDerived: false + }, + settle: { + entity: AuctionSettle, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(ReserveAuction, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + kick: { + entity: ReserveAuctionKick, + isArray: false, + isDerived: false + }, + takes: { + entity: ReserveAuctionTake, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(LPTransferorList, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(LPAllowanceList, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + allowances: { + entity: LPAllowance, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(AddCollateral, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + bucket: { + entity: Bucket, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(AddQuoteToken, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + bucket: { + entity: Bucket, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(AuctionSettle, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + loan: { + entity: Loan, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(BucketBankruptcy, { + bucket: { + entity: Bucket, + isArray: false, + isDerived: false + }, + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(BucketTake, { + liquidationAuction: { + entity: LiquidationAuction, + isArray: false, + isDerived: false + }, + loan: { + entity: Loan, + isArray: false, + isDerived: false + }, + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + lpAwarded: { + entity: BucketTakeLPAwarded, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(BucketTakeLPAwarded, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(DrawDebt, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(Flashloan, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(Kick, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + loan: { + entity: Loan, + isArray: false, + isDerived: false + }, + liquidationAuction: { + entity: LiquidationAuction, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(LoanStamped, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(MoveQuoteToken, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + from: { + entity: Bucket, + isArray: false, + isDerived: false + }, + to: { + entity: Bucket, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(RemoveCollateral, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + bucket: { + entity: Bucket, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(RemoveQuoteToken, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + bucket: { + entity: Bucket, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(RepayDebt, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(ReserveAuctionKick, { + reserveAuction: { + entity: ReserveAuction, + isArray: false, + isDerived: false + }, + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(ReserveAuctionTake, { + reserveAuction: { + entity: ReserveAuction, + isArray: false, + isDerived: false + }, + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(ResetInterestRate, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(Settle, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + liquidationAuction: { + entity: LiquidationAuction, + isArray: false, + isDerived: false + }, + loan: { + entity: Loan, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(Take, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + liquidationAuction: { + entity: LiquidationAuction, + isArray: false, + isDerived: false + }, + loan: { + entity: Loan, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(UpdateInterestRate, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(MoveLiquidity, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(Transfer, { + token: { + entity: Token, + isArray: false, + isDerived: false + }, + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(PoolCreated, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + factory: { + entity: PoolFactory, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(AddCollateralNFT, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + bucket: { + entity: Bucket, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(AuctionNFTSettle, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + loan: { + entity: Loan, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(DrawDebtNFT, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(MergeOrRemoveCollateralNFT, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(Position, { + indexes: { + entity: PositionLend, + isArray: true, + isDerived: false + }, + pool: { + entity: Pool, + isArray: false, + isDerived: false + }, + token: { + entity: Token, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(PositionLend, { + bucket: { + entity: Bucket, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(MemorializePosition, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(Mint, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(RedeemPosition, { + pool: { + entity: Pool, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(GrantFund, { + distributionPeriods: { + entity: DistributionPeriod, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(DistributionPeriod, { + topSlate: { + entity: FundedSlate, + isArray: false, + isDerived: false + }, + slatesSubmitted: { + entity: FundedSlate, + isArray: true, + isDerived: false + }, + votes: { + entity: DistributionPeriodVote, + isArray: true, + isDerived: false + }, + proposals: { + entity: Proposal, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(Proposal, { + distribution: { + entity: DistributionPeriod, + isArray: false, + isDerived: false + }, + params: { + entity: ProposalParams, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(DistributionPeriodVote, { + voter: { + entity: Account, + isArray: false, + isDerived: false + }, + distribution: { + entity: DistributionPeriod, + isArray: false, + isDerived: false + }, + screeningVotes: { + entity: ScreeningVote, + isArray: true, + isDerived: false + }, + fundingVotes: { + entity: FundingVote, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(ScreeningVote, { + distribution: { + entity: DistributionPeriod, + isArray: false, + isDerived: false + }, + voter: { + entity: Account, + isArray: false, + isDerived: false + }, + proposal: { + entity: Proposal, + isArray: false, + isDerived: false + }, + votesCast: { + entity: VoteCast, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(FundingVote, { + distribution: { + entity: DistributionPeriod, + isArray: false, + isDerived: false + }, + voter: { + entity: Account, + isArray: false, + isDerived: false + }, + proposal: { + entity: Proposal, + isArray: false, + isDerived: false + }, + votesCast: { + entity: VoteCast, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(FundedSlate, { + distribution: { + entity: DistributionPeriod, + isArray: false, + isDerived: false + }, + proposals: { + entity: Proposal, + isArray: true, + isDerived: false + } + }); + this._relationsMap.set(DelegateRewardClaimed, { + distribution: { + entity: DistributionPeriod, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(ProposalCreated, { + proposal: { + entity: Proposal, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(DistributionPeriodStarted, { + distribution: { + entity: DistributionPeriod, + isArray: false, + isDerived: false + } + }); + this._relationsMap.set(BurnWrap, { + account: { + entity: Account, + isArray: false, + isDerived: false + } + }); + } + + async _saveBlockAndFetchEvents ({ + cid: blockCid, + blockHash, + blockNumber, + blockTimestamp, + parentHash + }: DeepPartial): Promise<[ + BlockProgress, + DeepPartial[], + EthFullTransaction[] + ]> { + assert(blockHash); + assert(blockNumber); + + const { events: dbEvents, transactions } = await this._baseIndexer.fetchEvents(blockHash, blockNumber, this.eventSignaturesMap, this.parseEventNameAndArgs.bind(this)); + + const dbTx = await this._db.createTransactionRunner(); + try { + const block = { + cid: blockCid, + blockHash, + blockNumber, + blockTimestamp, + parentHash + }; + + console.time(`time:indexer#_saveBlockAndFetchEvents-db-save-${blockNumber}`); + const blockProgress = await this._db.saveBlockWithEvents(dbTx, block, dbEvents); + await dbTx.commitTransaction(); + console.timeEnd(`time:indexer#_saveBlockAndFetchEvents-db-save-${blockNumber}`); + + return [blockProgress, [], transactions]; + } catch (error) { + await dbTx.rollbackTransaction(); + throw error; + } finally { + await dbTx.release(); + } + } + + async getFullTransactions (txHashList: string[]): Promise { + return this._baseIndexer.getFullTransactions(txHashList); + } +} diff --git a/src/job-runner.ts b/src/job-runner.ts new file mode 100644 index 0000000..93d6820 --- /dev/null +++ b/src/job-runner.ts @@ -0,0 +1,48 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import debug from 'debug'; + +import { JobRunnerCmd } from '@cerc-io/cli'; +import { JobRunner } from '@cerc-io/util'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { Indexer } from './indexer'; +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from './database'; + +const log = debug('vulcanize:job-runner'); + +export const main = async (): Promise => { + const jobRunnerCmd = new JobRunnerCmd(); + await jobRunnerCmd.init(Database); + + const { graphWatcher } = await getGraphDbAndWatcher( + jobRunnerCmd.config.server, + jobRunnerCmd.clients.ethClient, + jobRunnerCmd.ethProvider, + jobRunnerCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await jobRunnerCmd.initIndexer(Indexer, graphWatcher); + + await jobRunnerCmd.exec(async (jobRunner: JobRunner): Promise => { + await jobRunner.subscribeBlockProcessingQueue(); + await jobRunner.subscribeHistoricalProcessingQueue(); + await jobRunner.subscribeEventProcessingQueue(); + await jobRunner.subscribeBlockCheckpointQueue(); + await jobRunner.subscribeHooksQueue(); + }); +}; + +main().then(() => { + log('Starting job runner...'); +}).catch(err => { + log(err); +}); + +process.on('uncaughtException', err => { + log('uncaughtException', err); +}); diff --git a/src/resolvers.ts b/src/resolvers.ts new file mode 100644 index 0000000..2d8c00f --- /dev/null +++ b/src/resolvers.ts @@ -0,0 +1,2884 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import assert from 'assert'; +import debug from 'debug'; +import { GraphQLResolveInfo } from 'graphql'; + +import { + gqlTotalQueryCount, + gqlQueryCount, + getResultState, + IndexerInterface, + GraphQLBigInt, + GraphQLBigDecimal, + BlockHeight, + OrderDirection, + jsonBigIntStringReplacer, + EventWatcher, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + setGQLCacheHints +} from '@cerc-io/util'; + +import { Indexer } from './indexer'; + +import { Token } from './entity/Token'; +import { PoolFactory } from './entity/PoolFactory'; +import { Pool } from './entity/Pool'; +import { Bucket } from './entity/Bucket'; +import { Lend } from './entity/Lend'; +import { Loan } from './entity/Loan'; +import { Account } from './entity/Account'; +import { LiquidationAuction } from './entity/LiquidationAuction'; +import { ReserveAuction } from './entity/ReserveAuction'; +import { LPTransferorList } from './entity/LPTransferorList'; +import { LPAllowance } from './entity/LPAllowance'; +import { LPAllowanceList } from './entity/LPAllowanceList'; +import { AddCollateral } from './entity/AddCollateral'; +import { AddQuoteToken } from './entity/AddQuoteToken'; +import { AuctionSettle } from './entity/AuctionSettle'; +import { BondWithdrawn } from './entity/BondWithdrawn'; +import { BucketBankruptcy } from './entity/BucketBankruptcy'; +import { BucketTake } from './entity/BucketTake'; +import { BucketTakeLPAwarded } from './entity/BucketTakeLPAwarded'; +import { DrawDebt } from './entity/DrawDebt'; +import { Flashloan } from './entity/Flashloan'; +import { Kick } from './entity/Kick'; +import { LoanStamped } from './entity/LoanStamped'; +import { MoveQuoteToken } from './entity/MoveQuoteToken'; +import { RemoveCollateral } from './entity/RemoveCollateral'; +import { RemoveQuoteToken } from './entity/RemoveQuoteToken'; +import { RepayDebt } from './entity/RepayDebt'; +import { ReserveAuctionKick } from './entity/ReserveAuctionKick'; +import { ReserveAuctionTake } from './entity/ReserveAuctionTake'; +import { ResetInterestRate } from './entity/ResetInterestRate'; +import { Settle } from './entity/Settle'; +import { Take } from './entity/Take'; +import { TransferLP } from './entity/TransferLP'; +import { UpdateInterestRate } from './entity/UpdateInterestRate'; +import { Approval } from './entity/Approval'; +import { ApprovalForAll } from './entity/ApprovalForAll'; +import { MoveLiquidity } from './entity/MoveLiquidity'; +import { Transfer } from './entity/Transfer'; +import { PoolCreated } from './entity/PoolCreated'; +import { AddCollateralNFT } from './entity/AddCollateralNFT'; +import { AuctionNFTSettle } from './entity/AuctionNFTSettle'; +import { DrawDebtNFT } from './entity/DrawDebtNFT'; +import { MergeOrRemoveCollateralNFT } from './entity/MergeOrRemoveCollateralNFT'; +import { Position } from './entity/Position'; +import { PositionLend } from './entity/PositionLend'; +import { Burn } from './entity/Burn'; +import { MemorializePosition } from './entity/MemorializePosition'; +import { Mint } from './entity/Mint'; +import { RedeemPosition } from './entity/RedeemPosition'; +import { GrantFund } from './entity/GrantFund'; +import { DistributionPeriod } from './entity/DistributionPeriod'; +import { Proposal } from './entity/Proposal'; +import { ProposalParams } from './entity/ProposalParams'; +import { DistributionPeriodVote } from './entity/DistributionPeriodVote'; +import { ScreeningVote } from './entity/ScreeningVote'; +import { FundingVote } from './entity/FundingVote'; +import { FundedSlate } from './entity/FundedSlate'; +import { DelegateRewardClaimed } from './entity/DelegateRewardClaimed'; +import { FundTreasury } from './entity/FundTreasury'; +import { FundedSlateUpdated } from './entity/FundedSlateUpdated'; +import { ProposalCreated } from './entity/ProposalCreated'; +import { ProposalExecuted } from './entity/ProposalExecuted'; +import { DistributionPeriodStarted } from './entity/DistributionPeriodStarted'; +import { VoteCast } from './entity/VoteCast'; +import { DelegateChanged } from './entity/DelegateChanged'; +import { DelegateVotesChanged } from './entity/DelegateVotesChanged'; +import { BurnWrap } from './entity/BurnWrap'; + +const log = debug('vulcanize:resolver'); + +export const createResolvers = async (indexerArg: IndexerInterface, eventWatcher: EventWatcher): Promise => { + const indexer = indexerArg as Indexer; + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + const gqlCacheConfig = indexer.serverConfig.gqlCache; + + return { + BigInt: GraphQLBigInt, + + BigDecimal: GraphQLBigDecimal, + + Event: { + __resolveType: (obj: any) => { + assert(obj.__typename); + + return obj.__typename; + } + }, + + Subscription: { + onEvent: { + subscribe: () => eventWatcher.getEventIterator() + } + }, + + Mutation: { + watchContract: async (_: any, { address, kind, checkpoint, startingBlock = 1 }: { address: string, kind: string, checkpoint: boolean, startingBlock: number }): Promise => { + log('watchContract', address, kind, checkpoint, startingBlock); + await indexer.watchContract(address, kind, checkpoint, startingBlock); + + return true; + } + }, + + Query: { + token: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('token', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('token').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Token, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + tokens: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('tokens', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('tokens').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Token, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + poolFactory: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('poolFactory', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('poolFactory').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(PoolFactory, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + poolFactories: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('poolFactories', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('poolFactories').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + PoolFactory, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + pool: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('pool', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('pool').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Pool, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + pools: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('pools', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('pools').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Pool, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + bucket: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('bucket', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('bucket').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Bucket, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + buckets: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('buckets', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('buckets').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Bucket, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + lend: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('lend', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('lend').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Lend, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + lends: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('lends', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('lends').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Lend, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + loan: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('loan', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('loan').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Loan, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + loans: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('loans', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('loans').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Loan, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + account: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('account', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('account').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Account, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + accounts: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('accounts', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('accounts').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Account, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + liquidationAuction: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('liquidationAuction', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('liquidationAuction').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(LiquidationAuction, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + liquidationAuctions: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('liquidationAuctions', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('liquidationAuctions').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + LiquidationAuction, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + reserveAuction: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('reserveAuction', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('reserveAuction').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(ReserveAuction, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + reserveAuctions: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('reserveAuctions', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('reserveAuctions').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + ReserveAuction, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + lptransferorList: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('lptransferorList', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('lptransferorList').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(LPTransferorList, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + lptransferorLists: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('lptransferorLists', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('lptransferorLists').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + LPTransferorList, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + lpallowance: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('lpallowance', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('lpallowance').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(LPAllowance, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + lpallowances: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('lpallowances', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('lpallowances').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + LPAllowance, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + lpallowanceList: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('lpallowanceList', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('lpallowanceList').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(LPAllowanceList, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + lpallowanceLists: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('lpallowanceLists', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('lpallowanceLists').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + LPAllowanceList, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + addCollateral: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('addCollateral', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('addCollateral').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(AddCollateral, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + addCollaterals: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('addCollaterals', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('addCollaterals').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + AddCollateral, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + addQuoteToken: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('addQuoteToken', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('addQuoteToken').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(AddQuoteToken, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + addQuoteTokens: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('addQuoteTokens', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('addQuoteTokens').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + AddQuoteToken, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + auctionSettle: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('auctionSettle', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('auctionSettle').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(AuctionSettle, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + auctionSettles: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('auctionSettles', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('auctionSettles').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + AuctionSettle, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + bondWithdrawn: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('bondWithdrawn', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('bondWithdrawn').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(BondWithdrawn, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + bondWithdrawns: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('bondWithdrawns', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('bondWithdrawns').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + BondWithdrawn, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + bucketBankruptcy: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('bucketBankruptcy', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('bucketBankruptcy').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(BucketBankruptcy, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + bucketBankruptcies: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('bucketBankruptcies', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('bucketBankruptcies').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + BucketBankruptcy, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + bucketTake: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('bucketTake', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('bucketTake').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(BucketTake, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + bucketTakes: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('bucketTakes', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('bucketTakes').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + BucketTake, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + bucketTakeLPAwarded: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('bucketTakeLPAwarded', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('bucketTakeLPAwarded').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(BucketTakeLPAwarded, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + bucketTakeLPAwardeds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('bucketTakeLPAwardeds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('bucketTakeLPAwardeds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + BucketTakeLPAwarded, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + drawDebt: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('drawDebt', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('drawDebt').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(DrawDebt, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + drawDebts: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('drawDebts', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('drawDebts').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + DrawDebt, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + flashloan: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('flashloan', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('flashloan').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Flashloan, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + flashloans: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('flashloans', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('flashloans').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Flashloan, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + kick: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('kick', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('kick').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Kick, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + kicks: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('kicks', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('kicks').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Kick, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + loanStamped: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('loanStamped', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('loanStamped').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(LoanStamped, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + loanStampeds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('loanStampeds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('loanStampeds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + LoanStamped, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + moveQuoteToken: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('moveQuoteToken', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('moveQuoteToken').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(MoveQuoteToken, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + moveQuoteTokens: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('moveQuoteTokens', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('moveQuoteTokens').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + MoveQuoteToken, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + removeCollateral: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('removeCollateral', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('removeCollateral').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(RemoveCollateral, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + removeCollaterals: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('removeCollaterals', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('removeCollaterals').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + RemoveCollateral, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + removeQuoteToken: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('removeQuoteToken', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('removeQuoteToken').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(RemoveQuoteToken, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + removeQuoteTokens: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('removeQuoteTokens', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('removeQuoteTokens').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + RemoveQuoteToken, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + repayDebt: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('repayDebt', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('repayDebt').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(RepayDebt, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + repayDebts: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('repayDebts', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('repayDebts').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + RepayDebt, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + reserveAuctionKick: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('reserveAuctionKick', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('reserveAuctionKick').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(ReserveAuctionKick, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + reserveAuctionKicks: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('reserveAuctionKicks', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('reserveAuctionKicks').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + ReserveAuctionKick, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + reserveAuctionTake: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('reserveAuctionTake', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('reserveAuctionTake').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(ReserveAuctionTake, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + reserveAuctionTakes: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('reserveAuctionTakes', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('reserveAuctionTakes').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + ReserveAuctionTake, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + resetInterestRate: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('resetInterestRate', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('resetInterestRate').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(ResetInterestRate, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + resetInterestRates: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('resetInterestRates', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('resetInterestRates').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + ResetInterestRate, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + settle: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('settle', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('settle').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Settle, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + settles: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('settles', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('settles').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Settle, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + take: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('take', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('take').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Take, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + takes: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('takes', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('takes').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Take, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + transferLP: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('transferLP', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('transferLP').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(TransferLP, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + transferLPS: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('transferLPS', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('transferLPS').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + TransferLP, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + updateInterestRate: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('updateInterestRate', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('updateInterestRate').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(UpdateInterestRate, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + updateInterestRates: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('updateInterestRates', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('updateInterestRates').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + UpdateInterestRate, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + approval: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('approval', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('approval').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Approval, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + approvals: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('approvals', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('approvals').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Approval, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + approvalForAll: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('approvalForAll', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('approvalForAll').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(ApprovalForAll, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + approvalForAlls: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('approvalForAlls', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('approvalForAlls').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + ApprovalForAll, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + moveLiquidity: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('moveLiquidity', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('moveLiquidity').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(MoveLiquidity, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + moveLiquidities: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('moveLiquidities', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('moveLiquidities').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + MoveLiquidity, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + transfer: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('transfer', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('transfer').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Transfer, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + transfers: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('transfers', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('transfers').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Transfer, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + poolCreated: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('poolCreated', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('poolCreated').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(PoolCreated, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + poolCreateds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('poolCreateds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('poolCreateds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + PoolCreated, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + addCollateralNFT: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('addCollateralNFT', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('addCollateralNFT').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(AddCollateralNFT, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + addCollateralNFTS: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('addCollateralNFTS', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('addCollateralNFTS').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + AddCollateralNFT, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + auctionNFTSettle: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('auctionNFTSettle', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('auctionNFTSettle').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(AuctionNFTSettle, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + auctionNFTSettles: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('auctionNFTSettles', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('auctionNFTSettles').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + AuctionNFTSettle, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + drawDebtNFT: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('drawDebtNFT', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('drawDebtNFT').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(DrawDebtNFT, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + drawDebtNFTS: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('drawDebtNFTS', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('drawDebtNFTS').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + DrawDebtNFT, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + mergeOrRemoveCollateralNFT: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('mergeOrRemoveCollateralNFT', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('mergeOrRemoveCollateralNFT').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(MergeOrRemoveCollateralNFT, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + mergeOrRemoveCollateralNFTS: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('mergeOrRemoveCollateralNFTS', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('mergeOrRemoveCollateralNFTS').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + MergeOrRemoveCollateralNFT, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + position: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('position', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('position').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Position, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + positions: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('positions', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('positions').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Position, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + positionLend: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('positionLend', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('positionLend').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(PositionLend, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + positionLends: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('positionLends', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('positionLends').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + PositionLend, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + burn: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('burn', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('burn').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Burn, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + burns: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('burns', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('burns').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Burn, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + memorializePosition: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('memorializePosition', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('memorializePosition').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(MemorializePosition, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + memorializePositions: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('memorializePositions', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('memorializePositions').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + MemorializePosition, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + mint: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('mint', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('mint').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Mint, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + mints: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('mints', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('mints').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Mint, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + redeemPosition: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('redeemPosition', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('redeemPosition').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(RedeemPosition, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + redeemPositions: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('redeemPositions', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('redeemPositions').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + RedeemPosition, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + grantFund: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('grantFund', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('grantFund').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(GrantFund, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + grantFunds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('grantFunds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('grantFunds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + GrantFund, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + distributionPeriod: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('distributionPeriod', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('distributionPeriod').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(DistributionPeriod, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + distributionPeriods: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('distributionPeriods', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('distributionPeriods').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + DistributionPeriod, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + proposal: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('proposal', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('proposal').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(Proposal, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + proposals: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('proposals', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('proposals').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + Proposal, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + proposalParams: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('proposalParams', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('proposalParams').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(ProposalParams, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + proposalParamss: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('proposalParamss', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('proposalParamss').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + ProposalParams, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + distributionPeriodVote: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('distributionPeriodVote', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('distributionPeriodVote').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(DistributionPeriodVote, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + distributionPeriodVotes: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('distributionPeriodVotes', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('distributionPeriodVotes').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + DistributionPeriodVote, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + screeningVote: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('screeningVote', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('screeningVote').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(ScreeningVote, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + screeningVotes: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('screeningVotes', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('screeningVotes').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + ScreeningVote, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + fundingVote: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('fundingVote', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('fundingVote').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(FundingVote, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + fundingVotes: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('fundingVotes', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('fundingVotes').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + FundingVote, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + fundedSlate: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('fundedSlate', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('fundedSlate').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(FundedSlate, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + fundedSlates: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('fundedSlates', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('fundedSlates').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + FundedSlate, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + delegateRewardClaimed: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('delegateRewardClaimed', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('delegateRewardClaimed').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(DelegateRewardClaimed, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + delegateRewardClaimeds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('delegateRewardClaimeds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('delegateRewardClaimeds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + DelegateRewardClaimed, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + fundTreasury: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('fundTreasury', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('fundTreasury').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(FundTreasury, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + fundTreasuries: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('fundTreasuries', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('fundTreasuries').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + FundTreasury, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + fundedSlateUpdated: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('fundedSlateUpdated', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('fundedSlateUpdated').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(FundedSlateUpdated, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + fundedSlateUpdateds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('fundedSlateUpdateds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('fundedSlateUpdateds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + FundedSlateUpdated, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + proposalCreated: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('proposalCreated', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('proposalCreated').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(ProposalCreated, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + proposalCreateds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('proposalCreateds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('proposalCreateds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + ProposalCreated, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + proposalExecuted: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('proposalExecuted', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('proposalExecuted').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(ProposalExecuted, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + proposalExecuteds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('proposalExecuteds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('proposalExecuteds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + ProposalExecuted, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + distributionPeriodStarted: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('distributionPeriodStarted', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('distributionPeriodStarted').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(DistributionPeriodStarted, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + distributionPeriodStarteds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('distributionPeriodStarteds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('distributionPeriodStarteds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + DistributionPeriodStarted, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + voteCast: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('voteCast', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('voteCast').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(VoteCast, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + voteCasts: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('voteCasts', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('voteCasts').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + VoteCast, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + delegateChanged: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('delegateChanged', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('delegateChanged').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(DelegateChanged, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + delegateChangeds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('delegateChangeds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('delegateChangeds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + DelegateChanged, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + delegateVotesChanged: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('delegateVotesChanged', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('delegateVotesChanged').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(DelegateVotesChanged, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + delegateVotesChangeds: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('delegateVotesChangeds', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('delegateVotesChangeds').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + DelegateVotesChanged, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + burnWrap: async ( + _: any, + { id, block = {} }: { id: string, block: BlockHeight }, + __: any, + info: GraphQLResolveInfo + ) => { + log('burnWrap', id, JSON.stringify(block, jsonBigIntStringReplacer)); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('burnWrap').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntity(BurnWrap, id, block, info.fieldNodes[0].selectionSet.selections); + }, + + burnWraps: async ( + _: any, + { block = {}, where, first, skip, orderBy, orderDirection }: { block: BlockHeight, where: { [key: string]: any }, first: number, skip: number, orderBy: string, orderDirection: OrderDirection }, + __: any, + info: GraphQLResolveInfo + ) => { + log('burnWraps', JSON.stringify(block, jsonBigIntStringReplacer), JSON.stringify(where, jsonBigIntStringReplacer), first, skip, orderBy, orderDirection); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('burnWraps').inc(1); + assert(info.fieldNodes[0].selectionSet); + + // Set cache-control hints + // setGQLCacheHints(info, block, gqlCacheConfig); + + return indexer.getSubgraphEntities( + BurnWrap, + block, + where, + { limit: first, skip, orderBy, orderDirection }, + info.fieldNodes[0].selectionSet.selections + ); + }, + + events: async (_: any, { blockHash, contractAddress, name }: { blockHash: string, contractAddress: string, name?: string }) => { + log('events', blockHash, contractAddress, name); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('events').inc(1); + + const block = await indexer.getBlockProgress(blockHash); + if (!block || !block.isComplete) { + throw new Error(`Block hash ${blockHash} number ${block?.blockNumber} not processed yet`); + } + + const events = await indexer.getEventsByFilter(blockHash, contractAddress, name); + return events.map(event => indexer.getResultEvent(event)); + }, + + eventsInRange: async (_: any, { fromBlockNumber, toBlockNumber }: { fromBlockNumber: number, toBlockNumber: number }) => { + log('eventsInRange', fromBlockNumber, toBlockNumber); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('eventsInRange').inc(1); + + const syncStatus = await indexer.getSyncStatus(); + + if (!syncStatus) { + throw new Error('No blocks processed yet'); + } + + if ((fromBlockNumber < syncStatus.initialIndexedBlockNumber) || (toBlockNumber > syncStatus.latestProcessedBlockNumber)) { + throw new Error(`Block range should be between ${syncStatus.initialIndexedBlockNumber} and ${syncStatus.latestProcessedBlockNumber}`); + } + + const events = await indexer.getEventsInRange(fromBlockNumber, toBlockNumber); + return events.map(event => indexer.getResultEvent(event)); + }, + + getStateByCID: async (_: any, { cid }: { cid: string }) => { + log('getStateByCID', cid); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('getStateByCID').inc(1); + + const state = await indexer.getStateByCID(cid); + + return state && state.block.isComplete ? getResultState(state) : undefined; + }, + + getState: async (_: any, { blockHash, contractAddress, kind }: { blockHash: string, contractAddress: string, kind: string }) => { + log('getState', blockHash, contractAddress, kind); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('getState').inc(1); + + const state = await indexer.getPrevState(blockHash, contractAddress, kind); + + return state && state.block.isComplete ? getResultState(state) : undefined; + }, + + _meta: async ( + _: any, + { block = {} }: { block: BlockHeight } + ) => { + log('_meta'); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('_meta').inc(1); + + return indexer.getMetaData(block); + }, + + getSyncStatus: async () => { + log('getSyncStatus'); + gqlTotalQueryCount.inc(1); + gqlQueryCount.labels('getSyncStatus').inc(1); + + return indexer.getSyncStatus(); + } + } + }; +}; diff --git a/src/schema.gql b/src/schema.gql new file mode 100644 index 0000000..0e67067 --- /dev/null +++ b/src/schema.gql @@ -0,0 +1,10902 @@ +directive @cacheControl(maxAge: Int, inheritMaxAge: Boolean, scope: CacheControlScope) on FIELD_DEFINITION | OBJECT | INTERFACE | UNION + +enum CacheControlScope { + PUBLIC + PRIVATE +} + +scalar BigInt + +scalar BigDecimal + +scalar Bytes + +type Proof { + data: String! +} + +type _Block_ { + cid: String + hash: String! + number: Int! + timestamp: Int! + parentHash: String! +} + +type _Transaction_ { + hash: String! + index: Int! + from: String! + to: String! +} + +type ResultEvent { + block: _Block_! + tx: _Transaction_! + contract: String! + eventIndex: Int! + event: Event! + proof: Proof +} + +union Event = ApprovalEvent | ApprovalForAllEvent | BurnEvent | MemorializePositionEvent | MintEvent | MoveLiquidityEvent | RedeemPositionEvent | TransferEvent | PoolCreatedEvent | DelegateRewardClaimedEvent | DistributionPeriodStartedEvent | FundTreasuryEvent | FundedSlateUpdatedEvent | ProposalCreatedEvent | ProposalExecutedEvent | VoteCastEvent | DelegateChangedEvent | DelegateVotesChangedEvent | AddCollateralEvent | AddQuoteTokenEvent | ApproveLPTransferorsEvent | AuctionNFTSettleEvent | AuctionSettleEvent | BondWithdrawnEvent | BucketBankruptcyEvent | BucketTakeEvent | BucketTakeLPAwardedEvent | DecreaseLPAllowanceEvent | DrawDebtEvent | FlashloanEvent | IncreaseLPAllowanceEvent | InterestUpdateFailureEvent | KickEvent | KickReserveAuctionEvent | LoanStampedEvent | MoveQuoteTokenEvent | RemoveCollateralEvent | RemoveQuoteTokenEvent | RepayDebtEvent | ReserveAuctionEvent | ResetInterestRateEvent | RevokeLPAllowanceEvent | RevokeLPTransferorsEvent | SettleEvent | TakeEvent | TransferLPEvent | UpdateInterestRateEvent | AddCollateralNFTEvent | DrawDebtNFTEvent | MergeOrRemoveCollateralNFTEvent + +type ApprovalEvent { + owner: String! + approved: String + tokenId: BigInt + spender: String + value: BigInt +} + +type ApprovalForAllEvent { + owner: String! + operator: String! + approved: Boolean! +} + +type BurnEvent { + lender: String! + tokenId: BigInt! +} + +type MemorializePositionEvent { + lender: String! + tokenId: BigInt! + indexes: [BigInt!] +} + +type MintEvent { + lender: String! + pool: String! + tokenId: BigInt! +} + +type MoveLiquidityEvent { + lender: String! + tokenId: BigInt! + fromIndex: BigInt! + toIndex: BigInt! + lpRedeemedFrom: BigInt! + lpAwardedTo: BigInt! +} + +type RedeemPositionEvent { + lender: String! + tokenId: BigInt! + indexes: [BigInt!] +} + +type TransferEvent { + from: String! + to: String! + tokenId: BigInt + value: BigInt +} + +type PoolCreatedEvent { + pool_: String! + subsetHash_: String! +} + +type DelegateRewardClaimedEvent { + delegateeAddress: String! + distributionId: BigInt! + rewardClaimed: BigInt! +} + +type DistributionPeriodStartedEvent { + distributionId: BigInt! + startBlock: BigInt! + endBlock: BigInt! +} + +type FundTreasuryEvent { + amount: BigInt! + treasuryBalance: BigInt! +} + +type FundedSlateUpdatedEvent { + distributionId: BigInt! + fundedSlateHash: String! +} + +type ProposalCreatedEvent { + proposalId: BigInt! + proposer: String! + targets: [String!] + values: [BigInt!] + signatures: [String!] + calldatas: [String!] + startBlock: BigInt! + endBlock: BigInt! + description: String! +} + +type ProposalExecutedEvent { + proposalId: BigInt! +} + +type VoteCastEvent { + voter: String! + proposalId: BigInt! + support: Int! + weight: BigInt! + reason: String! +} + +type DelegateChangedEvent { + delegator: String! + fromDelegate: String! + toDelegate: String! +} + +type DelegateVotesChangedEvent { + delegate: String! + previousBalance: BigInt! + newBalance: BigInt! +} + +type AddCollateralEvent { + actor: String! + index: BigInt! + amount: BigInt! + lpAwarded: BigInt! +} + +type AddQuoteTokenEvent { + lender: String! + index: BigInt! + amount: BigInt! + lpAwarded: BigInt! + lup: BigInt! +} + +type ApproveLPTransferorsEvent { + lender: String! + transferors: [String!] +} + +type AuctionNFTSettleEvent { + borrower: String! + collateral: BigInt! + lp: BigInt! + index: BigInt! +} + +type AuctionSettleEvent { + borrower: String! + collateral: BigInt! +} + +type BondWithdrawnEvent { + kicker: String! + reciever: String! + amount: BigInt! +} + +type BucketBankruptcyEvent { + index: BigInt! + lpForfeited: BigInt! +} + +type BucketTakeEvent { + borrower: String! + index: BigInt! + amount: BigInt! + collateral: BigInt! + bondChange: BigInt! + isReward: Boolean! +} + +type BucketTakeLPAwardedEvent { + taker: String! + kicker: String! + lpAwardedTaker: BigInt! + lpAwardedKicker: BigInt! +} + +type DecreaseLPAllowanceEvent { + owner: String! + spender: String! + indexes: [BigInt!] + amounts: [BigInt!] +} + +type DrawDebtEvent { + borrower: String! + amountBorrowed: BigInt! + collateralPledged: BigInt! + lup: BigInt! +} + +type FlashloanEvent { + receiver: String! + token: String! + amount: BigInt! +} + +type IncreaseLPAllowanceEvent { + owner: String! + spender: String! + indexes: [BigInt!] + amounts: [BigInt!] +} + +type InterestUpdateFailureEvent { + dummy: String +} + +type KickEvent { + borrower: String! + debt: BigInt! + collateral: BigInt! + bond: BigInt! +} + +type KickReserveAuctionEvent { + claimableReservesRemaining: BigInt! + auctionPrice: BigInt! + currentBurnEpoch: BigInt! +} + +type LoanStampedEvent { + borrower: String! +} + +type MoveQuoteTokenEvent { + lender: String! + from: BigInt! + to: BigInt! + amount: BigInt! + lpRedeemedFrom: BigInt! + lpAwardedTo: BigInt! + lup: BigInt! +} + +type RemoveCollateralEvent { + claimer: String! + index: BigInt! + amount: BigInt! + lpRedeemed: BigInt! +} + +type RemoveQuoteTokenEvent { + lender: String! + index: BigInt! + amount: BigInt! + lpRedeemed: BigInt! + lup: BigInt! +} + +type RepayDebtEvent { + borrower: String! + quoteRepaid: BigInt! + collateralPulled: BigInt! + lup: BigInt! +} + +type ReserveAuctionEvent { + claimableReservesRemaining: BigInt! + auctionPrice: BigInt! + currentBurnEpoch: BigInt! +} + +type ResetInterestRateEvent { + oldRate: BigInt! + newRate: BigInt! +} + +type RevokeLPAllowanceEvent { + owner: String! + spender: String! + indexes: [BigInt!] +} + +type RevokeLPTransferorsEvent { + lender: String! + transferors: [String!] +} + +type SettleEvent { + borrower: String! + settledDebt: BigInt! +} + +type TakeEvent { + borrower: String! + amount: BigInt! + collateral: BigInt! + bondChange: BigInt! + isReward: Boolean! +} + +type TransferLPEvent { + owner: String! + newOwner: String! + indexes: [BigInt!] + lp: BigInt! +} + +type UpdateInterestRateEvent { + oldRate: BigInt! + newRate: BigInt! +} + +type AddCollateralNFTEvent { + actor: String! + index: BigInt! + tokenIds: [BigInt!] + lpAwarded: BigInt! +} + +type DrawDebtNFTEvent { + borrower: String! + amountBorrowed: BigInt! + tokenIdsPledged: [BigInt!] + lup: BigInt! +} + +type MergeOrRemoveCollateralNFTEvent { + actor: String! + collateralMerged: BigInt! + toIndexLps: BigInt! +} + +input Block_height { + hash: Bytes + number: Int +} + +input BlockChangedFilter { + number_gte: Int! +} + +enum OrderDirection { + asc + desc +} + +enum Token_orderBy { + id + symbol + name + decimals + tokenType + poolCount + pools + totalSupply + txCount +} + +input Token_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + symbol: String + symbol_not: String + symbol_gt: String + symbol_lt: String + symbol_gte: String + symbol_lte: String + symbol_in: [String!] + symbol_not_in: [String!] + symbol_starts_with: String + symbol_starts_with_nocase: String + symbol_not_starts_with: String + symbol_not_starts_with_nocase: String + symbol_ends_with: String + symbol_ends_with_nocase: String + symbol_not_ends_with: String + symbol_not_ends_with_nocase: String + symbol_contains: String + symbol_not_contains: String + symbol_contains_nocase: String + symbol_not_contains_nocase: String + name: String + name_not: String + name_gt: String + name_lt: String + name_gte: String + name_lte: String + name_in: [String!] + name_not_in: [String!] + name_starts_with: String + name_starts_with_nocase: String + name_not_starts_with: String + name_not_starts_with_nocase: String + name_ends_with: String + name_ends_with_nocase: String + name_not_ends_with: String + name_not_ends_with_nocase: String + name_contains: String + name_not_contains: String + name_contains_nocase: String + name_not_contains_nocase: String + decimals: Int + decimals_not: Int + decimals_gt: Int + decimals_lt: Int + decimals_gte: Int + decimals_lte: Int + decimals_in: [Int!] + decimals_not_in: [Int!] + tokenType: String + tokenType_not: String + tokenType_gt: String + tokenType_lt: String + tokenType_gte: String + tokenType_lte: String + tokenType_in: [String!] + tokenType_not_in: [String!] + tokenType_starts_with: String + tokenType_starts_with_nocase: String + tokenType_not_starts_with: String + tokenType_not_starts_with_nocase: String + tokenType_ends_with: String + tokenType_ends_with_nocase: String + tokenType_not_ends_with: String + tokenType_not_ends_with_nocase: String + tokenType_contains: String + tokenType_not_contains: String + tokenType_contains_nocase: String + tokenType_not_contains_nocase: String + poolCount: BigInt + poolCount_not: BigInt + poolCount_gt: BigInt + poolCount_lt: BigInt + poolCount_gte: BigInt + poolCount_lte: BigInt + poolCount_in: [BigInt!] + poolCount_not_in: [BigInt!] + pools: [String!] + pools_not: [String!] + pools_contains: [String!] + pools_not_contains: [String!] + pools_contains_nocase: [String!] + pools_not_contains_nocase: [String!] + pools_: Pool_filter + totalSupply: BigInt + totalSupply_not: BigInt + totalSupply_gt: BigInt + totalSupply_lt: BigInt + totalSupply_gte: BigInt + totalSupply_lte: BigInt + totalSupply_in: [BigInt!] + totalSupply_not_in: [BigInt!] + txCount: BigInt + txCount_not: BigInt + txCount_gt: BigInt + txCount_lt: BigInt + txCount_gte: BigInt + txCount_lte: BigInt + txCount_in: [BigInt!] + txCount_not_in: [BigInt!] + _change_block: BlockChangedFilter + and: [Token_filter] + or: [Token_filter] +} + +enum PoolFactory_orderBy { + id + poolType + poolCount + pools + txCount +} + +input PoolFactory_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + poolType: String + poolType_not: String + poolType_gt: String + poolType_lt: String + poolType_gte: String + poolType_lte: String + poolType_in: [String!] + poolType_not_in: [String!] + poolType_starts_with: String + poolType_starts_with_nocase: String + poolType_not_starts_with: String + poolType_not_starts_with_nocase: String + poolType_ends_with: String + poolType_ends_with_nocase: String + poolType_not_ends_with: String + poolType_not_ends_with_nocase: String + poolType_contains: String + poolType_not_contains: String + poolType_contains_nocase: String + poolType_not_contains_nocase: String + poolCount: BigInt + poolCount_not: BigInt + poolCount_gt: BigInt + poolCount_lt: BigInt + poolCount_gte: BigInt + poolCount_lte: BigInt + poolCount_in: [BigInt!] + poolCount_not_in: [BigInt!] + pools: [String!] + pools_not: [String!] + pools_contains: [String!] + pools_not_contains: [String!] + pools_contains_nocase: [String!] + pools_not_contains_nocase: [String!] + pools_: Pool_filter + txCount: BigInt + txCount_not: BigInt + txCount_gt: BigInt + txCount_lt: BigInt + txCount_gte: BigInt + txCount_lte: BigInt + txCount_in: [BigInt!] + txCount_not_in: [BigInt!] + _change_block: BlockChangedFilter + and: [PoolFactory_filter] + or: [PoolFactory_filter] +} + +enum Pool_orderBy { + id + createdAtBlockNumber + createdAtTimestamp + collateralToken + collateralToken__id + collateralToken__symbol + collateralToken__name + collateralToken__decimals + collateralToken__tokenType + collateralToken__poolCount + collateralToken__totalSupply + collateralToken__txCount + quoteToken + quoteToken__id + quoteToken__symbol + quoteToken__name + quoteToken__decimals + quoteToken__tokenType + quoteToken__poolCount + quoteToken__totalSupply + quoteToken__txCount + poolSize + t0debt + inflator + borrowRate + lendRate + borrowFeeRate + depositFeeRate + pledgedCollateral + totalInterestEarned + txCount + poolType + loansCount + maxBorrower + quoteTokenFlashloaned + collateralFlashloaned + hpb + hpbIndex + htp + htpIndex + lup + lupIndex + reserves + claimableReserves + claimableReservesRemaining + burnEpoch + totalAjnaBurned + reserveAuctions + minDebtAmount + actualUtilization + targetUtilization + totalBondEscrowed + liquidationAuctions + quoteTokenBalance + collateralBalance + subsetHash + tokenIdsPledged + bucketTokenIds + tokenIdsAllowed +} + +input Pool_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + createdAtBlockNumber: BigInt + createdAtBlockNumber_not: BigInt + createdAtBlockNumber_gt: BigInt + createdAtBlockNumber_lt: BigInt + createdAtBlockNumber_gte: BigInt + createdAtBlockNumber_lte: BigInt + createdAtBlockNumber_in: [BigInt!] + createdAtBlockNumber_not_in: [BigInt!] + createdAtTimestamp: BigInt + createdAtTimestamp_not: BigInt + createdAtTimestamp_gt: BigInt + createdAtTimestamp_lt: BigInt + createdAtTimestamp_gte: BigInt + createdAtTimestamp_lte: BigInt + createdAtTimestamp_in: [BigInt!] + createdAtTimestamp_not_in: [BigInt!] + collateralToken: String + collateralToken_not: String + collateralToken_gt: String + collateralToken_lt: String + collateralToken_gte: String + collateralToken_lte: String + collateralToken_in: [String!] + collateralToken_not_in: [String!] + collateralToken_starts_with: String + collateralToken_starts_with_nocase: String + collateralToken_not_starts_with: String + collateralToken_not_starts_with_nocase: String + collateralToken_ends_with: String + collateralToken_ends_with_nocase: String + collateralToken_not_ends_with: String + collateralToken_not_ends_with_nocase: String + collateralToken_contains: String + collateralToken_not_contains: String + collateralToken_contains_nocase: String + collateralToken_not_contains_nocase: String + collateralToken_: Token_filter + quoteToken: String + quoteToken_not: String + quoteToken_gt: String + quoteToken_lt: String + quoteToken_gte: String + quoteToken_lte: String + quoteToken_in: [String!] + quoteToken_not_in: [String!] + quoteToken_starts_with: String + quoteToken_starts_with_nocase: String + quoteToken_not_starts_with: String + quoteToken_not_starts_with_nocase: String + quoteToken_ends_with: String + quoteToken_ends_with_nocase: String + quoteToken_not_ends_with: String + quoteToken_not_ends_with_nocase: String + quoteToken_contains: String + quoteToken_not_contains: String + quoteToken_contains_nocase: String + quoteToken_not_contains_nocase: String + quoteToken_: Token_filter + poolSize: BigDecimal + poolSize_not: BigDecimal + poolSize_gt: BigDecimal + poolSize_lt: BigDecimal + poolSize_gte: BigDecimal + poolSize_lte: BigDecimal + poolSize_in: [BigDecimal!] + poolSize_not_in: [BigDecimal!] + t0debt: BigDecimal + t0debt_not: BigDecimal + t0debt_gt: BigDecimal + t0debt_lt: BigDecimal + t0debt_gte: BigDecimal + t0debt_lte: BigDecimal + t0debt_in: [BigDecimal!] + t0debt_not_in: [BigDecimal!] + inflator: BigDecimal + inflator_not: BigDecimal + inflator_gt: BigDecimal + inflator_lt: BigDecimal + inflator_gte: BigDecimal + inflator_lte: BigDecimal + inflator_in: [BigDecimal!] + inflator_not_in: [BigDecimal!] + borrowRate: BigDecimal + borrowRate_not: BigDecimal + borrowRate_gt: BigDecimal + borrowRate_lt: BigDecimal + borrowRate_gte: BigDecimal + borrowRate_lte: BigDecimal + borrowRate_in: [BigDecimal!] + borrowRate_not_in: [BigDecimal!] + lendRate: BigDecimal + lendRate_not: BigDecimal + lendRate_gt: BigDecimal + lendRate_lt: BigDecimal + lendRate_gte: BigDecimal + lendRate_lte: BigDecimal + lendRate_in: [BigDecimal!] + lendRate_not_in: [BigDecimal!] + borrowFeeRate: BigDecimal + borrowFeeRate_not: BigDecimal + borrowFeeRate_gt: BigDecimal + borrowFeeRate_lt: BigDecimal + borrowFeeRate_gte: BigDecimal + borrowFeeRate_lte: BigDecimal + borrowFeeRate_in: [BigDecimal!] + borrowFeeRate_not_in: [BigDecimal!] + depositFeeRate: BigDecimal + depositFeeRate_not: BigDecimal + depositFeeRate_gt: BigDecimal + depositFeeRate_lt: BigDecimal + depositFeeRate_gte: BigDecimal + depositFeeRate_lte: BigDecimal + depositFeeRate_in: [BigDecimal!] + depositFeeRate_not_in: [BigDecimal!] + pledgedCollateral: BigDecimal + pledgedCollateral_not: BigDecimal + pledgedCollateral_gt: BigDecimal + pledgedCollateral_lt: BigDecimal + pledgedCollateral_gte: BigDecimal + pledgedCollateral_lte: BigDecimal + pledgedCollateral_in: [BigDecimal!] + pledgedCollateral_not_in: [BigDecimal!] + totalInterestEarned: BigDecimal + totalInterestEarned_not: BigDecimal + totalInterestEarned_gt: BigDecimal + totalInterestEarned_lt: BigDecimal + totalInterestEarned_gte: BigDecimal + totalInterestEarned_lte: BigDecimal + totalInterestEarned_in: [BigDecimal!] + totalInterestEarned_not_in: [BigDecimal!] + txCount: BigInt + txCount_not: BigInt + txCount_gt: BigInt + txCount_lt: BigInt + txCount_gte: BigInt + txCount_lte: BigInt + txCount_in: [BigInt!] + txCount_not_in: [BigInt!] + poolType: String + poolType_not: String + poolType_gt: String + poolType_lt: String + poolType_gte: String + poolType_lte: String + poolType_in: [String!] + poolType_not_in: [String!] + poolType_starts_with: String + poolType_starts_with_nocase: String + poolType_not_starts_with: String + poolType_not_starts_with_nocase: String + poolType_ends_with: String + poolType_ends_with_nocase: String + poolType_not_ends_with: String + poolType_not_ends_with_nocase: String + poolType_contains: String + poolType_not_contains: String + poolType_contains_nocase: String + poolType_not_contains_nocase: String + loansCount: BigInt + loansCount_not: BigInt + loansCount_gt: BigInt + loansCount_lt: BigInt + loansCount_gte: BigInt + loansCount_lte: BigInt + loansCount_in: [BigInt!] + loansCount_not_in: [BigInt!] + maxBorrower: Bytes + maxBorrower_not: Bytes + maxBorrower_gt: Bytes + maxBorrower_lt: Bytes + maxBorrower_gte: Bytes + maxBorrower_lte: Bytes + maxBorrower_in: [Bytes!] + maxBorrower_not_in: [Bytes!] + maxBorrower_contains: Bytes + maxBorrower_not_contains: Bytes + quoteTokenFlashloaned: BigDecimal + quoteTokenFlashloaned_not: BigDecimal + quoteTokenFlashloaned_gt: BigDecimal + quoteTokenFlashloaned_lt: BigDecimal + quoteTokenFlashloaned_gte: BigDecimal + quoteTokenFlashloaned_lte: BigDecimal + quoteTokenFlashloaned_in: [BigDecimal!] + quoteTokenFlashloaned_not_in: [BigDecimal!] + collateralFlashloaned: BigDecimal + collateralFlashloaned_not: BigDecimal + collateralFlashloaned_gt: BigDecimal + collateralFlashloaned_lt: BigDecimal + collateralFlashloaned_gte: BigDecimal + collateralFlashloaned_lte: BigDecimal + collateralFlashloaned_in: [BigDecimal!] + collateralFlashloaned_not_in: [BigDecimal!] + hpb: BigDecimal + hpb_not: BigDecimal + hpb_gt: BigDecimal + hpb_lt: BigDecimal + hpb_gte: BigDecimal + hpb_lte: BigDecimal + hpb_in: [BigDecimal!] + hpb_not_in: [BigDecimal!] + hpbIndex: Int + hpbIndex_not: Int + hpbIndex_gt: Int + hpbIndex_lt: Int + hpbIndex_gte: Int + hpbIndex_lte: Int + hpbIndex_in: [Int!] + hpbIndex_not_in: [Int!] + htp: BigDecimal + htp_not: BigDecimal + htp_gt: BigDecimal + htp_lt: BigDecimal + htp_gte: BigDecimal + htp_lte: BigDecimal + htp_in: [BigDecimal!] + htp_not_in: [BigDecimal!] + htpIndex: Int + htpIndex_not: Int + htpIndex_gt: Int + htpIndex_lt: Int + htpIndex_gte: Int + htpIndex_lte: Int + htpIndex_in: [Int!] + htpIndex_not_in: [Int!] + lup: BigDecimal + lup_not: BigDecimal + lup_gt: BigDecimal + lup_lt: BigDecimal + lup_gte: BigDecimal + lup_lte: BigDecimal + lup_in: [BigDecimal!] + lup_not_in: [BigDecimal!] + lupIndex: Int + lupIndex_not: Int + lupIndex_gt: Int + lupIndex_lt: Int + lupIndex_gte: Int + lupIndex_lte: Int + lupIndex_in: [Int!] + lupIndex_not_in: [Int!] + reserves: BigDecimal + reserves_not: BigDecimal + reserves_gt: BigDecimal + reserves_lt: BigDecimal + reserves_gte: BigDecimal + reserves_lte: BigDecimal + reserves_in: [BigDecimal!] + reserves_not_in: [BigDecimal!] + claimableReserves: BigDecimal + claimableReserves_not: BigDecimal + claimableReserves_gt: BigDecimal + claimableReserves_lt: BigDecimal + claimableReserves_gte: BigDecimal + claimableReserves_lte: BigDecimal + claimableReserves_in: [BigDecimal!] + claimableReserves_not_in: [BigDecimal!] + claimableReservesRemaining: BigDecimal + claimableReservesRemaining_not: BigDecimal + claimableReservesRemaining_gt: BigDecimal + claimableReservesRemaining_lt: BigDecimal + claimableReservesRemaining_gte: BigDecimal + claimableReservesRemaining_lte: BigDecimal + claimableReservesRemaining_in: [BigDecimal!] + claimableReservesRemaining_not_in: [BigDecimal!] + burnEpoch: BigInt + burnEpoch_not: BigInt + burnEpoch_gt: BigInt + burnEpoch_lt: BigInt + burnEpoch_gte: BigInt + burnEpoch_lte: BigInt + burnEpoch_in: [BigInt!] + burnEpoch_not_in: [BigInt!] + totalAjnaBurned: BigDecimal + totalAjnaBurned_not: BigDecimal + totalAjnaBurned_gt: BigDecimal + totalAjnaBurned_lt: BigDecimal + totalAjnaBurned_gte: BigDecimal + totalAjnaBurned_lte: BigDecimal + totalAjnaBurned_in: [BigDecimal!] + totalAjnaBurned_not_in: [BigDecimal!] + reserveAuctions: [String!] + reserveAuctions_not: [String!] + reserveAuctions_contains: [String!] + reserveAuctions_not_contains: [String!] + reserveAuctions_contains_nocase: [String!] + reserveAuctions_not_contains_nocase: [String!] + reserveAuctions_: ReserveAuction_filter + minDebtAmount: BigDecimal + minDebtAmount_not: BigDecimal + minDebtAmount_gt: BigDecimal + minDebtAmount_lt: BigDecimal + minDebtAmount_gte: BigDecimal + minDebtAmount_lte: BigDecimal + minDebtAmount_in: [BigDecimal!] + minDebtAmount_not_in: [BigDecimal!] + actualUtilization: BigDecimal + actualUtilization_not: BigDecimal + actualUtilization_gt: BigDecimal + actualUtilization_lt: BigDecimal + actualUtilization_gte: BigDecimal + actualUtilization_lte: BigDecimal + actualUtilization_in: [BigDecimal!] + actualUtilization_not_in: [BigDecimal!] + targetUtilization: BigDecimal + targetUtilization_not: BigDecimal + targetUtilization_gt: BigDecimal + targetUtilization_lt: BigDecimal + targetUtilization_gte: BigDecimal + targetUtilization_lte: BigDecimal + targetUtilization_in: [BigDecimal!] + targetUtilization_not_in: [BigDecimal!] + totalBondEscrowed: BigDecimal + totalBondEscrowed_not: BigDecimal + totalBondEscrowed_gt: BigDecimal + totalBondEscrowed_lt: BigDecimal + totalBondEscrowed_gte: BigDecimal + totalBondEscrowed_lte: BigDecimal + totalBondEscrowed_in: [BigDecimal!] + totalBondEscrowed_not_in: [BigDecimal!] + liquidationAuctions: [String!] + liquidationAuctions_not: [String!] + liquidationAuctions_contains: [String!] + liquidationAuctions_not_contains: [String!] + liquidationAuctions_contains_nocase: [String!] + liquidationAuctions_not_contains_nocase: [String!] + liquidationAuctions_: LiquidationAuction_filter + quoteTokenBalance: BigDecimal + quoteTokenBalance_not: BigDecimal + quoteTokenBalance_gt: BigDecimal + quoteTokenBalance_lt: BigDecimal + quoteTokenBalance_gte: BigDecimal + quoteTokenBalance_lte: BigDecimal + quoteTokenBalance_in: [BigDecimal!] + quoteTokenBalance_not_in: [BigDecimal!] + collateralBalance: BigDecimal + collateralBalance_not: BigDecimal + collateralBalance_gt: BigDecimal + collateralBalance_lt: BigDecimal + collateralBalance_gte: BigDecimal + collateralBalance_lte: BigDecimal + collateralBalance_in: [BigDecimal!] + collateralBalance_not_in: [BigDecimal!] + subsetHash: Bytes + subsetHash_not: Bytes + subsetHash_gt: Bytes + subsetHash_lt: Bytes + subsetHash_gte: Bytes + subsetHash_lte: Bytes + subsetHash_in: [Bytes!] + subsetHash_not_in: [Bytes!] + subsetHash_contains: Bytes + subsetHash_not_contains: Bytes + tokenIdsPledged: [BigInt!] + tokenIdsPledged_not: [BigInt!] + tokenIdsPledged_contains: [BigInt!] + tokenIdsPledged_not_contains: [BigInt!] + tokenIdsPledged_contains_nocase: [BigInt!] + tokenIdsPledged_not_contains_nocase: [BigInt!] + bucketTokenIds: [BigInt!] + bucketTokenIds_not: [BigInt!] + bucketTokenIds_contains: [BigInt!] + bucketTokenIds_not_contains: [BigInt!] + bucketTokenIds_contains_nocase: [BigInt!] + bucketTokenIds_not_contains_nocase: [BigInt!] + tokenIdsAllowed: [BigInt!] + tokenIdsAllowed_not: [BigInt!] + tokenIdsAllowed_contains: [BigInt!] + tokenIdsAllowed_not_contains: [BigInt!] + tokenIdsAllowed_contains_nocase: [BigInt!] + tokenIdsAllowed_not_contains_nocase: [BigInt!] + _change_block: BlockChangedFilter + and: [Pool_filter] + or: [Pool_filter] +} + +enum Bucket_orderBy { + id + bucketIndex + bucketPrice + exchangeRate + poolAddress + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + collateral + deposit + lpb + lends + positionLends +} + +input Bucket_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + bucketIndex: Int + bucketIndex_not: Int + bucketIndex_gt: Int + bucketIndex_lt: Int + bucketIndex_gte: Int + bucketIndex_lte: Int + bucketIndex_in: [Int!] + bucketIndex_not_in: [Int!] + bucketPrice: BigDecimal + bucketPrice_not: BigDecimal + bucketPrice_gt: BigDecimal + bucketPrice_lt: BigDecimal + bucketPrice_gte: BigDecimal + bucketPrice_lte: BigDecimal + bucketPrice_in: [BigDecimal!] + bucketPrice_not_in: [BigDecimal!] + exchangeRate: BigDecimal + exchangeRate_not: BigDecimal + exchangeRate_gt: BigDecimal + exchangeRate_lt: BigDecimal + exchangeRate_gte: BigDecimal + exchangeRate_lte: BigDecimal + exchangeRate_in: [BigDecimal!] + exchangeRate_not_in: [BigDecimal!] + poolAddress: String + poolAddress_not: String + poolAddress_gt: String + poolAddress_lt: String + poolAddress_gte: String + poolAddress_lte: String + poolAddress_in: [String!] + poolAddress_not_in: [String!] + poolAddress_starts_with: String + poolAddress_starts_with_nocase: String + poolAddress_not_starts_with: String + poolAddress_not_starts_with_nocase: String + poolAddress_ends_with: String + poolAddress_ends_with_nocase: String + poolAddress_not_ends_with: String + poolAddress_not_ends_with_nocase: String + poolAddress_contains: String + poolAddress_not_contains: String + poolAddress_contains_nocase: String + poolAddress_not_contains_nocase: String + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + collateral: BigDecimal + collateral_not: BigDecimal + collateral_gt: BigDecimal + collateral_lt: BigDecimal + collateral_gte: BigDecimal + collateral_lte: BigDecimal + collateral_in: [BigDecimal!] + collateral_not_in: [BigDecimal!] + deposit: BigDecimal + deposit_not: BigDecimal + deposit_gt: BigDecimal + deposit_lt: BigDecimal + deposit_gte: BigDecimal + deposit_lte: BigDecimal + deposit_in: [BigDecimal!] + deposit_not_in: [BigDecimal!] + lpb: BigDecimal + lpb_not: BigDecimal + lpb_gt: BigDecimal + lpb_lt: BigDecimal + lpb_gte: BigDecimal + lpb_lte: BigDecimal + lpb_in: [BigDecimal!] + lpb_not_in: [BigDecimal!] + lends: [String!] + lends_not: [String!] + lends_contains: [String!] + lends_not_contains: [String!] + lends_contains_nocase: [String!] + lends_not_contains_nocase: [String!] + lends_: Lend_filter + positionLends: [String!] + positionLends_not: [String!] + positionLends_contains: [String!] + positionLends_not_contains: [String!] + positionLends_contains_nocase: [String!] + positionLends_not_contains_nocase: [String!] + positionLends_: PositionLend_filter + _change_block: BlockChangedFilter + and: [Bucket_filter] + or: [Bucket_filter] +} + +enum Lend_orderBy { + id + bucket + bucket__id + bucket__bucketIndex + bucket__bucketPrice + bucket__exchangeRate + bucket__poolAddress + bucket__collateral + bucket__deposit + bucket__lpb + bucketIndex + poolAddress + lender + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + lpb + lpbValueInQuote + depositTime +} + +input Lend_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + bucket: String + bucket_not: String + bucket_gt: String + bucket_lt: String + bucket_gte: String + bucket_lte: String + bucket_in: [String!] + bucket_not_in: [String!] + bucket_starts_with: String + bucket_starts_with_nocase: String + bucket_not_starts_with: String + bucket_not_starts_with_nocase: String + bucket_ends_with: String + bucket_ends_with_nocase: String + bucket_not_ends_with: String + bucket_not_ends_with_nocase: String + bucket_contains: String + bucket_not_contains: String + bucket_contains_nocase: String + bucket_not_contains_nocase: String + bucket_: Bucket_filter + bucketIndex: Int + bucketIndex_not: Int + bucketIndex_gt: Int + bucketIndex_lt: Int + bucketIndex_gte: Int + bucketIndex_lte: Int + bucketIndex_in: [Int!] + bucketIndex_not_in: [Int!] + poolAddress: String + poolAddress_not: String + poolAddress_gt: String + poolAddress_lt: String + poolAddress_gte: String + poolAddress_lte: String + poolAddress_in: [String!] + poolAddress_not_in: [String!] + poolAddress_starts_with: String + poolAddress_starts_with_nocase: String + poolAddress_not_starts_with: String + poolAddress_not_starts_with_nocase: String + poolAddress_ends_with: String + poolAddress_ends_with_nocase: String + poolAddress_not_ends_with: String + poolAddress_not_ends_with_nocase: String + poolAddress_contains: String + poolAddress_not_contains: String + poolAddress_contains_nocase: String + poolAddress_not_contains_nocase: String + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + lpb: BigDecimal + lpb_not: BigDecimal + lpb_gt: BigDecimal + lpb_lt: BigDecimal + lpb_gte: BigDecimal + lpb_lte: BigDecimal + lpb_in: [BigDecimal!] + lpb_not_in: [BigDecimal!] + lpbValueInQuote: BigDecimal + lpbValueInQuote_not: BigDecimal + lpbValueInQuote_gt: BigDecimal + lpbValueInQuote_lt: BigDecimal + lpbValueInQuote_gte: BigDecimal + lpbValueInQuote_lte: BigDecimal + lpbValueInQuote_in: [BigDecimal!] + lpbValueInQuote_not_in: [BigDecimal!] + depositTime: BigInt + depositTime_not: BigInt + depositTime_gt: BigInt + depositTime_lt: BigInt + depositTime_gte: BigInt + depositTime_lte: BigInt + depositTime_in: [BigInt!] + depositTime_not_in: [BigInt!] + _change_block: BlockChangedFilter + and: [Lend_filter] + or: [Lend_filter] +} + +enum Loan_orderBy { + id + poolAddress + borrower + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + inLiquidation + liquidationAuction + liquidationAuction__id + liquidationAuction__borrower + liquidationAuction__lastTakePrice + liquidationAuction__collateral + liquidationAuction__collateralRemaining + liquidationAuction__debt + liquidationAuction__debtRemaining + liquidationAuction__kicker + liquidationAuction__kickTime + liquidationAuction__settleTime + liquidationAuction__settled + liquidationAuction__bondSize + liquidationAuction__bondFactor + liquidationAuction__neutralPrice + liquidationAuction__referencePrice + liquidationAuction__thresholdPrice + collateralPledged + thresholdPrice + tokenIdsPledged + t0debt + t0Np +} + +input Loan_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + poolAddress: String + poolAddress_not: String + poolAddress_gt: String + poolAddress_lt: String + poolAddress_gte: String + poolAddress_lte: String + poolAddress_in: [String!] + poolAddress_not_in: [String!] + poolAddress_starts_with: String + poolAddress_starts_with_nocase: String + poolAddress_not_starts_with: String + poolAddress_not_starts_with_nocase: String + poolAddress_ends_with: String + poolAddress_ends_with_nocase: String + poolAddress_not_ends_with: String + poolAddress_not_ends_with_nocase: String + poolAddress_contains: String + poolAddress_not_contains: String + poolAddress_contains_nocase: String + poolAddress_not_contains_nocase: String + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + inLiquidation: Boolean + inLiquidation_not: Boolean + inLiquidation_gt: Boolean + inLiquidation_lt: Boolean + inLiquidation_gte: Boolean + inLiquidation_lte: Boolean + inLiquidation_in: [Boolean!] + inLiquidation_not_in: [Boolean!] + liquidationAuction: String + liquidationAuction_not: String + liquidationAuction_gt: String + liquidationAuction_lt: String + liquidationAuction_gte: String + liquidationAuction_lte: String + liquidationAuction_in: [String!] + liquidationAuction_not_in: [String!] + liquidationAuction_starts_with: String + liquidationAuction_starts_with_nocase: String + liquidationAuction_not_starts_with: String + liquidationAuction_not_starts_with_nocase: String + liquidationAuction_ends_with: String + liquidationAuction_ends_with_nocase: String + liquidationAuction_not_ends_with: String + liquidationAuction_not_ends_with_nocase: String + liquidationAuction_contains: String + liquidationAuction_not_contains: String + liquidationAuction_contains_nocase: String + liquidationAuction_not_contains_nocase: String + liquidationAuction_: LiquidationAuction_filter + collateralPledged: BigDecimal + collateralPledged_not: BigDecimal + collateralPledged_gt: BigDecimal + collateralPledged_lt: BigDecimal + collateralPledged_gte: BigDecimal + collateralPledged_lte: BigDecimal + collateralPledged_in: [BigDecimal!] + collateralPledged_not_in: [BigDecimal!] + thresholdPrice: BigDecimal + thresholdPrice_not: BigDecimal + thresholdPrice_gt: BigDecimal + thresholdPrice_lt: BigDecimal + thresholdPrice_gte: BigDecimal + thresholdPrice_lte: BigDecimal + thresholdPrice_in: [BigDecimal!] + thresholdPrice_not_in: [BigDecimal!] + tokenIdsPledged: [BigInt!] + tokenIdsPledged_not: [BigInt!] + tokenIdsPledged_contains: [BigInt!] + tokenIdsPledged_not_contains: [BigInt!] + tokenIdsPledged_contains_nocase: [BigInt!] + tokenIdsPledged_not_contains_nocase: [BigInt!] + t0debt: BigDecimal + t0debt_not: BigDecimal + t0debt_gt: BigDecimal + t0debt_lt: BigDecimal + t0debt_gte: BigDecimal + t0debt_lte: BigDecimal + t0debt_in: [BigDecimal!] + t0debt_not_in: [BigDecimal!] + t0Np: BigDecimal + t0Np_not: BigDecimal + t0Np_gt: BigDecimal + t0Np_lt: BigDecimal + t0Np_gte: BigDecimal + t0Np_lte: BigDecimal + t0Np_in: [BigDecimal!] + t0Np_not_in: [BigDecimal!] + _change_block: BlockChangedFilter + and: [Loan_filter] + or: [Loan_filter] +} + +enum Account_orderBy { + id + pools + kicks + lends + loans + settles + takes + reserveAuctions + proposalsCreated + proposalsExecuted + delegatedTo + delegatedTo__id + delegatedTo__rewardsClaimed + delegatedTo__tokensDelegated + delegatedTo__txCount + delegatedFrom + rewardsClaimed + distributionPeriodVotes + tokensDelegated + positions + txCount +} + +input Account_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pools: [String!] + pools_not: [String!] + pools_contains: [String!] + pools_not_contains: [String!] + pools_contains_nocase: [String!] + pools_not_contains_nocase: [String!] + pools_: Pool_filter + kicks: [String!] + kicks_not: [String!] + kicks_contains: [String!] + kicks_not_contains: [String!] + kicks_contains_nocase: [String!] + kicks_not_contains_nocase: [String!] + kicks_: Kick_filter + lends: [String!] + lends_not: [String!] + lends_contains: [String!] + lends_not_contains: [String!] + lends_contains_nocase: [String!] + lends_not_contains_nocase: [String!] + lends_: Lend_filter + loans: [String!] + loans_not: [String!] + loans_contains: [String!] + loans_not_contains: [String!] + loans_contains_nocase: [String!] + loans_not_contains_nocase: [String!] + loans_: Loan_filter + settles: [String!] + settles_not: [String!] + settles_contains: [String!] + settles_not_contains: [String!] + settles_contains_nocase: [String!] + settles_not_contains_nocase: [String!] + settles_: Settle_filter + takes: [String!] + takes_not: [String!] + takes_contains: [String!] + takes_not_contains: [String!] + takes_contains_nocase: [String!] + takes_not_contains_nocase: [String!] + takes_: Take_filter + reserveAuctions: [String!] + reserveAuctions_not: [String!] + reserveAuctions_contains: [String!] + reserveAuctions_not_contains: [String!] + reserveAuctions_contains_nocase: [String!] + reserveAuctions_not_contains_nocase: [String!] + reserveAuctions_: ReserveAuction_filter + proposalsCreated: [String!] + proposalsCreated_not: [String!] + proposalsCreated_contains: [String!] + proposalsCreated_not_contains: [String!] + proposalsCreated_contains_nocase: [String!] + proposalsCreated_not_contains_nocase: [String!] + proposalsCreated_: Proposal_filter + proposalsExecuted: [String!] + proposalsExecuted_not: [String!] + proposalsExecuted_contains: [String!] + proposalsExecuted_not_contains: [String!] + proposalsExecuted_contains_nocase: [String!] + proposalsExecuted_not_contains_nocase: [String!] + proposalsExecuted_: Proposal_filter + delegatedTo: String + delegatedTo_not: String + delegatedTo_gt: String + delegatedTo_lt: String + delegatedTo_gte: String + delegatedTo_lte: String + delegatedTo_in: [String!] + delegatedTo_not_in: [String!] + delegatedTo_starts_with: String + delegatedTo_starts_with_nocase: String + delegatedTo_not_starts_with: String + delegatedTo_not_starts_with_nocase: String + delegatedTo_ends_with: String + delegatedTo_ends_with_nocase: String + delegatedTo_not_ends_with: String + delegatedTo_not_ends_with_nocase: String + delegatedTo_contains: String + delegatedTo_not_contains: String + delegatedTo_contains_nocase: String + delegatedTo_not_contains_nocase: String + delegatedTo_: Account_filter + delegatedFrom: [String!] + delegatedFrom_not: [String!] + delegatedFrom_contains: [String!] + delegatedFrom_not_contains: [String!] + delegatedFrom_contains_nocase: [String!] + delegatedFrom_not_contains_nocase: [String!] + delegatedFrom_: Account_filter + rewardsClaimed: BigDecimal + rewardsClaimed_not: BigDecimal + rewardsClaimed_gt: BigDecimal + rewardsClaimed_lt: BigDecimal + rewardsClaimed_gte: BigDecimal + rewardsClaimed_lte: BigDecimal + rewardsClaimed_in: [BigDecimal!] + rewardsClaimed_not_in: [BigDecimal!] + distributionPeriodVotes: [String!] + distributionPeriodVotes_not: [String!] + distributionPeriodVotes_contains: [String!] + distributionPeriodVotes_not_contains: [String!] + distributionPeriodVotes_contains_nocase: [String!] + distributionPeriodVotes_not_contains_nocase: [String!] + distributionPeriodVotes_: DistributionPeriodVote_filter + tokensDelegated: BigDecimal + tokensDelegated_not: BigDecimal + tokensDelegated_gt: BigDecimal + tokensDelegated_lt: BigDecimal + tokensDelegated_gte: BigDecimal + tokensDelegated_lte: BigDecimal + tokensDelegated_in: [BigDecimal!] + tokensDelegated_not_in: [BigDecimal!] + positions: [String!] + positions_not: [String!] + positions_contains: [String!] + positions_not_contains: [String!] + positions_contains_nocase: [String!] + positions_not_contains_nocase: [String!] + positions_: Position_filter + txCount: BigInt + txCount_not: BigInt + txCount_gt: BigInt + txCount_lt: BigInt + txCount_gte: BigInt + txCount_lte: BigInt + txCount_in: [BigInt!] + txCount_not_in: [BigInt!] + _change_block: BlockChangedFilter + and: [Account_filter] + or: [Account_filter] +} + +enum LiquidationAuction_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + borrower + lastTakePrice + collateral + collateralRemaining + debt + debtRemaining + loan + loan__id + loan__poolAddress + loan__borrower + loan__inLiquidation + loan__collateralPledged + loan__thresholdPrice + loan__t0debt + loan__t0Np + kicker + kick + kick__id + kick__kicker + kick__locked + kick__claimable + kick__borrower + kick__debt + kick__collateral + kick__bond + kick__startingPrice + kick__blockNumber + kick__blockTimestamp + kick__transactionHash + kickTime + takes + bucketTakes + settles + settle + settle__id + settle__borrower + settle__collateral + settle__blockNumber + settle__blockTimestamp + settle__transactionHash + settleTime + settled + bondSize + bondFactor + neutralPrice + referencePrice + thresholdPrice +} + +input LiquidationAuction_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + lastTakePrice: BigDecimal + lastTakePrice_not: BigDecimal + lastTakePrice_gt: BigDecimal + lastTakePrice_lt: BigDecimal + lastTakePrice_gte: BigDecimal + lastTakePrice_lte: BigDecimal + lastTakePrice_in: [BigDecimal!] + lastTakePrice_not_in: [BigDecimal!] + collateral: BigDecimal + collateral_not: BigDecimal + collateral_gt: BigDecimal + collateral_lt: BigDecimal + collateral_gte: BigDecimal + collateral_lte: BigDecimal + collateral_in: [BigDecimal!] + collateral_not_in: [BigDecimal!] + collateralRemaining: BigDecimal + collateralRemaining_not: BigDecimal + collateralRemaining_gt: BigDecimal + collateralRemaining_lt: BigDecimal + collateralRemaining_gte: BigDecimal + collateralRemaining_lte: BigDecimal + collateralRemaining_in: [BigDecimal!] + collateralRemaining_not_in: [BigDecimal!] + debt: BigDecimal + debt_not: BigDecimal + debt_gt: BigDecimal + debt_lt: BigDecimal + debt_gte: BigDecimal + debt_lte: BigDecimal + debt_in: [BigDecimal!] + debt_not_in: [BigDecimal!] + debtRemaining: BigDecimal + debtRemaining_not: BigDecimal + debtRemaining_gt: BigDecimal + debtRemaining_lt: BigDecimal + debtRemaining_gte: BigDecimal + debtRemaining_lte: BigDecimal + debtRemaining_in: [BigDecimal!] + debtRemaining_not_in: [BigDecimal!] + loan: String + loan_not: String + loan_gt: String + loan_lt: String + loan_gte: String + loan_lte: String + loan_in: [String!] + loan_not_in: [String!] + loan_starts_with: String + loan_starts_with_nocase: String + loan_not_starts_with: String + loan_not_starts_with_nocase: String + loan_ends_with: String + loan_ends_with_nocase: String + loan_not_ends_with: String + loan_not_ends_with_nocase: String + loan_contains: String + loan_not_contains: String + loan_contains_nocase: String + loan_not_contains_nocase: String + loan_: Loan_filter + kicker: Bytes + kicker_not: Bytes + kicker_gt: Bytes + kicker_lt: Bytes + kicker_gte: Bytes + kicker_lte: Bytes + kicker_in: [Bytes!] + kicker_not_in: [Bytes!] + kicker_contains: Bytes + kicker_not_contains: Bytes + kick: String + kick_not: String + kick_gt: String + kick_lt: String + kick_gte: String + kick_lte: String + kick_in: [String!] + kick_not_in: [String!] + kick_starts_with: String + kick_starts_with_nocase: String + kick_not_starts_with: String + kick_not_starts_with_nocase: String + kick_ends_with: String + kick_ends_with_nocase: String + kick_not_ends_with: String + kick_not_ends_with_nocase: String + kick_contains: String + kick_not_contains: String + kick_contains_nocase: String + kick_not_contains_nocase: String + kick_: Kick_filter + kickTime: BigInt + kickTime_not: BigInt + kickTime_gt: BigInt + kickTime_lt: BigInt + kickTime_gte: BigInt + kickTime_lte: BigInt + kickTime_in: [BigInt!] + kickTime_not_in: [BigInt!] + takes: [String!] + takes_not: [String!] + takes_contains: [String!] + takes_not_contains: [String!] + takes_contains_nocase: [String!] + takes_not_contains_nocase: [String!] + takes_: Take_filter + bucketTakes: [String!] + bucketTakes_not: [String!] + bucketTakes_contains: [String!] + bucketTakes_not_contains: [String!] + bucketTakes_contains_nocase: [String!] + bucketTakes_not_contains_nocase: [String!] + bucketTakes_: BucketTake_filter + settles: [String!] + settles_not: [String!] + settles_contains: [String!] + settles_not_contains: [String!] + settles_contains_nocase: [String!] + settles_not_contains_nocase: [String!] + settles_: Settle_filter + settle: String + settle_not: String + settle_gt: String + settle_lt: String + settle_gte: String + settle_lte: String + settle_in: [String!] + settle_not_in: [String!] + settle_starts_with: String + settle_starts_with_nocase: String + settle_not_starts_with: String + settle_not_starts_with_nocase: String + settle_ends_with: String + settle_ends_with_nocase: String + settle_not_ends_with: String + settle_not_ends_with_nocase: String + settle_contains: String + settle_not_contains: String + settle_contains_nocase: String + settle_not_contains_nocase: String + settle_: AuctionSettle_filter + settleTime: BigInt + settleTime_not: BigInt + settleTime_gt: BigInt + settleTime_lt: BigInt + settleTime_gte: BigInt + settleTime_lte: BigInt + settleTime_in: [BigInt!] + settleTime_not_in: [BigInt!] + settled: Boolean + settled_not: Boolean + settled_gt: Boolean + settled_lt: Boolean + settled_gte: Boolean + settled_lte: Boolean + settled_in: [Boolean!] + settled_not_in: [Boolean!] + bondSize: BigDecimal + bondSize_not: BigDecimal + bondSize_gt: BigDecimal + bondSize_lt: BigDecimal + bondSize_gte: BigDecimal + bondSize_lte: BigDecimal + bondSize_in: [BigDecimal!] + bondSize_not_in: [BigDecimal!] + bondFactor: BigDecimal + bondFactor_not: BigDecimal + bondFactor_gt: BigDecimal + bondFactor_lt: BigDecimal + bondFactor_gte: BigDecimal + bondFactor_lte: BigDecimal + bondFactor_in: [BigDecimal!] + bondFactor_not_in: [BigDecimal!] + neutralPrice: BigDecimal + neutralPrice_not: BigDecimal + neutralPrice_gt: BigDecimal + neutralPrice_lt: BigDecimal + neutralPrice_gte: BigDecimal + neutralPrice_lte: BigDecimal + neutralPrice_in: [BigDecimal!] + neutralPrice_not_in: [BigDecimal!] + referencePrice: BigDecimal + referencePrice_not: BigDecimal + referencePrice_gt: BigDecimal + referencePrice_lt: BigDecimal + referencePrice_gte: BigDecimal + referencePrice_lte: BigDecimal + referencePrice_in: [BigDecimal!] + referencePrice_not_in: [BigDecimal!] + thresholdPrice: BigDecimal + thresholdPrice_not: BigDecimal + thresholdPrice_gt: BigDecimal + thresholdPrice_lt: BigDecimal + thresholdPrice_gte: BigDecimal + thresholdPrice_lte: BigDecimal + thresholdPrice_in: [BigDecimal!] + thresholdPrice_not_in: [BigDecimal!] + _change_block: BlockChangedFilter + and: [LiquidationAuction_filter] + or: [LiquidationAuction_filter] +} + +enum ReserveAuction_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + claimableReservesRemaining + lastTakePrice + burnEpoch + kick + kick__id + kick__kicker + kick__claimableReserves + kick__startingPrice + kick__blockNumber + kick__blockTimestamp + kick__transactionHash + takes + ajnaBurned +} + +input ReserveAuction_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + claimableReservesRemaining: BigDecimal + claimableReservesRemaining_not: BigDecimal + claimableReservesRemaining_gt: BigDecimal + claimableReservesRemaining_lt: BigDecimal + claimableReservesRemaining_gte: BigDecimal + claimableReservesRemaining_lte: BigDecimal + claimableReservesRemaining_in: [BigDecimal!] + claimableReservesRemaining_not_in: [BigDecimal!] + lastTakePrice: BigDecimal + lastTakePrice_not: BigDecimal + lastTakePrice_gt: BigDecimal + lastTakePrice_lt: BigDecimal + lastTakePrice_gte: BigDecimal + lastTakePrice_lte: BigDecimal + lastTakePrice_in: [BigDecimal!] + lastTakePrice_not_in: [BigDecimal!] + burnEpoch: BigInt + burnEpoch_not: BigInt + burnEpoch_gt: BigInt + burnEpoch_lt: BigInt + burnEpoch_gte: BigInt + burnEpoch_lte: BigInt + burnEpoch_in: [BigInt!] + burnEpoch_not_in: [BigInt!] + kick: String + kick_not: String + kick_gt: String + kick_lt: String + kick_gte: String + kick_lte: String + kick_in: [String!] + kick_not_in: [String!] + kick_starts_with: String + kick_starts_with_nocase: String + kick_not_starts_with: String + kick_not_starts_with_nocase: String + kick_ends_with: String + kick_ends_with_nocase: String + kick_not_ends_with: String + kick_not_ends_with_nocase: String + kick_contains: String + kick_not_contains: String + kick_contains_nocase: String + kick_not_contains_nocase: String + kick_: ReserveAuctionKick_filter + takes: [String!] + takes_not: [String!] + takes_contains: [String!] + takes_not_contains: [String!] + takes_contains_nocase: [String!] + takes_not_contains_nocase: [String!] + takes_: ReserveAuctionTake_filter + ajnaBurned: BigDecimal + ajnaBurned_not: BigDecimal + ajnaBurned_gt: BigDecimal + ajnaBurned_lt: BigDecimal + ajnaBurned_gte: BigDecimal + ajnaBurned_lte: BigDecimal + ajnaBurned_in: [BigDecimal!] + ajnaBurned_not_in: [BigDecimal!] + _change_block: BlockChangedFilter + and: [ReserveAuction_filter] + or: [ReserveAuction_filter] +} + +enum LPTransferorList_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + lender + transferors +} + +input LPTransferorList_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + transferors: [Bytes!] + transferors_not: [Bytes!] + transferors_contains: [Bytes!] + transferors_not_contains: [Bytes!] + transferors_contains_nocase: [Bytes!] + transferors_not_contains_nocase: [Bytes!] + _change_block: BlockChangedFilter + and: [LPTransferorList_filter] + or: [LPTransferorList_filter] +} + +enum LPAllowance_orderBy { + id + index + amount +} + +input LPAllowance_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + index: Int + index_not: Int + index_gt: Int + index_lt: Int + index_gte: Int + index_lte: Int + index_in: [Int!] + index_not_in: [Int!] + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + _change_block: BlockChangedFilter + and: [LPAllowance_filter] + or: [LPAllowance_filter] +} + +enum LPAllowanceList_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + lender + spender + allowances +} + +input LPAllowanceList_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + spender: Bytes + spender_not: Bytes + spender_gt: Bytes + spender_lt: Bytes + spender_gte: Bytes + spender_lte: Bytes + spender_in: [Bytes!] + spender_not_in: [Bytes!] + spender_contains: Bytes + spender_not_contains: Bytes + allowances: [String!] + allowances_not: [String!] + allowances_contains: [String!] + allowances_not_contains: [String!] + allowances_contains_nocase: [String!] + allowances_not_contains_nocase: [String!] + allowances_: LPAllowance_filter + _change_block: BlockChangedFilter + and: [LPAllowanceList_filter] + or: [LPAllowanceList_filter] +} + +enum AddCollateral_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + bucket + bucket__id + bucket__bucketIndex + bucket__bucketPrice + bucket__exchangeRate + bucket__poolAddress + bucket__collateral + bucket__deposit + bucket__lpb + actor + index + amount + lpAwarded + blockNumber + blockTimestamp + transactionHash +} + +input AddCollateral_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + bucket: String + bucket_not: String + bucket_gt: String + bucket_lt: String + bucket_gte: String + bucket_lte: String + bucket_in: [String!] + bucket_not_in: [String!] + bucket_starts_with: String + bucket_starts_with_nocase: String + bucket_not_starts_with: String + bucket_not_starts_with_nocase: String + bucket_ends_with: String + bucket_ends_with_nocase: String + bucket_not_ends_with: String + bucket_not_ends_with_nocase: String + bucket_contains: String + bucket_not_contains: String + bucket_contains_nocase: String + bucket_not_contains_nocase: String + bucket_: Bucket_filter + actor: Bytes + actor_not: Bytes + actor_gt: Bytes + actor_lt: Bytes + actor_gte: Bytes + actor_lte: Bytes + actor_in: [Bytes!] + actor_not_in: [Bytes!] + actor_contains: Bytes + actor_not_contains: Bytes + index: Int + index_not: Int + index_gt: Int + index_lt: Int + index_gte: Int + index_lte: Int + index_in: [Int!] + index_not_in: [Int!] + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + lpAwarded: BigDecimal + lpAwarded_not: BigDecimal + lpAwarded_gt: BigDecimal + lpAwarded_lt: BigDecimal + lpAwarded_gte: BigDecimal + lpAwarded_lte: BigDecimal + lpAwarded_in: [BigDecimal!] + lpAwarded_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [AddCollateral_filter] + or: [AddCollateral_filter] +} + +enum AddQuoteToken_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + bucket + bucket__id + bucket__bucketIndex + bucket__bucketPrice + bucket__exchangeRate + bucket__poolAddress + bucket__collateral + bucket__deposit + bucket__lpb + lender + index + amount + lpAwarded + lup + blockNumber + blockTimestamp + transactionHash +} + +input AddQuoteToken_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + bucket: String + bucket_not: String + bucket_gt: String + bucket_lt: String + bucket_gte: String + bucket_lte: String + bucket_in: [String!] + bucket_not_in: [String!] + bucket_starts_with: String + bucket_starts_with_nocase: String + bucket_not_starts_with: String + bucket_not_starts_with_nocase: String + bucket_ends_with: String + bucket_ends_with_nocase: String + bucket_not_ends_with: String + bucket_not_ends_with_nocase: String + bucket_contains: String + bucket_not_contains: String + bucket_contains_nocase: String + bucket_not_contains_nocase: String + bucket_: Bucket_filter + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + index: Int + index_not: Int + index_gt: Int + index_lt: Int + index_gte: Int + index_lte: Int + index_in: [Int!] + index_not_in: [Int!] + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + lpAwarded: BigDecimal + lpAwarded_not: BigDecimal + lpAwarded_gt: BigDecimal + lpAwarded_lt: BigDecimal + lpAwarded_gte: BigDecimal + lpAwarded_lte: BigDecimal + lpAwarded_in: [BigDecimal!] + lpAwarded_not_in: [BigDecimal!] + lup: BigDecimal + lup_not: BigDecimal + lup_gt: BigDecimal + lup_lt: BigDecimal + lup_gte: BigDecimal + lup_lte: BigDecimal + lup_in: [BigDecimal!] + lup_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [AddQuoteToken_filter] + or: [AddQuoteToken_filter] +} + +enum AuctionSettle_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + loan + loan__id + loan__poolAddress + loan__borrower + loan__inLiquidation + loan__collateralPledged + loan__thresholdPrice + loan__t0debt + loan__t0Np + borrower + collateral + blockNumber + blockTimestamp + transactionHash +} + +input AuctionSettle_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + loan: String + loan_not: String + loan_gt: String + loan_lt: String + loan_gte: String + loan_lte: String + loan_in: [String!] + loan_not_in: [String!] + loan_starts_with: String + loan_starts_with_nocase: String + loan_not_starts_with: String + loan_not_starts_with_nocase: String + loan_ends_with: String + loan_ends_with_nocase: String + loan_not_ends_with: String + loan_not_ends_with_nocase: String + loan_contains: String + loan_not_contains: String + loan_contains_nocase: String + loan_not_contains_nocase: String + loan_: Loan_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + collateral: BigDecimal + collateral_not: BigDecimal + collateral_gt: BigDecimal + collateral_lt: BigDecimal + collateral_gte: BigDecimal + collateral_lte: BigDecimal + collateral_in: [BigDecimal!] + collateral_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [AuctionSettle_filter] + or: [AuctionSettle_filter] +} + +enum BondWithdrawn_orderBy { + id + kicker + reciever + amount + blockNumber + blockTimestamp + transactionHash +} + +input BondWithdrawn_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + kicker: Bytes + kicker_not: Bytes + kicker_gt: Bytes + kicker_lt: Bytes + kicker_gte: Bytes + kicker_lte: Bytes + kicker_in: [Bytes!] + kicker_not_in: [Bytes!] + kicker_contains: Bytes + kicker_not_contains: Bytes + reciever: Bytes + reciever_not: Bytes + reciever_gt: Bytes + reciever_lt: Bytes + reciever_gte: Bytes + reciever_lte: Bytes + reciever_in: [Bytes!] + reciever_not_in: [Bytes!] + reciever_contains: Bytes + reciever_not_contains: Bytes + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [BondWithdrawn_filter] + or: [BondWithdrawn_filter] +} + +enum BucketBankruptcy_orderBy { + id + bucket + bucket__id + bucket__bucketIndex + bucket__bucketPrice + bucket__exchangeRate + bucket__poolAddress + bucket__collateral + bucket__deposit + bucket__lpb + index + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + lpForfeited + blockNumber + blockTimestamp + transactionHash +} + +input BucketBankruptcy_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + bucket: String + bucket_not: String + bucket_gt: String + bucket_lt: String + bucket_gte: String + bucket_lte: String + bucket_in: [String!] + bucket_not_in: [String!] + bucket_starts_with: String + bucket_starts_with_nocase: String + bucket_not_starts_with: String + bucket_not_starts_with_nocase: String + bucket_ends_with: String + bucket_ends_with_nocase: String + bucket_not_ends_with: String + bucket_not_ends_with_nocase: String + bucket_contains: String + bucket_not_contains: String + bucket_contains_nocase: String + bucket_not_contains_nocase: String + bucket_: Bucket_filter + index: Int + index_not: Int + index_gt: Int + index_lt: Int + index_gte: Int + index_lte: Int + index_in: [Int!] + index_not_in: [Int!] + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + lpForfeited: BigDecimal + lpForfeited_not: BigDecimal + lpForfeited_gt: BigDecimal + lpForfeited_lt: BigDecimal + lpForfeited_gte: BigDecimal + lpForfeited_lte: BigDecimal + lpForfeited_in: [BigDecimal!] + lpForfeited_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [BucketBankruptcy_filter] + or: [BucketBankruptcy_filter] +} + +enum BucketTake_orderBy { + id + borrower + taker + liquidationAuction + liquidationAuction__id + liquidationAuction__borrower + liquidationAuction__lastTakePrice + liquidationAuction__collateral + liquidationAuction__collateralRemaining + liquidationAuction__debt + liquidationAuction__debtRemaining + liquidationAuction__kicker + liquidationAuction__kickTime + liquidationAuction__settleTime + liquidationAuction__settled + liquidationAuction__bondSize + liquidationAuction__bondFactor + liquidationAuction__neutralPrice + liquidationAuction__referencePrice + liquidationAuction__thresholdPrice + loan + loan__id + loan__poolAddress + loan__borrower + loan__inLiquidation + loan__collateralPledged + loan__thresholdPrice + loan__t0debt + loan__t0Np + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + index + auctionPrice + amount + collateral + bondChange + isReward + lpAwarded + lpAwarded__id + lpAwarded__taker + lpAwarded__kicker + lpAwarded__lpAwardedTaker + lpAwarded__lpAwardedKicker + lpAwarded__blockNumber + lpAwarded__blockTimestamp + lpAwarded__transactionHash + blockNumber + blockTimestamp + transactionHash +} + +input BucketTake_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + taker: Bytes + taker_not: Bytes + taker_gt: Bytes + taker_lt: Bytes + taker_gte: Bytes + taker_lte: Bytes + taker_in: [Bytes!] + taker_not_in: [Bytes!] + taker_contains: Bytes + taker_not_contains: Bytes + liquidationAuction: String + liquidationAuction_not: String + liquidationAuction_gt: String + liquidationAuction_lt: String + liquidationAuction_gte: String + liquidationAuction_lte: String + liquidationAuction_in: [String!] + liquidationAuction_not_in: [String!] + liquidationAuction_starts_with: String + liquidationAuction_starts_with_nocase: String + liquidationAuction_not_starts_with: String + liquidationAuction_not_starts_with_nocase: String + liquidationAuction_ends_with: String + liquidationAuction_ends_with_nocase: String + liquidationAuction_not_ends_with: String + liquidationAuction_not_ends_with_nocase: String + liquidationAuction_contains: String + liquidationAuction_not_contains: String + liquidationAuction_contains_nocase: String + liquidationAuction_not_contains_nocase: String + liquidationAuction_: LiquidationAuction_filter + loan: String + loan_not: String + loan_gt: String + loan_lt: String + loan_gte: String + loan_lte: String + loan_in: [String!] + loan_not_in: [String!] + loan_starts_with: String + loan_starts_with_nocase: String + loan_not_starts_with: String + loan_not_starts_with_nocase: String + loan_ends_with: String + loan_ends_with_nocase: String + loan_not_ends_with: String + loan_not_ends_with_nocase: String + loan_contains: String + loan_not_contains: String + loan_contains_nocase: String + loan_not_contains_nocase: String + loan_: Loan_filter + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + index: Int + index_not: Int + index_gt: Int + index_lt: Int + index_gte: Int + index_lte: Int + index_in: [Int!] + index_not_in: [Int!] + auctionPrice: BigDecimal + auctionPrice_not: BigDecimal + auctionPrice_gt: BigDecimal + auctionPrice_lt: BigDecimal + auctionPrice_gte: BigDecimal + auctionPrice_lte: BigDecimal + auctionPrice_in: [BigDecimal!] + auctionPrice_not_in: [BigDecimal!] + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + collateral: BigDecimal + collateral_not: BigDecimal + collateral_gt: BigDecimal + collateral_lt: BigDecimal + collateral_gte: BigDecimal + collateral_lte: BigDecimal + collateral_in: [BigDecimal!] + collateral_not_in: [BigDecimal!] + bondChange: BigDecimal + bondChange_not: BigDecimal + bondChange_gt: BigDecimal + bondChange_lt: BigDecimal + bondChange_gte: BigDecimal + bondChange_lte: BigDecimal + bondChange_in: [BigDecimal!] + bondChange_not_in: [BigDecimal!] + isReward: Boolean + isReward_not: Boolean + isReward_gt: Boolean + isReward_lt: Boolean + isReward_gte: Boolean + isReward_lte: Boolean + isReward_in: [Boolean!] + isReward_not_in: [Boolean!] + lpAwarded: String + lpAwarded_not: String + lpAwarded_gt: String + lpAwarded_lt: String + lpAwarded_gte: String + lpAwarded_lte: String + lpAwarded_in: [String!] + lpAwarded_not_in: [String!] + lpAwarded_starts_with: String + lpAwarded_starts_with_nocase: String + lpAwarded_not_starts_with: String + lpAwarded_not_starts_with_nocase: String + lpAwarded_ends_with: String + lpAwarded_ends_with_nocase: String + lpAwarded_not_ends_with: String + lpAwarded_not_ends_with_nocase: String + lpAwarded_contains: String + lpAwarded_not_contains: String + lpAwarded_contains_nocase: String + lpAwarded_not_contains_nocase: String + lpAwarded_: BucketTakeLPAwarded_filter + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [BucketTake_filter] + or: [BucketTake_filter] +} + +enum BucketTakeLPAwarded_orderBy { + id + taker + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + kicker + lpAwardedTaker + lpAwardedKicker + blockNumber + blockTimestamp + transactionHash +} + +input BucketTakeLPAwarded_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + taker: Bytes + taker_not: Bytes + taker_gt: Bytes + taker_lt: Bytes + taker_gte: Bytes + taker_lte: Bytes + taker_in: [Bytes!] + taker_not_in: [Bytes!] + taker_contains: Bytes + taker_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + kicker: Bytes + kicker_not: Bytes + kicker_gt: Bytes + kicker_lt: Bytes + kicker_gte: Bytes + kicker_lte: Bytes + kicker_in: [Bytes!] + kicker_not_in: [Bytes!] + kicker_contains: Bytes + kicker_not_contains: Bytes + lpAwardedTaker: BigDecimal + lpAwardedTaker_not: BigDecimal + lpAwardedTaker_gt: BigDecimal + lpAwardedTaker_lt: BigDecimal + lpAwardedTaker_gte: BigDecimal + lpAwardedTaker_lte: BigDecimal + lpAwardedTaker_in: [BigDecimal!] + lpAwardedTaker_not_in: [BigDecimal!] + lpAwardedKicker: BigDecimal + lpAwardedKicker_not: BigDecimal + lpAwardedKicker_gt: BigDecimal + lpAwardedKicker_lt: BigDecimal + lpAwardedKicker_gte: BigDecimal + lpAwardedKicker_lte: BigDecimal + lpAwardedKicker_in: [BigDecimal!] + lpAwardedKicker_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [BucketTakeLPAwarded_filter] + or: [BucketTakeLPAwarded_filter] +} + +enum DrawDebt_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + borrower + amountBorrowed + collateralPledged + lup + blockNumber + blockTimestamp + transactionHash +} + +input DrawDebt_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + amountBorrowed: BigDecimal + amountBorrowed_not: BigDecimal + amountBorrowed_gt: BigDecimal + amountBorrowed_lt: BigDecimal + amountBorrowed_gte: BigDecimal + amountBorrowed_lte: BigDecimal + amountBorrowed_in: [BigDecimal!] + amountBorrowed_not_in: [BigDecimal!] + collateralPledged: BigDecimal + collateralPledged_not: BigDecimal + collateralPledged_gt: BigDecimal + collateralPledged_lt: BigDecimal + collateralPledged_gte: BigDecimal + collateralPledged_lte: BigDecimal + collateralPledged_in: [BigDecimal!] + collateralPledged_not_in: [BigDecimal!] + lup: BigDecimal + lup_not: BigDecimal + lup_gt: BigDecimal + lup_lt: BigDecimal + lup_gte: BigDecimal + lup_lte: BigDecimal + lup_in: [BigDecimal!] + lup_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [DrawDebt_filter] + or: [DrawDebt_filter] +} + +enum Flashloan_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + borrower + amount +} + +input Flashloan_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + _change_block: BlockChangedFilter + and: [Flashloan_filter] + or: [Flashloan_filter] +} + +enum Kick_orderBy { + id + kicker + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + loan + loan__id + loan__poolAddress + loan__borrower + loan__inLiquidation + loan__collateralPledged + loan__thresholdPrice + loan__t0debt + loan__t0Np + locked + claimable + liquidationAuction + liquidationAuction__id + liquidationAuction__borrower + liquidationAuction__lastTakePrice + liquidationAuction__collateral + liquidationAuction__collateralRemaining + liquidationAuction__debt + liquidationAuction__debtRemaining + liquidationAuction__kicker + liquidationAuction__kickTime + liquidationAuction__settleTime + liquidationAuction__settled + liquidationAuction__bondSize + liquidationAuction__bondFactor + liquidationAuction__neutralPrice + liquidationAuction__referencePrice + liquidationAuction__thresholdPrice + borrower + debt + collateral + bond + startingPrice + blockNumber + blockTimestamp + transactionHash +} + +input Kick_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + kicker: Bytes + kicker_not: Bytes + kicker_gt: Bytes + kicker_lt: Bytes + kicker_gte: Bytes + kicker_lte: Bytes + kicker_in: [Bytes!] + kicker_not_in: [Bytes!] + kicker_contains: Bytes + kicker_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + loan: String + loan_not: String + loan_gt: String + loan_lt: String + loan_gte: String + loan_lte: String + loan_in: [String!] + loan_not_in: [String!] + loan_starts_with: String + loan_starts_with_nocase: String + loan_not_starts_with: String + loan_not_starts_with_nocase: String + loan_ends_with: String + loan_ends_with_nocase: String + loan_not_ends_with: String + loan_not_ends_with_nocase: String + loan_contains: String + loan_not_contains: String + loan_contains_nocase: String + loan_not_contains_nocase: String + loan_: Loan_filter + locked: BigDecimal + locked_not: BigDecimal + locked_gt: BigDecimal + locked_lt: BigDecimal + locked_gte: BigDecimal + locked_lte: BigDecimal + locked_in: [BigDecimal!] + locked_not_in: [BigDecimal!] + claimable: BigDecimal + claimable_not: BigDecimal + claimable_gt: BigDecimal + claimable_lt: BigDecimal + claimable_gte: BigDecimal + claimable_lte: BigDecimal + claimable_in: [BigDecimal!] + claimable_not_in: [BigDecimal!] + liquidationAuction: String + liquidationAuction_not: String + liquidationAuction_gt: String + liquidationAuction_lt: String + liquidationAuction_gte: String + liquidationAuction_lte: String + liquidationAuction_in: [String!] + liquidationAuction_not_in: [String!] + liquidationAuction_starts_with: String + liquidationAuction_starts_with_nocase: String + liquidationAuction_not_starts_with: String + liquidationAuction_not_starts_with_nocase: String + liquidationAuction_ends_with: String + liquidationAuction_ends_with_nocase: String + liquidationAuction_not_ends_with: String + liquidationAuction_not_ends_with_nocase: String + liquidationAuction_contains: String + liquidationAuction_not_contains: String + liquidationAuction_contains_nocase: String + liquidationAuction_not_contains_nocase: String + liquidationAuction_: LiquidationAuction_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + debt: BigDecimal + debt_not: BigDecimal + debt_gt: BigDecimal + debt_lt: BigDecimal + debt_gte: BigDecimal + debt_lte: BigDecimal + debt_in: [BigDecimal!] + debt_not_in: [BigDecimal!] + collateral: BigDecimal + collateral_not: BigDecimal + collateral_gt: BigDecimal + collateral_lt: BigDecimal + collateral_gte: BigDecimal + collateral_lte: BigDecimal + collateral_in: [BigDecimal!] + collateral_not_in: [BigDecimal!] + bond: BigDecimal + bond_not: BigDecimal + bond_gt: BigDecimal + bond_lt: BigDecimal + bond_gte: BigDecimal + bond_lte: BigDecimal + bond_in: [BigDecimal!] + bond_not_in: [BigDecimal!] + startingPrice: BigDecimal + startingPrice_not: BigDecimal + startingPrice_gt: BigDecimal + startingPrice_lt: BigDecimal + startingPrice_gte: BigDecimal + startingPrice_lte: BigDecimal + startingPrice_in: [BigDecimal!] + startingPrice_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [Kick_filter] + or: [Kick_filter] +} + +enum LoanStamped_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + borrower + blockNumber + blockTimestamp + transactionHash +} + +input LoanStamped_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [LoanStamped_filter] + or: [LoanStamped_filter] +} + +enum MoveQuoteToken_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + lender + from + from__id + from__bucketIndex + from__bucketPrice + from__exchangeRate + from__poolAddress + from__collateral + from__deposit + from__lpb + to + to__id + to__bucketIndex + to__bucketPrice + to__exchangeRate + to__poolAddress + to__collateral + to__deposit + to__lpb + amount + lpRedeemedFrom + lpAwardedTo + lup + blockNumber + blockTimestamp + transactionHash +} + +input MoveQuoteToken_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + from: String + from_not: String + from_gt: String + from_lt: String + from_gte: String + from_lte: String + from_in: [String!] + from_not_in: [String!] + from_starts_with: String + from_starts_with_nocase: String + from_not_starts_with: String + from_not_starts_with_nocase: String + from_ends_with: String + from_ends_with_nocase: String + from_not_ends_with: String + from_not_ends_with_nocase: String + from_contains: String + from_not_contains: String + from_contains_nocase: String + from_not_contains_nocase: String + from_: Bucket_filter + to: String + to_not: String + to_gt: String + to_lt: String + to_gte: String + to_lte: String + to_in: [String!] + to_not_in: [String!] + to_starts_with: String + to_starts_with_nocase: String + to_not_starts_with: String + to_not_starts_with_nocase: String + to_ends_with: String + to_ends_with_nocase: String + to_not_ends_with: String + to_not_ends_with_nocase: String + to_contains: String + to_not_contains: String + to_contains_nocase: String + to_not_contains_nocase: String + to_: Bucket_filter + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + lpRedeemedFrom: BigDecimal + lpRedeemedFrom_not: BigDecimal + lpRedeemedFrom_gt: BigDecimal + lpRedeemedFrom_lt: BigDecimal + lpRedeemedFrom_gte: BigDecimal + lpRedeemedFrom_lte: BigDecimal + lpRedeemedFrom_in: [BigDecimal!] + lpRedeemedFrom_not_in: [BigDecimal!] + lpAwardedTo: BigDecimal + lpAwardedTo_not: BigDecimal + lpAwardedTo_gt: BigDecimal + lpAwardedTo_lt: BigDecimal + lpAwardedTo_gte: BigDecimal + lpAwardedTo_lte: BigDecimal + lpAwardedTo_in: [BigDecimal!] + lpAwardedTo_not_in: [BigDecimal!] + lup: BigDecimal + lup_not: BigDecimal + lup_gt: BigDecimal + lup_lt: BigDecimal + lup_gte: BigDecimal + lup_lte: BigDecimal + lup_in: [BigDecimal!] + lup_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [MoveQuoteToken_filter] + or: [MoveQuoteToken_filter] +} + +enum RemoveCollateral_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + bucket + bucket__id + bucket__bucketIndex + bucket__bucketPrice + bucket__exchangeRate + bucket__poolAddress + bucket__collateral + bucket__deposit + bucket__lpb + claimer + index + amount + lpRedeemed + blockNumber + blockTimestamp + transactionHash +} + +input RemoveCollateral_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + bucket: String + bucket_not: String + bucket_gt: String + bucket_lt: String + bucket_gte: String + bucket_lte: String + bucket_in: [String!] + bucket_not_in: [String!] + bucket_starts_with: String + bucket_starts_with_nocase: String + bucket_not_starts_with: String + bucket_not_starts_with_nocase: String + bucket_ends_with: String + bucket_ends_with_nocase: String + bucket_not_ends_with: String + bucket_not_ends_with_nocase: String + bucket_contains: String + bucket_not_contains: String + bucket_contains_nocase: String + bucket_not_contains_nocase: String + bucket_: Bucket_filter + claimer: Bytes + claimer_not: Bytes + claimer_gt: Bytes + claimer_lt: Bytes + claimer_gte: Bytes + claimer_lte: Bytes + claimer_in: [Bytes!] + claimer_not_in: [Bytes!] + claimer_contains: Bytes + claimer_not_contains: Bytes + index: Int + index_not: Int + index_gt: Int + index_lt: Int + index_gte: Int + index_lte: Int + index_in: [Int!] + index_not_in: [Int!] + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + lpRedeemed: BigDecimal + lpRedeemed_not: BigDecimal + lpRedeemed_gt: BigDecimal + lpRedeemed_lt: BigDecimal + lpRedeemed_gte: BigDecimal + lpRedeemed_lte: BigDecimal + lpRedeemed_in: [BigDecimal!] + lpRedeemed_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [RemoveCollateral_filter] + or: [RemoveCollateral_filter] +} + +enum RemoveQuoteToken_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + bucket + bucket__id + bucket__bucketIndex + bucket__bucketPrice + bucket__exchangeRate + bucket__poolAddress + bucket__collateral + bucket__deposit + bucket__lpb + lender + index + amount + lpRedeemed + lup + blockNumber + blockTimestamp + transactionHash +} + +input RemoveQuoteToken_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + bucket: String + bucket_not: String + bucket_gt: String + bucket_lt: String + bucket_gte: String + bucket_lte: String + bucket_in: [String!] + bucket_not_in: [String!] + bucket_starts_with: String + bucket_starts_with_nocase: String + bucket_not_starts_with: String + bucket_not_starts_with_nocase: String + bucket_ends_with: String + bucket_ends_with_nocase: String + bucket_not_ends_with: String + bucket_not_ends_with_nocase: String + bucket_contains: String + bucket_not_contains: String + bucket_contains_nocase: String + bucket_not_contains_nocase: String + bucket_: Bucket_filter + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + index: Int + index_not: Int + index_gt: Int + index_lt: Int + index_gte: Int + index_lte: Int + index_in: [Int!] + index_not_in: [Int!] + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + lpRedeemed: BigDecimal + lpRedeemed_not: BigDecimal + lpRedeemed_gt: BigDecimal + lpRedeemed_lt: BigDecimal + lpRedeemed_gte: BigDecimal + lpRedeemed_lte: BigDecimal + lpRedeemed_in: [BigDecimal!] + lpRedeemed_not_in: [BigDecimal!] + lup: BigDecimal + lup_not: BigDecimal + lup_gt: BigDecimal + lup_lt: BigDecimal + lup_gte: BigDecimal + lup_lte: BigDecimal + lup_in: [BigDecimal!] + lup_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [RemoveQuoteToken_filter] + or: [RemoveQuoteToken_filter] +} + +enum RepayDebt_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + borrower + quoteRepaid + collateralPulled + lup + blockNumber + blockTimestamp + transactionHash +} + +input RepayDebt_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + quoteRepaid: BigDecimal + quoteRepaid_not: BigDecimal + quoteRepaid_gt: BigDecimal + quoteRepaid_lt: BigDecimal + quoteRepaid_gte: BigDecimal + quoteRepaid_lte: BigDecimal + quoteRepaid_in: [BigDecimal!] + quoteRepaid_not_in: [BigDecimal!] + collateralPulled: BigDecimal + collateralPulled_not: BigDecimal + collateralPulled_gt: BigDecimal + collateralPulled_lt: BigDecimal + collateralPulled_gte: BigDecimal + collateralPulled_lte: BigDecimal + collateralPulled_in: [BigDecimal!] + collateralPulled_not_in: [BigDecimal!] + lup: BigDecimal + lup_not: BigDecimal + lup_gt: BigDecimal + lup_lt: BigDecimal + lup_gte: BigDecimal + lup_lte: BigDecimal + lup_in: [BigDecimal!] + lup_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [RepayDebt_filter] + or: [RepayDebt_filter] +} + +enum ReserveAuctionKick_orderBy { + id + kicker + reserveAuction + reserveAuction__id + reserveAuction__claimableReservesRemaining + reserveAuction__lastTakePrice + reserveAuction__burnEpoch + reserveAuction__ajnaBurned + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + claimableReserves + startingPrice + blockNumber + blockTimestamp + transactionHash +} + +input ReserveAuctionKick_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + kicker: Bytes + kicker_not: Bytes + kicker_gt: Bytes + kicker_lt: Bytes + kicker_gte: Bytes + kicker_lte: Bytes + kicker_in: [Bytes!] + kicker_not_in: [Bytes!] + kicker_contains: Bytes + kicker_not_contains: Bytes + reserveAuction: String + reserveAuction_not: String + reserveAuction_gt: String + reserveAuction_lt: String + reserveAuction_gte: String + reserveAuction_lte: String + reserveAuction_in: [String!] + reserveAuction_not_in: [String!] + reserveAuction_starts_with: String + reserveAuction_starts_with_nocase: String + reserveAuction_not_starts_with: String + reserveAuction_not_starts_with_nocase: String + reserveAuction_ends_with: String + reserveAuction_ends_with_nocase: String + reserveAuction_not_ends_with: String + reserveAuction_not_ends_with_nocase: String + reserveAuction_contains: String + reserveAuction_not_contains: String + reserveAuction_contains_nocase: String + reserveAuction_not_contains_nocase: String + reserveAuction_: ReserveAuction_filter + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + claimableReserves: BigDecimal + claimableReserves_not: BigDecimal + claimableReserves_gt: BigDecimal + claimableReserves_lt: BigDecimal + claimableReserves_gte: BigDecimal + claimableReserves_lte: BigDecimal + claimableReserves_in: [BigDecimal!] + claimableReserves_not_in: [BigDecimal!] + startingPrice: BigDecimal + startingPrice_not: BigDecimal + startingPrice_gt: BigDecimal + startingPrice_lt: BigDecimal + startingPrice_gte: BigDecimal + startingPrice_lte: BigDecimal + startingPrice_in: [BigDecimal!] + startingPrice_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [ReserveAuctionKick_filter] + or: [ReserveAuctionKick_filter] +} + +enum ReserveAuctionTake_orderBy { + id + taker + reserveAuction + reserveAuction__id + reserveAuction__claimableReservesRemaining + reserveAuction__lastTakePrice + reserveAuction__burnEpoch + reserveAuction__ajnaBurned + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + claimableReservesRemaining + auctionPrice + quotePurchased + ajnaBurned + blockNumber + blockTimestamp + transactionHash +} + +input ReserveAuctionTake_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + taker: Bytes + taker_not: Bytes + taker_gt: Bytes + taker_lt: Bytes + taker_gte: Bytes + taker_lte: Bytes + taker_in: [Bytes!] + taker_not_in: [Bytes!] + taker_contains: Bytes + taker_not_contains: Bytes + reserveAuction: String + reserveAuction_not: String + reserveAuction_gt: String + reserveAuction_lt: String + reserveAuction_gte: String + reserveAuction_lte: String + reserveAuction_in: [String!] + reserveAuction_not_in: [String!] + reserveAuction_starts_with: String + reserveAuction_starts_with_nocase: String + reserveAuction_not_starts_with: String + reserveAuction_not_starts_with_nocase: String + reserveAuction_ends_with: String + reserveAuction_ends_with_nocase: String + reserveAuction_not_ends_with: String + reserveAuction_not_ends_with_nocase: String + reserveAuction_contains: String + reserveAuction_not_contains: String + reserveAuction_contains_nocase: String + reserveAuction_not_contains_nocase: String + reserveAuction_: ReserveAuction_filter + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + claimableReservesRemaining: BigDecimal + claimableReservesRemaining_not: BigDecimal + claimableReservesRemaining_gt: BigDecimal + claimableReservesRemaining_lt: BigDecimal + claimableReservesRemaining_gte: BigDecimal + claimableReservesRemaining_lte: BigDecimal + claimableReservesRemaining_in: [BigDecimal!] + claimableReservesRemaining_not_in: [BigDecimal!] + auctionPrice: BigDecimal + auctionPrice_not: BigDecimal + auctionPrice_gt: BigDecimal + auctionPrice_lt: BigDecimal + auctionPrice_gte: BigDecimal + auctionPrice_lte: BigDecimal + auctionPrice_in: [BigDecimal!] + auctionPrice_not_in: [BigDecimal!] + quotePurchased: BigDecimal + quotePurchased_not: BigDecimal + quotePurchased_gt: BigDecimal + quotePurchased_lt: BigDecimal + quotePurchased_gte: BigDecimal + quotePurchased_lte: BigDecimal + quotePurchased_in: [BigDecimal!] + quotePurchased_not_in: [BigDecimal!] + ajnaBurned: BigDecimal + ajnaBurned_not: BigDecimal + ajnaBurned_gt: BigDecimal + ajnaBurned_lt: BigDecimal + ajnaBurned_gte: BigDecimal + ajnaBurned_lte: BigDecimal + ajnaBurned_in: [BigDecimal!] + ajnaBurned_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [ReserveAuctionTake_filter] + or: [ReserveAuctionTake_filter] +} + +enum ResetInterestRate_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + oldBorrowRate + newBorrowRate + oldLendRate + newLendRate + blockNumber + blockTimestamp + transactionHash +} + +input ResetInterestRate_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + oldBorrowRate: BigDecimal + oldBorrowRate_not: BigDecimal + oldBorrowRate_gt: BigDecimal + oldBorrowRate_lt: BigDecimal + oldBorrowRate_gte: BigDecimal + oldBorrowRate_lte: BigDecimal + oldBorrowRate_in: [BigDecimal!] + oldBorrowRate_not_in: [BigDecimal!] + newBorrowRate: BigDecimal + newBorrowRate_not: BigDecimal + newBorrowRate_gt: BigDecimal + newBorrowRate_lt: BigDecimal + newBorrowRate_gte: BigDecimal + newBorrowRate_lte: BigDecimal + newBorrowRate_in: [BigDecimal!] + newBorrowRate_not_in: [BigDecimal!] + oldLendRate: BigDecimal + oldLendRate_not: BigDecimal + oldLendRate_gt: BigDecimal + oldLendRate_lt: BigDecimal + oldLendRate_gte: BigDecimal + oldLendRate_lte: BigDecimal + oldLendRate_in: [BigDecimal!] + oldLendRate_not_in: [BigDecimal!] + newLendRate: BigDecimal + newLendRate_not: BigDecimal + newLendRate_gt: BigDecimal + newLendRate_lt: BigDecimal + newLendRate_gte: BigDecimal + newLendRate_lte: BigDecimal + newLendRate_in: [BigDecimal!] + newLendRate_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [ResetInterestRate_filter] + or: [ResetInterestRate_filter] +} + +enum Settle_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + liquidationAuction + liquidationAuction__id + liquidationAuction__borrower + liquidationAuction__lastTakePrice + liquidationAuction__collateral + liquidationAuction__collateralRemaining + liquidationAuction__debt + liquidationAuction__debtRemaining + liquidationAuction__kicker + liquidationAuction__kickTime + liquidationAuction__settleTime + liquidationAuction__settled + liquidationAuction__bondSize + liquidationAuction__bondFactor + liquidationAuction__neutralPrice + liquidationAuction__referencePrice + liquidationAuction__thresholdPrice + loan + loan__id + loan__poolAddress + loan__borrower + loan__inLiquidation + loan__collateralPledged + loan__thresholdPrice + loan__t0debt + loan__t0Np + borrower + settledDebt + blockNumber + blockTimestamp + transactionHash +} + +input Settle_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + liquidationAuction: String + liquidationAuction_not: String + liquidationAuction_gt: String + liquidationAuction_lt: String + liquidationAuction_gte: String + liquidationAuction_lte: String + liquidationAuction_in: [String!] + liquidationAuction_not_in: [String!] + liquidationAuction_starts_with: String + liquidationAuction_starts_with_nocase: String + liquidationAuction_not_starts_with: String + liquidationAuction_not_starts_with_nocase: String + liquidationAuction_ends_with: String + liquidationAuction_ends_with_nocase: String + liquidationAuction_not_ends_with: String + liquidationAuction_not_ends_with_nocase: String + liquidationAuction_contains: String + liquidationAuction_not_contains: String + liquidationAuction_contains_nocase: String + liquidationAuction_not_contains_nocase: String + liquidationAuction_: LiquidationAuction_filter + loan: String + loan_not: String + loan_gt: String + loan_lt: String + loan_gte: String + loan_lte: String + loan_in: [String!] + loan_not_in: [String!] + loan_starts_with: String + loan_starts_with_nocase: String + loan_not_starts_with: String + loan_not_starts_with_nocase: String + loan_ends_with: String + loan_ends_with_nocase: String + loan_not_ends_with: String + loan_not_ends_with_nocase: String + loan_contains: String + loan_not_contains: String + loan_contains_nocase: String + loan_not_contains_nocase: String + loan_: Loan_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + settledDebt: BigDecimal + settledDebt_not: BigDecimal + settledDebt_gt: BigDecimal + settledDebt_lt: BigDecimal + settledDebt_gte: BigDecimal + settledDebt_lte: BigDecimal + settledDebt_in: [BigDecimal!] + settledDebt_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [Settle_filter] + or: [Settle_filter] +} + +enum Take_orderBy { + id + taker + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + borrower + liquidationAuction + liquidationAuction__id + liquidationAuction__borrower + liquidationAuction__lastTakePrice + liquidationAuction__collateral + liquidationAuction__collateralRemaining + liquidationAuction__debt + liquidationAuction__debtRemaining + liquidationAuction__kicker + liquidationAuction__kickTime + liquidationAuction__settleTime + liquidationAuction__settled + liquidationAuction__bondSize + liquidationAuction__bondFactor + liquidationAuction__neutralPrice + liquidationAuction__referencePrice + liquidationAuction__thresholdPrice + loan + loan__id + loan__poolAddress + loan__borrower + loan__inLiquidation + loan__collateralPledged + loan__thresholdPrice + loan__t0debt + loan__t0Np + auctionPrice + amount + collateral + bondChange + isReward + blockNumber + blockTimestamp + transactionHash +} + +input Take_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + taker: Bytes + taker_not: Bytes + taker_gt: Bytes + taker_lt: Bytes + taker_gte: Bytes + taker_lte: Bytes + taker_in: [Bytes!] + taker_not_in: [Bytes!] + taker_contains: Bytes + taker_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + liquidationAuction: String + liquidationAuction_not: String + liquidationAuction_gt: String + liquidationAuction_lt: String + liquidationAuction_gte: String + liquidationAuction_lte: String + liquidationAuction_in: [String!] + liquidationAuction_not_in: [String!] + liquidationAuction_starts_with: String + liquidationAuction_starts_with_nocase: String + liquidationAuction_not_starts_with: String + liquidationAuction_not_starts_with_nocase: String + liquidationAuction_ends_with: String + liquidationAuction_ends_with_nocase: String + liquidationAuction_not_ends_with: String + liquidationAuction_not_ends_with_nocase: String + liquidationAuction_contains: String + liquidationAuction_not_contains: String + liquidationAuction_contains_nocase: String + liquidationAuction_not_contains_nocase: String + liquidationAuction_: LiquidationAuction_filter + loan: String + loan_not: String + loan_gt: String + loan_lt: String + loan_gte: String + loan_lte: String + loan_in: [String!] + loan_not_in: [String!] + loan_starts_with: String + loan_starts_with_nocase: String + loan_not_starts_with: String + loan_not_starts_with_nocase: String + loan_ends_with: String + loan_ends_with_nocase: String + loan_not_ends_with: String + loan_not_ends_with_nocase: String + loan_contains: String + loan_not_contains: String + loan_contains_nocase: String + loan_not_contains_nocase: String + loan_: Loan_filter + auctionPrice: BigDecimal + auctionPrice_not: BigDecimal + auctionPrice_gt: BigDecimal + auctionPrice_lt: BigDecimal + auctionPrice_gte: BigDecimal + auctionPrice_lte: BigDecimal + auctionPrice_in: [BigDecimal!] + auctionPrice_not_in: [BigDecimal!] + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + collateral: BigDecimal + collateral_not: BigDecimal + collateral_gt: BigDecimal + collateral_lt: BigDecimal + collateral_gte: BigDecimal + collateral_lte: BigDecimal + collateral_in: [BigDecimal!] + collateral_not_in: [BigDecimal!] + bondChange: BigDecimal + bondChange_not: BigDecimal + bondChange_gt: BigDecimal + bondChange_lt: BigDecimal + bondChange_gte: BigDecimal + bondChange_lte: BigDecimal + bondChange_in: [BigDecimal!] + bondChange_not_in: [BigDecimal!] + isReward: Boolean + isReward_not: Boolean + isReward_gt: Boolean + isReward_lt: Boolean + isReward_gte: Boolean + isReward_lte: Boolean + isReward_in: [Boolean!] + isReward_not_in: [Boolean!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [Take_filter] + or: [Take_filter] +} + +enum TransferLP_orderBy { + id + owner + newOwner + indexes + lp + blockNumber + blockTimestamp + transactionHash +} + +input TransferLP_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + owner: Bytes + owner_not: Bytes + owner_gt: Bytes + owner_lt: Bytes + owner_gte: Bytes + owner_lte: Bytes + owner_in: [Bytes!] + owner_not_in: [Bytes!] + owner_contains: Bytes + owner_not_contains: Bytes + newOwner: Bytes + newOwner_not: Bytes + newOwner_gt: Bytes + newOwner_lt: Bytes + newOwner_gte: Bytes + newOwner_lte: Bytes + newOwner_in: [Bytes!] + newOwner_not_in: [Bytes!] + newOwner_contains: Bytes + newOwner_not_contains: Bytes + indexes: [Int!] + indexes_not: [Int!] + indexes_contains: [Int!] + indexes_not_contains: [Int!] + indexes_contains_nocase: [Int!] + indexes_not_contains_nocase: [Int!] + lp: BigDecimal + lp_not: BigDecimal + lp_gt: BigDecimal + lp_lt: BigDecimal + lp_gte: BigDecimal + lp_lte: BigDecimal + lp_in: [BigDecimal!] + lp_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [TransferLP_filter] + or: [TransferLP_filter] +} + +enum UpdateInterestRate_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + oldBorrowRate + newBorrowRate + oldLendRate + newLendRate + borrowFeeRate + depositFeeRate + blockNumber + blockTimestamp + transactionHash +} + +input UpdateInterestRate_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + oldBorrowRate: BigDecimal + oldBorrowRate_not: BigDecimal + oldBorrowRate_gt: BigDecimal + oldBorrowRate_lt: BigDecimal + oldBorrowRate_gte: BigDecimal + oldBorrowRate_lte: BigDecimal + oldBorrowRate_in: [BigDecimal!] + oldBorrowRate_not_in: [BigDecimal!] + newBorrowRate: BigDecimal + newBorrowRate_not: BigDecimal + newBorrowRate_gt: BigDecimal + newBorrowRate_lt: BigDecimal + newBorrowRate_gte: BigDecimal + newBorrowRate_lte: BigDecimal + newBorrowRate_in: [BigDecimal!] + newBorrowRate_not_in: [BigDecimal!] + oldLendRate: BigDecimal + oldLendRate_not: BigDecimal + oldLendRate_gt: BigDecimal + oldLendRate_lt: BigDecimal + oldLendRate_gte: BigDecimal + oldLendRate_lte: BigDecimal + oldLendRate_in: [BigDecimal!] + oldLendRate_not_in: [BigDecimal!] + newLendRate: BigDecimal + newLendRate_not: BigDecimal + newLendRate_gt: BigDecimal + newLendRate_lt: BigDecimal + newLendRate_gte: BigDecimal + newLendRate_lte: BigDecimal + newLendRate_in: [BigDecimal!] + newLendRate_not_in: [BigDecimal!] + borrowFeeRate: BigDecimal + borrowFeeRate_not: BigDecimal + borrowFeeRate_gt: BigDecimal + borrowFeeRate_lt: BigDecimal + borrowFeeRate_gte: BigDecimal + borrowFeeRate_lte: BigDecimal + borrowFeeRate_in: [BigDecimal!] + borrowFeeRate_not_in: [BigDecimal!] + depositFeeRate: BigDecimal + depositFeeRate_not: BigDecimal + depositFeeRate_gt: BigDecimal + depositFeeRate_lt: BigDecimal + depositFeeRate_gte: BigDecimal + depositFeeRate_lte: BigDecimal + depositFeeRate_in: [BigDecimal!] + depositFeeRate_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [UpdateInterestRate_filter] + or: [UpdateInterestRate_filter] +} + +enum Approval_orderBy { + id + owner + approved + tokenId + blockNumber + blockTimestamp + transactionHash +} + +input Approval_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + owner: Bytes + owner_not: Bytes + owner_gt: Bytes + owner_lt: Bytes + owner_gte: Bytes + owner_lte: Bytes + owner_in: [Bytes!] + owner_not_in: [Bytes!] + owner_contains: Bytes + owner_not_contains: Bytes + approved: Bytes + approved_not: Bytes + approved_gt: Bytes + approved_lt: Bytes + approved_gte: Bytes + approved_lte: Bytes + approved_in: [Bytes!] + approved_not_in: [Bytes!] + approved_contains: Bytes + approved_not_contains: Bytes + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [Approval_filter] + or: [Approval_filter] +} + +enum ApprovalForAll_orderBy { + id + owner + operator + approved + blockNumber + blockTimestamp + transactionHash +} + +input ApprovalForAll_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + owner: Bytes + owner_not: Bytes + owner_gt: Bytes + owner_lt: Bytes + owner_gte: Bytes + owner_lte: Bytes + owner_in: [Bytes!] + owner_not_in: [Bytes!] + owner_contains: Bytes + owner_not_contains: Bytes + operator: Bytes + operator_not: Bytes + operator_gt: Bytes + operator_lt: Bytes + operator_gte: Bytes + operator_lte: Bytes + operator_in: [Bytes!] + operator_not_in: [Bytes!] + operator_contains: Bytes + operator_not_contains: Bytes + approved: Boolean + approved_not: Boolean + approved_gt: Boolean + approved_lt: Boolean + approved_gte: Boolean + approved_lte: Boolean + approved_in: [Boolean!] + approved_not_in: [Boolean!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [ApprovalForAll_filter] + or: [ApprovalForAll_filter] +} + +enum MoveLiquidity_orderBy { + id + lender + tokenId + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + fromIndex + toIndex + blockNumber + blockTimestamp + transactionHash +} + +input MoveLiquidity_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + fromIndex: Int + fromIndex_not: Int + fromIndex_gt: Int + fromIndex_lt: Int + fromIndex_gte: Int + fromIndex_lte: Int + fromIndex_in: [Int!] + fromIndex_not_in: [Int!] + toIndex: Int + toIndex_not: Int + toIndex_gt: Int + toIndex_lt: Int + toIndex_gte: Int + toIndex_lte: Int + toIndex_in: [Int!] + toIndex_not_in: [Int!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [MoveLiquidity_filter] + or: [MoveLiquidity_filter] +} + +enum Transfer_orderBy { + id + token + token__id + token__symbol + token__name + token__decimals + token__tokenType + token__poolCount + token__totalSupply + token__txCount + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + from + to + tokenId + blockNumber + blockTimestamp + transactionHash +} + +input Transfer_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + token: String + token_not: String + token_gt: String + token_lt: String + token_gte: String + token_lte: String + token_in: [String!] + token_not_in: [String!] + token_starts_with: String + token_starts_with_nocase: String + token_not_starts_with: String + token_not_starts_with_nocase: String + token_ends_with: String + token_ends_with_nocase: String + token_not_ends_with: String + token_not_ends_with_nocase: String + token_contains: String + token_not_contains: String + token_contains_nocase: String + token_not_contains_nocase: String + token_: Token_filter + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + from: Bytes + from_not: Bytes + from_gt: Bytes + from_lt: Bytes + from_gte: Bytes + from_lte: Bytes + from_in: [Bytes!] + from_not_in: [Bytes!] + from_contains: Bytes + from_not_contains: Bytes + to: Bytes + to_not: Bytes + to_gt: Bytes + to_lt: Bytes + to_gte: Bytes + to_lte: Bytes + to_in: [Bytes!] + to_not_in: [Bytes!] + to_contains: Bytes + to_not_contains: Bytes + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [Transfer_filter] + or: [Transfer_filter] +} + +enum PoolCreated_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + poolType + factory + factory__id + factory__poolType + factory__poolCount + factory__txCount + blockNumber + blockTimestamp + transactionHash +} + +input PoolCreated_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + poolType: String + poolType_not: String + poolType_gt: String + poolType_lt: String + poolType_gte: String + poolType_lte: String + poolType_in: [String!] + poolType_not_in: [String!] + poolType_starts_with: String + poolType_starts_with_nocase: String + poolType_not_starts_with: String + poolType_not_starts_with_nocase: String + poolType_ends_with: String + poolType_ends_with_nocase: String + poolType_not_ends_with: String + poolType_not_ends_with_nocase: String + poolType_contains: String + poolType_not_contains: String + poolType_contains_nocase: String + poolType_not_contains_nocase: String + factory: String + factory_not: String + factory_gt: String + factory_lt: String + factory_gte: String + factory_lte: String + factory_in: [String!] + factory_not_in: [String!] + factory_starts_with: String + factory_starts_with_nocase: String + factory_not_starts_with: String + factory_not_starts_with_nocase: String + factory_ends_with: String + factory_ends_with_nocase: String + factory_not_ends_with: String + factory_not_ends_with_nocase: String + factory_contains: String + factory_not_contains: String + factory_contains_nocase: String + factory_not_contains_nocase: String + factory_: PoolFactory_filter + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [PoolCreated_filter] + or: [PoolCreated_filter] +} + +enum AddCollateralNFT_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + bucket + bucket__id + bucket__bucketIndex + bucket__bucketPrice + bucket__exchangeRate + bucket__poolAddress + bucket__collateral + bucket__deposit + bucket__lpb + actor + index + tokenIds + lpAwarded + blockNumber + blockTimestamp + transactionHash +} + +input AddCollateralNFT_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + bucket: String + bucket_not: String + bucket_gt: String + bucket_lt: String + bucket_gte: String + bucket_lte: String + bucket_in: [String!] + bucket_not_in: [String!] + bucket_starts_with: String + bucket_starts_with_nocase: String + bucket_not_starts_with: String + bucket_not_starts_with_nocase: String + bucket_ends_with: String + bucket_ends_with_nocase: String + bucket_not_ends_with: String + bucket_not_ends_with_nocase: String + bucket_contains: String + bucket_not_contains: String + bucket_contains_nocase: String + bucket_not_contains_nocase: String + bucket_: Bucket_filter + actor: Bytes + actor_not: Bytes + actor_gt: Bytes + actor_lt: Bytes + actor_gte: Bytes + actor_lte: Bytes + actor_in: [Bytes!] + actor_not_in: [Bytes!] + actor_contains: Bytes + actor_not_contains: Bytes + index: BigInt + index_not: BigInt + index_gt: BigInt + index_lt: BigInt + index_gte: BigInt + index_lte: BigInt + index_in: [BigInt!] + index_not_in: [BigInt!] + tokenIds: [BigInt!] + tokenIds_not: [BigInt!] + tokenIds_contains: [BigInt!] + tokenIds_not_contains: [BigInt!] + tokenIds_contains_nocase: [BigInt!] + tokenIds_not_contains_nocase: [BigInt!] + lpAwarded: BigDecimal + lpAwarded_not: BigDecimal + lpAwarded_gt: BigDecimal + lpAwarded_lt: BigDecimal + lpAwarded_gte: BigDecimal + lpAwarded_lte: BigDecimal + lpAwarded_in: [BigDecimal!] + lpAwarded_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [AddCollateralNFT_filter] + or: [AddCollateralNFT_filter] +} + +enum AuctionNFTSettle_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + loan + loan__id + loan__poolAddress + loan__borrower + loan__inLiquidation + loan__collateralPledged + loan__thresholdPrice + loan__t0debt + loan__t0Np + borrower + collateral + lp + index + blockNumber + blockTimestamp + transactionHash +} + +input AuctionNFTSettle_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + loan: String + loan_not: String + loan_gt: String + loan_lt: String + loan_gte: String + loan_lte: String + loan_in: [String!] + loan_not_in: [String!] + loan_starts_with: String + loan_starts_with_nocase: String + loan_not_starts_with: String + loan_not_starts_with_nocase: String + loan_ends_with: String + loan_ends_with_nocase: String + loan_not_ends_with: String + loan_not_ends_with_nocase: String + loan_contains: String + loan_not_contains: String + loan_contains_nocase: String + loan_not_contains_nocase: String + loan_: Loan_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + collateral: BigDecimal + collateral_not: BigDecimal + collateral_gt: BigDecimal + collateral_lt: BigDecimal + collateral_gte: BigDecimal + collateral_lte: BigDecimal + collateral_in: [BigDecimal!] + collateral_not_in: [BigDecimal!] + lp: BigDecimal + lp_not: BigDecimal + lp_gt: BigDecimal + lp_lt: BigDecimal + lp_gte: BigDecimal + lp_lte: BigDecimal + lp_in: [BigDecimal!] + lp_not_in: [BigDecimal!] + index: Int + index_not: Int + index_gt: Int + index_lt: Int + index_gte: Int + index_lte: Int + index_in: [Int!] + index_not_in: [Int!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [AuctionNFTSettle_filter] + or: [AuctionNFTSettle_filter] +} + +enum DrawDebtNFT_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + borrower + amountBorrowed + tokenIdsPledged + lup + blockNumber + blockTimestamp + transactionHash +} + +input DrawDebtNFT_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + borrower: Bytes + borrower_not: Bytes + borrower_gt: Bytes + borrower_lt: Bytes + borrower_gte: Bytes + borrower_lte: Bytes + borrower_in: [Bytes!] + borrower_not_in: [Bytes!] + borrower_contains: Bytes + borrower_not_contains: Bytes + amountBorrowed: BigDecimal + amountBorrowed_not: BigDecimal + amountBorrowed_gt: BigDecimal + amountBorrowed_lt: BigDecimal + amountBorrowed_gte: BigDecimal + amountBorrowed_lte: BigDecimal + amountBorrowed_in: [BigDecimal!] + amountBorrowed_not_in: [BigDecimal!] + tokenIdsPledged: [BigInt!] + tokenIdsPledged_not: [BigInt!] + tokenIdsPledged_contains: [BigInt!] + tokenIdsPledged_not_contains: [BigInt!] + tokenIdsPledged_contains_nocase: [BigInt!] + tokenIdsPledged_not_contains_nocase: [BigInt!] + lup: BigDecimal + lup_not: BigDecimal + lup_gt: BigDecimal + lup_lt: BigDecimal + lup_gte: BigDecimal + lup_lte: BigDecimal + lup_in: [BigDecimal!] + lup_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [DrawDebtNFT_filter] + or: [DrawDebtNFT_filter] +} + +enum MergeOrRemoveCollateralNFT_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + actor + collateralMerged + toIndexLps + blockNumber + blockTimestamp + transactionHash +} + +input MergeOrRemoveCollateralNFT_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + actor: Bytes + actor_not: Bytes + actor_gt: Bytes + actor_lt: Bytes + actor_gte: Bytes + actor_lte: Bytes + actor_in: [Bytes!] + actor_not_in: [Bytes!] + actor_contains: Bytes + actor_not_contains: Bytes + collateralMerged: BigDecimal + collateralMerged_not: BigDecimal + collateralMerged_gt: BigDecimal + collateralMerged_lt: BigDecimal + collateralMerged_gte: BigDecimal + collateralMerged_lte: BigDecimal + collateralMerged_in: [BigDecimal!] + collateralMerged_not_in: [BigDecimal!] + toIndexLps: BigDecimal + toIndexLps_not: BigDecimal + toIndexLps_gt: BigDecimal + toIndexLps_lt: BigDecimal + toIndexLps_gte: BigDecimal + toIndexLps_lte: BigDecimal + toIndexLps_in: [BigDecimal!] + toIndexLps_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [MergeOrRemoveCollateralNFT_filter] + or: [MergeOrRemoveCollateralNFT_filter] +} + +enum Position_orderBy { + id + tokenId + indexes + owner + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + token + token__id + token__symbol + token__name + token__decimals + token__tokenType + token__poolCount + token__totalSupply + token__txCount + tokenURI +} + +input Position_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + indexes: [String!] + indexes_not: [String!] + indexes_contains: [String!] + indexes_not_contains: [String!] + indexes_contains_nocase: [String!] + indexes_not_contains_nocase: [String!] + indexes_: PositionLend_filter + owner: Bytes + owner_not: Bytes + owner_gt: Bytes + owner_lt: Bytes + owner_gte: Bytes + owner_lte: Bytes + owner_in: [Bytes!] + owner_not_in: [Bytes!] + owner_contains: Bytes + owner_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + token: String + token_not: String + token_gt: String + token_lt: String + token_gte: String + token_lte: String + token_in: [String!] + token_not_in: [String!] + token_starts_with: String + token_starts_with_nocase: String + token_not_starts_with: String + token_not_starts_with_nocase: String + token_ends_with: String + token_ends_with_nocase: String + token_not_ends_with: String + token_not_ends_with_nocase: String + token_contains: String + token_not_contains: String + token_contains_nocase: String + token_not_contains_nocase: String + token_: Token_filter + tokenURI: String + tokenURI_not: String + tokenURI_gt: String + tokenURI_lt: String + tokenURI_gte: String + tokenURI_lte: String + tokenURI_in: [String!] + tokenURI_not_in: [String!] + tokenURI_starts_with: String + tokenURI_starts_with_nocase: String + tokenURI_not_starts_with: String + tokenURI_not_starts_with_nocase: String + tokenURI_ends_with: String + tokenURI_ends_with_nocase: String + tokenURI_not_ends_with: String + tokenURI_not_ends_with_nocase: String + tokenURI_contains: String + tokenURI_not_contains: String + tokenURI_contains_nocase: String + tokenURI_not_contains_nocase: String + _change_block: BlockChangedFilter + and: [Position_filter] + or: [Position_filter] +} + +enum PositionLend_orderBy { + id + bucket + bucket__id + bucket__bucketIndex + bucket__bucketPrice + bucket__exchangeRate + bucket__poolAddress + bucket__collateral + bucket__deposit + bucket__lpb + bucketIndex + depositTime + lpb + lpbValueInQuote + tokenId +} + +input PositionLend_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + bucket: String + bucket_not: String + bucket_gt: String + bucket_lt: String + bucket_gte: String + bucket_lte: String + bucket_in: [String!] + bucket_not_in: [String!] + bucket_starts_with: String + bucket_starts_with_nocase: String + bucket_not_starts_with: String + bucket_not_starts_with_nocase: String + bucket_ends_with: String + bucket_ends_with_nocase: String + bucket_not_ends_with: String + bucket_not_ends_with_nocase: String + bucket_contains: String + bucket_not_contains: String + bucket_contains_nocase: String + bucket_not_contains_nocase: String + bucket_: Bucket_filter + bucketIndex: Int + bucketIndex_not: Int + bucketIndex_gt: Int + bucketIndex_lt: Int + bucketIndex_gte: Int + bucketIndex_lte: Int + bucketIndex_in: [Int!] + bucketIndex_not_in: [Int!] + depositTime: BigInt + depositTime_not: BigInt + depositTime_gt: BigInt + depositTime_lt: BigInt + depositTime_gte: BigInt + depositTime_lte: BigInt + depositTime_in: [BigInt!] + depositTime_not_in: [BigInt!] + lpb: BigDecimal + lpb_not: BigDecimal + lpb_gt: BigDecimal + lpb_lt: BigDecimal + lpb_gte: BigDecimal + lpb_lte: BigDecimal + lpb_in: [BigDecimal!] + lpb_not_in: [BigDecimal!] + lpbValueInQuote: BigDecimal + lpbValueInQuote_not: BigDecimal + lpbValueInQuote_gt: BigDecimal + lpbValueInQuote_lt: BigDecimal + lpbValueInQuote_gte: BigDecimal + lpbValueInQuote_lte: BigDecimal + lpbValueInQuote_in: [BigDecimal!] + lpbValueInQuote_not_in: [BigDecimal!] + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + _change_block: BlockChangedFilter + and: [PositionLend_filter] + or: [PositionLend_filter] +} + +enum Burn_orderBy { + id + lender + tokenId + blockNumber + blockTimestamp + transactionHash +} + +input Burn_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [Burn_filter] + or: [Burn_filter] +} + +enum MemorializePosition_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + lender + tokenId + indexes + blockNumber + blockTimestamp + transactionHash +} + +input MemorializePosition_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + indexes: [Int!] + indexes_not: [Int!] + indexes_contains: [Int!] + indexes_not_contains: [Int!] + indexes_contains_nocase: [Int!] + indexes_not_contains_nocase: [Int!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [MemorializePosition_filter] + or: [MemorializePosition_filter] +} + +enum Mint_orderBy { + id + lender + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + tokenId + blockNumber + blockTimestamp + transactionHash +} + +input Mint_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [Mint_filter] + or: [Mint_filter] +} + +enum RedeemPosition_orderBy { + id + pool + pool__id + pool__createdAtBlockNumber + pool__createdAtTimestamp + pool__poolSize + pool__t0debt + pool__inflator + pool__borrowRate + pool__lendRate + pool__borrowFeeRate + pool__depositFeeRate + pool__pledgedCollateral + pool__totalInterestEarned + pool__txCount + pool__poolType + pool__loansCount + pool__maxBorrower + pool__quoteTokenFlashloaned + pool__collateralFlashloaned + pool__hpb + pool__hpbIndex + pool__htp + pool__htpIndex + pool__lup + pool__lupIndex + pool__reserves + pool__claimableReserves + pool__claimableReservesRemaining + pool__burnEpoch + pool__totalAjnaBurned + pool__minDebtAmount + pool__actualUtilization + pool__targetUtilization + pool__totalBondEscrowed + pool__quoteTokenBalance + pool__collateralBalance + pool__subsetHash + lender + tokenId + indexes + blockNumber + blockTimestamp + transactionHash +} + +input RedeemPosition_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + pool: String + pool_not: String + pool_gt: String + pool_lt: String + pool_gte: String + pool_lte: String + pool_in: [String!] + pool_not_in: [String!] + pool_starts_with: String + pool_starts_with_nocase: String + pool_not_starts_with: String + pool_not_starts_with_nocase: String + pool_ends_with: String + pool_ends_with_nocase: String + pool_not_ends_with: String + pool_not_ends_with_nocase: String + pool_contains: String + pool_not_contains: String + pool_contains_nocase: String + pool_not_contains_nocase: String + pool_: Pool_filter + lender: Bytes + lender_not: Bytes + lender_gt: Bytes + lender_lt: Bytes + lender_gte: Bytes + lender_lte: Bytes + lender_in: [Bytes!] + lender_not_in: [Bytes!] + lender_contains: Bytes + lender_not_contains: Bytes + tokenId: BigInt + tokenId_not: BigInt + tokenId_gt: BigInt + tokenId_lt: BigInt + tokenId_gte: BigInt + tokenId_lte: BigInt + tokenId_in: [BigInt!] + tokenId_not_in: [BigInt!] + indexes: [Int!] + indexes_not: [Int!] + indexes_contains: [Int!] + indexes_not_contains: [Int!] + indexes_contains_nocase: [Int!] + indexes_not_contains_nocase: [Int!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [RedeemPosition_filter] + or: [RedeemPosition_filter] +} + +enum GrantFund_orderBy { + id + treasury + distributionPeriods + totalDelegationRewardsClaimed +} + +input GrantFund_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + treasury: BigDecimal + treasury_not: BigDecimal + treasury_gt: BigDecimal + treasury_lt: BigDecimal + treasury_gte: BigDecimal + treasury_lte: BigDecimal + treasury_in: [BigDecimal!] + treasury_not_in: [BigDecimal!] + distributionPeriods: [String!] + distributionPeriods_not: [String!] + distributionPeriods_contains: [String!] + distributionPeriods_not_contains: [String!] + distributionPeriods_contains_nocase: [String!] + distributionPeriods_not_contains_nocase: [String!] + distributionPeriods_: DistributionPeriod_filter + totalDelegationRewardsClaimed: BigDecimal + totalDelegationRewardsClaimed_not: BigDecimal + totalDelegationRewardsClaimed_gt: BigDecimal + totalDelegationRewardsClaimed_lt: BigDecimal + totalDelegationRewardsClaimed_gte: BigDecimal + totalDelegationRewardsClaimed_lte: BigDecimal + totalDelegationRewardsClaimed_in: [BigDecimal!] + totalDelegationRewardsClaimed_not_in: [BigDecimal!] + _change_block: BlockChangedFilter + and: [GrantFund_filter] + or: [GrantFund_filter] +} + +enum DistributionPeriod_orderBy { + id + distributionId + startBlock + endBlock + topSlate + topSlate__id + topSlate__totalTokensRequested + topSlate__totalFundingVotesReceived + topSlate__updateBlock + slatesSubmitted + fundsAvailable + delegationRewardsClaimed + fundingVotePowerUsed + screeningVotesCast + votes + proposals + totalTokensDistributed +} + +input DistributionPeriod_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + distributionId: BigInt + distributionId_not: BigInt + distributionId_gt: BigInt + distributionId_lt: BigInt + distributionId_gte: BigInt + distributionId_lte: BigInt + distributionId_in: [BigInt!] + distributionId_not_in: [BigInt!] + startBlock: BigInt + startBlock_not: BigInt + startBlock_gt: BigInt + startBlock_lt: BigInt + startBlock_gte: BigInt + startBlock_lte: BigInt + startBlock_in: [BigInt!] + startBlock_not_in: [BigInt!] + endBlock: BigInt + endBlock_not: BigInt + endBlock_gt: BigInt + endBlock_lt: BigInt + endBlock_gte: BigInt + endBlock_lte: BigInt + endBlock_in: [BigInt!] + endBlock_not_in: [BigInt!] + topSlate: String + topSlate_not: String + topSlate_gt: String + topSlate_lt: String + topSlate_gte: String + topSlate_lte: String + topSlate_in: [String!] + topSlate_not_in: [String!] + topSlate_starts_with: String + topSlate_starts_with_nocase: String + topSlate_not_starts_with: String + topSlate_not_starts_with_nocase: String + topSlate_ends_with: String + topSlate_ends_with_nocase: String + topSlate_not_ends_with: String + topSlate_not_ends_with_nocase: String + topSlate_contains: String + topSlate_not_contains: String + topSlate_contains_nocase: String + topSlate_not_contains_nocase: String + topSlate_: FundedSlate_filter + slatesSubmitted: [String!] + slatesSubmitted_not: [String!] + slatesSubmitted_contains: [String!] + slatesSubmitted_not_contains: [String!] + slatesSubmitted_contains_nocase: [String!] + slatesSubmitted_not_contains_nocase: [String!] + slatesSubmitted_: FundedSlate_filter + fundsAvailable: BigDecimal + fundsAvailable_not: BigDecimal + fundsAvailable_gt: BigDecimal + fundsAvailable_lt: BigDecimal + fundsAvailable_gte: BigDecimal + fundsAvailable_lte: BigDecimal + fundsAvailable_in: [BigDecimal!] + fundsAvailable_not_in: [BigDecimal!] + delegationRewardsClaimed: BigDecimal + delegationRewardsClaimed_not: BigDecimal + delegationRewardsClaimed_gt: BigDecimal + delegationRewardsClaimed_lt: BigDecimal + delegationRewardsClaimed_gte: BigDecimal + delegationRewardsClaimed_lte: BigDecimal + delegationRewardsClaimed_in: [BigDecimal!] + delegationRewardsClaimed_not_in: [BigDecimal!] + fundingVotePowerUsed: BigDecimal + fundingVotePowerUsed_not: BigDecimal + fundingVotePowerUsed_gt: BigDecimal + fundingVotePowerUsed_lt: BigDecimal + fundingVotePowerUsed_gte: BigDecimal + fundingVotePowerUsed_lte: BigDecimal + fundingVotePowerUsed_in: [BigDecimal!] + fundingVotePowerUsed_not_in: [BigDecimal!] + screeningVotesCast: BigDecimal + screeningVotesCast_not: BigDecimal + screeningVotesCast_gt: BigDecimal + screeningVotesCast_lt: BigDecimal + screeningVotesCast_gte: BigDecimal + screeningVotesCast_lte: BigDecimal + screeningVotesCast_in: [BigDecimal!] + screeningVotesCast_not_in: [BigDecimal!] + votes: [String!] + votes_not: [String!] + votes_contains: [String!] + votes_not_contains: [String!] + votes_contains_nocase: [String!] + votes_not_contains_nocase: [String!] + votes_: DistributionPeriodVote_filter + proposals: [String!] + proposals_not: [String!] + proposals_contains: [String!] + proposals_not_contains: [String!] + proposals_contains_nocase: [String!] + proposals_not_contains_nocase: [String!] + proposals_: Proposal_filter + totalTokensDistributed: BigDecimal + totalTokensDistributed_not: BigDecimal + totalTokensDistributed_gt: BigDecimal + totalTokensDistributed_lt: BigDecimal + totalTokensDistributed_gte: BigDecimal + totalTokensDistributed_lte: BigDecimal + totalTokensDistributed_in: [BigDecimal!] + totalTokensDistributed_not_in: [BigDecimal!] + _change_block: BlockChangedFilter + and: [DistributionPeriod_filter] + or: [DistributionPeriod_filter] +} + +enum Proposal_orderBy { + id + proposalId + description + distribution + distribution__id + distribution__distributionId + distribution__startBlock + distribution__endBlock + distribution__fundsAvailable + distribution__delegationRewardsClaimed + distribution__fundingVotePowerUsed + distribution__screeningVotesCast + distribution__totalTokensDistributed + executed + screeningVotesReceived + fundingVotesReceived + fundingVotesNegative + fundingVotesPositive + totalTokensRequested + params +} + +input Proposal_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + proposalId: BigInt + proposalId_not: BigInt + proposalId_gt: BigInt + proposalId_lt: BigInt + proposalId_gte: BigInt + proposalId_lte: BigInt + proposalId_in: [BigInt!] + proposalId_not_in: [BigInt!] + description: String + description_not: String + description_gt: String + description_lt: String + description_gte: String + description_lte: String + description_in: [String!] + description_not_in: [String!] + description_starts_with: String + description_starts_with_nocase: String + description_not_starts_with: String + description_not_starts_with_nocase: String + description_ends_with: String + description_ends_with_nocase: String + description_not_ends_with: String + description_not_ends_with_nocase: String + description_contains: String + description_not_contains: String + description_contains_nocase: String + description_not_contains_nocase: String + distribution: String + distribution_not: String + distribution_gt: String + distribution_lt: String + distribution_gte: String + distribution_lte: String + distribution_in: [String!] + distribution_not_in: [String!] + distribution_starts_with: String + distribution_starts_with_nocase: String + distribution_not_starts_with: String + distribution_not_starts_with_nocase: String + distribution_ends_with: String + distribution_ends_with_nocase: String + distribution_not_ends_with: String + distribution_not_ends_with_nocase: String + distribution_contains: String + distribution_not_contains: String + distribution_contains_nocase: String + distribution_not_contains_nocase: String + distribution_: DistributionPeriod_filter + executed: Boolean + executed_not: Boolean + executed_gt: Boolean + executed_lt: Boolean + executed_gte: Boolean + executed_lte: Boolean + executed_in: [Boolean!] + executed_not_in: [Boolean!] + screeningVotesReceived: BigDecimal + screeningVotesReceived_not: BigDecimal + screeningVotesReceived_gt: BigDecimal + screeningVotesReceived_lt: BigDecimal + screeningVotesReceived_gte: BigDecimal + screeningVotesReceived_lte: BigDecimal + screeningVotesReceived_in: [BigDecimal!] + screeningVotesReceived_not_in: [BigDecimal!] + fundingVotesReceived: BigDecimal + fundingVotesReceived_not: BigDecimal + fundingVotesReceived_gt: BigDecimal + fundingVotesReceived_lt: BigDecimal + fundingVotesReceived_gte: BigDecimal + fundingVotesReceived_lte: BigDecimal + fundingVotesReceived_in: [BigDecimal!] + fundingVotesReceived_not_in: [BigDecimal!] + fundingVotesNegative: BigDecimal + fundingVotesNegative_not: BigDecimal + fundingVotesNegative_gt: BigDecimal + fundingVotesNegative_lt: BigDecimal + fundingVotesNegative_gte: BigDecimal + fundingVotesNegative_lte: BigDecimal + fundingVotesNegative_in: [BigDecimal!] + fundingVotesNegative_not_in: [BigDecimal!] + fundingVotesPositive: BigDecimal + fundingVotesPositive_not: BigDecimal + fundingVotesPositive_gt: BigDecimal + fundingVotesPositive_lt: BigDecimal + fundingVotesPositive_gte: BigDecimal + fundingVotesPositive_lte: BigDecimal + fundingVotesPositive_in: [BigDecimal!] + fundingVotesPositive_not_in: [BigDecimal!] + totalTokensRequested: BigDecimal + totalTokensRequested_not: BigDecimal + totalTokensRequested_gt: BigDecimal + totalTokensRequested_lt: BigDecimal + totalTokensRequested_gte: BigDecimal + totalTokensRequested_lte: BigDecimal + totalTokensRequested_in: [BigDecimal!] + totalTokensRequested_not_in: [BigDecimal!] + params: [String!] + params_not: [String!] + params_contains: [String!] + params_not_contains: [String!] + params_contains_nocase: [String!] + params_not_contains_nocase: [String!] + params_: ProposalParams_filter + _change_block: BlockChangedFilter + and: [Proposal_filter] + or: [Proposal_filter] +} + +enum ProposalParams_orderBy { + id + target + value + calldata + recipient + tokensRequested +} + +input ProposalParams_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + target: Bytes + target_not: Bytes + target_gt: Bytes + target_lt: Bytes + target_gte: Bytes + target_lte: Bytes + target_in: [Bytes!] + target_not_in: [Bytes!] + target_contains: Bytes + target_not_contains: Bytes + value: BigInt + value_not: BigInt + value_gt: BigInt + value_lt: BigInt + value_gte: BigInt + value_lte: BigInt + value_in: [BigInt!] + value_not_in: [BigInt!] + calldata: Bytes + calldata_not: Bytes + calldata_gt: Bytes + calldata_lt: Bytes + calldata_gte: Bytes + calldata_lte: Bytes + calldata_in: [Bytes!] + calldata_not_in: [Bytes!] + calldata_contains: Bytes + calldata_not_contains: Bytes + recipient: Bytes + recipient_not: Bytes + recipient_gt: Bytes + recipient_lt: Bytes + recipient_gte: Bytes + recipient_lte: Bytes + recipient_in: [Bytes!] + recipient_not_in: [Bytes!] + recipient_contains: Bytes + recipient_not_contains: Bytes + tokensRequested: BigDecimal + tokensRequested_not: BigDecimal + tokensRequested_gt: BigDecimal + tokensRequested_lt: BigDecimal + tokensRequested_gte: BigDecimal + tokensRequested_lte: BigDecimal + tokensRequested_in: [BigDecimal!] + tokensRequested_not_in: [BigDecimal!] + _change_block: BlockChangedFilter + and: [ProposalParams_filter] + or: [ProposalParams_filter] +} + +enum DistributionPeriodVote_orderBy { + id + voter + voter__id + voter__rewardsClaimed + voter__tokensDelegated + voter__txCount + distribution + distribution__id + distribution__distributionId + distribution__startBlock + distribution__endBlock + distribution__fundsAvailable + distribution__delegationRewardsClaimed + distribution__fundingVotePowerUsed + distribution__screeningVotesCast + distribution__totalTokensDistributed + initialFundingStageVotingPowerRecordedPostVote + remainingFundingStageVotingPowerRecordedPostVote + initialScreeningStageVotingPowerRecordedPostVote + remainingScreeningStageVotingPowerRecordedPostVote + screeningVotes + fundingVotes +} + +input DistributionPeriodVote_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + voter: String + voter_not: String + voter_gt: String + voter_lt: String + voter_gte: String + voter_lte: String + voter_in: [String!] + voter_not_in: [String!] + voter_starts_with: String + voter_starts_with_nocase: String + voter_not_starts_with: String + voter_not_starts_with_nocase: String + voter_ends_with: String + voter_ends_with_nocase: String + voter_not_ends_with: String + voter_not_ends_with_nocase: String + voter_contains: String + voter_not_contains: String + voter_contains_nocase: String + voter_not_contains_nocase: String + voter_: Account_filter + distribution: String + distribution_not: String + distribution_gt: String + distribution_lt: String + distribution_gte: String + distribution_lte: String + distribution_in: [String!] + distribution_not_in: [String!] + distribution_starts_with: String + distribution_starts_with_nocase: String + distribution_not_starts_with: String + distribution_not_starts_with_nocase: String + distribution_ends_with: String + distribution_ends_with_nocase: String + distribution_not_ends_with: String + distribution_not_ends_with_nocase: String + distribution_contains: String + distribution_not_contains: String + distribution_contains_nocase: String + distribution_not_contains_nocase: String + distribution_: DistributionPeriod_filter + initialFundingStageVotingPowerRecordedPostVote: BigDecimal + initialFundingStageVotingPowerRecordedPostVote_not: BigDecimal + initialFundingStageVotingPowerRecordedPostVote_gt: BigDecimal + initialFundingStageVotingPowerRecordedPostVote_lt: BigDecimal + initialFundingStageVotingPowerRecordedPostVote_gte: BigDecimal + initialFundingStageVotingPowerRecordedPostVote_lte: BigDecimal + initialFundingStageVotingPowerRecordedPostVote_in: [BigDecimal!] + initialFundingStageVotingPowerRecordedPostVote_not_in: [BigDecimal!] + remainingFundingStageVotingPowerRecordedPostVote: BigDecimal + remainingFundingStageVotingPowerRecordedPostVote_not: BigDecimal + remainingFundingStageVotingPowerRecordedPostVote_gt: BigDecimal + remainingFundingStageVotingPowerRecordedPostVote_lt: BigDecimal + remainingFundingStageVotingPowerRecordedPostVote_gte: BigDecimal + remainingFundingStageVotingPowerRecordedPostVote_lte: BigDecimal + remainingFundingStageVotingPowerRecordedPostVote_in: [BigDecimal!] + remainingFundingStageVotingPowerRecordedPostVote_not_in: [BigDecimal!] + initialScreeningStageVotingPowerRecordedPostVote: BigDecimal + initialScreeningStageVotingPowerRecordedPostVote_not: BigDecimal + initialScreeningStageVotingPowerRecordedPostVote_gt: BigDecimal + initialScreeningStageVotingPowerRecordedPostVote_lt: BigDecimal + initialScreeningStageVotingPowerRecordedPostVote_gte: BigDecimal + initialScreeningStageVotingPowerRecordedPostVote_lte: BigDecimal + initialScreeningStageVotingPowerRecordedPostVote_in: [BigDecimal!] + initialScreeningStageVotingPowerRecordedPostVote_not_in: [BigDecimal!] + remainingScreeningStageVotingPowerRecordedPostVote: BigDecimal + remainingScreeningStageVotingPowerRecordedPostVote_not: BigDecimal + remainingScreeningStageVotingPowerRecordedPostVote_gt: BigDecimal + remainingScreeningStageVotingPowerRecordedPostVote_lt: BigDecimal + remainingScreeningStageVotingPowerRecordedPostVote_gte: BigDecimal + remainingScreeningStageVotingPowerRecordedPostVote_lte: BigDecimal + remainingScreeningStageVotingPowerRecordedPostVote_in: [BigDecimal!] + remainingScreeningStageVotingPowerRecordedPostVote_not_in: [BigDecimal!] + screeningVotes: [String!] + screeningVotes_not: [String!] + screeningVotes_contains: [String!] + screeningVotes_not_contains: [String!] + screeningVotes_contains_nocase: [String!] + screeningVotes_not_contains_nocase: [String!] + screeningVotes_: ScreeningVote_filter + fundingVotes: [String!] + fundingVotes_not: [String!] + fundingVotes_contains: [String!] + fundingVotes_not_contains: [String!] + fundingVotes_contains_nocase: [String!] + fundingVotes_not_contains_nocase: [String!] + fundingVotes_: FundingVote_filter + _change_block: BlockChangedFilter + and: [DistributionPeriodVote_filter] + or: [DistributionPeriodVote_filter] +} + +enum ScreeningVote_orderBy { + id + distribution + distribution__id + distribution__distributionId + distribution__startBlock + distribution__endBlock + distribution__fundsAvailable + distribution__delegationRewardsClaimed + distribution__fundingVotePowerUsed + distribution__screeningVotesCast + distribution__totalTokensDistributed + voter + voter__id + voter__rewardsClaimed + voter__tokensDelegated + voter__txCount + proposal + proposal__id + proposal__proposalId + proposal__description + proposal__executed + proposal__screeningVotesReceived + proposal__fundingVotesReceived + proposal__fundingVotesNegative + proposal__fundingVotesPositive + proposal__totalTokensRequested + totalVotesCast + votesCast +} + +input ScreeningVote_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + distribution: String + distribution_not: String + distribution_gt: String + distribution_lt: String + distribution_gte: String + distribution_lte: String + distribution_in: [String!] + distribution_not_in: [String!] + distribution_starts_with: String + distribution_starts_with_nocase: String + distribution_not_starts_with: String + distribution_not_starts_with_nocase: String + distribution_ends_with: String + distribution_ends_with_nocase: String + distribution_not_ends_with: String + distribution_not_ends_with_nocase: String + distribution_contains: String + distribution_not_contains: String + distribution_contains_nocase: String + distribution_not_contains_nocase: String + distribution_: DistributionPeriod_filter + voter: String + voter_not: String + voter_gt: String + voter_lt: String + voter_gte: String + voter_lte: String + voter_in: [String!] + voter_not_in: [String!] + voter_starts_with: String + voter_starts_with_nocase: String + voter_not_starts_with: String + voter_not_starts_with_nocase: String + voter_ends_with: String + voter_ends_with_nocase: String + voter_not_ends_with: String + voter_not_ends_with_nocase: String + voter_contains: String + voter_not_contains: String + voter_contains_nocase: String + voter_not_contains_nocase: String + voter_: Account_filter + proposal: String + proposal_not: String + proposal_gt: String + proposal_lt: String + proposal_gte: String + proposal_lte: String + proposal_in: [String!] + proposal_not_in: [String!] + proposal_starts_with: String + proposal_starts_with_nocase: String + proposal_not_starts_with: String + proposal_not_starts_with_nocase: String + proposal_ends_with: String + proposal_ends_with_nocase: String + proposal_not_ends_with: String + proposal_not_ends_with_nocase: String + proposal_contains: String + proposal_not_contains: String + proposal_contains_nocase: String + proposal_not_contains_nocase: String + proposal_: Proposal_filter + totalVotesCast: BigDecimal + totalVotesCast_not: BigDecimal + totalVotesCast_gt: BigDecimal + totalVotesCast_lt: BigDecimal + totalVotesCast_gte: BigDecimal + totalVotesCast_lte: BigDecimal + totalVotesCast_in: [BigDecimal!] + totalVotesCast_not_in: [BigDecimal!] + votesCast: [String!] + votesCast_not: [String!] + votesCast_contains: [String!] + votesCast_not_contains: [String!] + votesCast_contains_nocase: [String!] + votesCast_not_contains_nocase: [String!] + votesCast_: VoteCast_filter + _change_block: BlockChangedFilter + and: [ScreeningVote_filter] + or: [ScreeningVote_filter] +} + +enum FundingVote_orderBy { + id + distribution + distribution__id + distribution__distributionId + distribution__startBlock + distribution__endBlock + distribution__fundsAvailable + distribution__delegationRewardsClaimed + distribution__fundingVotePowerUsed + distribution__screeningVotesCast + distribution__totalTokensDistributed + voter + voter__id + voter__rewardsClaimed + voter__tokensDelegated + voter__txCount + proposal + proposal__id + proposal__proposalId + proposal__description + proposal__executed + proposal__screeningVotesReceived + proposal__fundingVotesReceived + proposal__fundingVotesNegative + proposal__fundingVotesPositive + proposal__totalTokensRequested + totalVotesCast + votingPowerUsed + votesCast +} + +input FundingVote_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + distribution: String + distribution_not: String + distribution_gt: String + distribution_lt: String + distribution_gte: String + distribution_lte: String + distribution_in: [String!] + distribution_not_in: [String!] + distribution_starts_with: String + distribution_starts_with_nocase: String + distribution_not_starts_with: String + distribution_not_starts_with_nocase: String + distribution_ends_with: String + distribution_ends_with_nocase: String + distribution_not_ends_with: String + distribution_not_ends_with_nocase: String + distribution_contains: String + distribution_not_contains: String + distribution_contains_nocase: String + distribution_not_contains_nocase: String + distribution_: DistributionPeriod_filter + voter: String + voter_not: String + voter_gt: String + voter_lt: String + voter_gte: String + voter_lte: String + voter_in: [String!] + voter_not_in: [String!] + voter_starts_with: String + voter_starts_with_nocase: String + voter_not_starts_with: String + voter_not_starts_with_nocase: String + voter_ends_with: String + voter_ends_with_nocase: String + voter_not_ends_with: String + voter_not_ends_with_nocase: String + voter_contains: String + voter_not_contains: String + voter_contains_nocase: String + voter_not_contains_nocase: String + voter_: Account_filter + proposal: String + proposal_not: String + proposal_gt: String + proposal_lt: String + proposal_gte: String + proposal_lte: String + proposal_in: [String!] + proposal_not_in: [String!] + proposal_starts_with: String + proposal_starts_with_nocase: String + proposal_not_starts_with: String + proposal_not_starts_with_nocase: String + proposal_ends_with: String + proposal_ends_with_nocase: String + proposal_not_ends_with: String + proposal_not_ends_with_nocase: String + proposal_contains: String + proposal_not_contains: String + proposal_contains_nocase: String + proposal_not_contains_nocase: String + proposal_: Proposal_filter + totalVotesCast: BigDecimal + totalVotesCast_not: BigDecimal + totalVotesCast_gt: BigDecimal + totalVotesCast_lt: BigDecimal + totalVotesCast_gte: BigDecimal + totalVotesCast_lte: BigDecimal + totalVotesCast_in: [BigDecimal!] + totalVotesCast_not_in: [BigDecimal!] + votingPowerUsed: BigDecimal + votingPowerUsed_not: BigDecimal + votingPowerUsed_gt: BigDecimal + votingPowerUsed_lt: BigDecimal + votingPowerUsed_gte: BigDecimal + votingPowerUsed_lte: BigDecimal + votingPowerUsed_in: [BigDecimal!] + votingPowerUsed_not_in: [BigDecimal!] + votesCast: [String!] + votesCast_not: [String!] + votesCast_contains: [String!] + votesCast_not_contains: [String!] + votesCast_contains_nocase: [String!] + votesCast_not_contains_nocase: [String!] + votesCast_: VoteCast_filter + _change_block: BlockChangedFilter + and: [FundingVote_filter] + or: [FundingVote_filter] +} + +enum FundedSlate_orderBy { + id + distribution + distribution__id + distribution__distributionId + distribution__startBlock + distribution__endBlock + distribution__fundsAvailable + distribution__delegationRewardsClaimed + distribution__fundingVotePowerUsed + distribution__screeningVotesCast + distribution__totalTokensDistributed + proposals + totalTokensRequested + totalFundingVotesReceived + updateBlock +} + +input FundedSlate_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + distribution: String + distribution_not: String + distribution_gt: String + distribution_lt: String + distribution_gte: String + distribution_lte: String + distribution_in: [String!] + distribution_not_in: [String!] + distribution_starts_with: String + distribution_starts_with_nocase: String + distribution_not_starts_with: String + distribution_not_starts_with_nocase: String + distribution_ends_with: String + distribution_ends_with_nocase: String + distribution_not_ends_with: String + distribution_not_ends_with_nocase: String + distribution_contains: String + distribution_not_contains: String + distribution_contains_nocase: String + distribution_not_contains_nocase: String + distribution_: DistributionPeriod_filter + proposals: [String!] + proposals_not: [String!] + proposals_contains: [String!] + proposals_not_contains: [String!] + proposals_contains_nocase: [String!] + proposals_not_contains_nocase: [String!] + proposals_: Proposal_filter + totalTokensRequested: BigDecimal + totalTokensRequested_not: BigDecimal + totalTokensRequested_gt: BigDecimal + totalTokensRequested_lt: BigDecimal + totalTokensRequested_gte: BigDecimal + totalTokensRequested_lte: BigDecimal + totalTokensRequested_in: [BigDecimal!] + totalTokensRequested_not_in: [BigDecimal!] + totalFundingVotesReceived: BigDecimal + totalFundingVotesReceived_not: BigDecimal + totalFundingVotesReceived_gt: BigDecimal + totalFundingVotesReceived_lt: BigDecimal + totalFundingVotesReceived_gte: BigDecimal + totalFundingVotesReceived_lte: BigDecimal + totalFundingVotesReceived_in: [BigDecimal!] + totalFundingVotesReceived_not_in: [BigDecimal!] + updateBlock: BigInt + updateBlock_not: BigInt + updateBlock_gt: BigInt + updateBlock_lt: BigInt + updateBlock_gte: BigInt + updateBlock_lte: BigInt + updateBlock_in: [BigInt!] + updateBlock_not_in: [BigInt!] + _change_block: BlockChangedFilter + and: [FundedSlate_filter] + or: [FundedSlate_filter] +} + +enum DelegateRewardClaimed_orderBy { + id + delegateeAddress_ + distribution + distribution__id + distribution__distributionId + distribution__startBlock + distribution__endBlock + distribution__fundsAvailable + distribution__delegationRewardsClaimed + distribution__fundingVotePowerUsed + distribution__screeningVotesCast + distribution__totalTokensDistributed + rewardClaimed_ + blockNumber + blockTimestamp + transactionHash +} + +input DelegateRewardClaimed_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + delegateeAddress_: Bytes + delegateeAddress__not: Bytes + delegateeAddress__gt: Bytes + delegateeAddress__lt: Bytes + delegateeAddress__gte: Bytes + delegateeAddress__lte: Bytes + delegateeAddress__in: [Bytes!] + delegateeAddress__not_in: [Bytes!] + delegateeAddress__contains: Bytes + delegateeAddress__not_contains: Bytes + distribution: String + distribution_not: String + distribution_gt: String + distribution_lt: String + distribution_gte: String + distribution_lte: String + distribution_in: [String!] + distribution_not_in: [String!] + distribution_starts_with: String + distribution_starts_with_nocase: String + distribution_not_starts_with: String + distribution_not_starts_with_nocase: String + distribution_ends_with: String + distribution_ends_with_nocase: String + distribution_not_ends_with: String + distribution_not_ends_with_nocase: String + distribution_contains: String + distribution_not_contains: String + distribution_contains_nocase: String + distribution_not_contains_nocase: String + distribution_: DistributionPeriod_filter + rewardClaimed_: BigInt + rewardClaimed__not: BigInt + rewardClaimed__gt: BigInt + rewardClaimed__lt: BigInt + rewardClaimed__gte: BigInt + rewardClaimed__lte: BigInt + rewardClaimed__in: [BigInt!] + rewardClaimed__not_in: [BigInt!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [DelegateRewardClaimed_filter] + or: [DelegateRewardClaimed_filter] +} + +enum FundTreasury_orderBy { + id + amount + treasuryBalance + blockNumber + blockTimestamp + transactionHash +} + +input FundTreasury_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + amount: BigInt + amount_not: BigInt + amount_gt: BigInt + amount_lt: BigInt + amount_gte: BigInt + amount_lte: BigInt + amount_in: [BigInt!] + amount_not_in: [BigInt!] + treasuryBalance: BigDecimal + treasuryBalance_not: BigDecimal + treasuryBalance_gt: BigDecimal + treasuryBalance_lt: BigDecimal + treasuryBalance_gte: BigDecimal + treasuryBalance_lte: BigDecimal + treasuryBalance_in: [BigDecimal!] + treasuryBalance_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [FundTreasury_filter] + or: [FundTreasury_filter] +} + +enum FundedSlateUpdated_orderBy { + id + distributionId_ + fundedSlateHash_ + blockNumber + blockTimestamp + transactionHash +} + +input FundedSlateUpdated_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + distributionId_: BigInt + distributionId__not: BigInt + distributionId__gt: BigInt + distributionId__lt: BigInt + distributionId__gte: BigInt + distributionId__lte: BigInt + distributionId__in: [BigInt!] + distributionId__not_in: [BigInt!] + fundedSlateHash_: Bytes + fundedSlateHash__not: Bytes + fundedSlateHash__gt: Bytes + fundedSlateHash__lt: Bytes + fundedSlateHash__gte: Bytes + fundedSlateHash__lte: Bytes + fundedSlateHash__in: [Bytes!] + fundedSlateHash__not_in: [Bytes!] + fundedSlateHash__contains: Bytes + fundedSlateHash__not_contains: Bytes + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [FundedSlateUpdated_filter] + or: [FundedSlateUpdated_filter] +} + +enum ProposalCreated_orderBy { + id + proposal + proposal__id + proposal__proposalId + proposal__description + proposal__executed + proposal__screeningVotesReceived + proposal__fundingVotesReceived + proposal__fundingVotesNegative + proposal__fundingVotesPositive + proposal__totalTokensRequested + proposer + targets + values + signatures + calldatas + startBlock + endBlock + description + blockNumber + blockTimestamp + transactionHash +} + +input ProposalCreated_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + proposal: String + proposal_not: String + proposal_gt: String + proposal_lt: String + proposal_gte: String + proposal_lte: String + proposal_in: [String!] + proposal_not_in: [String!] + proposal_starts_with: String + proposal_starts_with_nocase: String + proposal_not_starts_with: String + proposal_not_starts_with_nocase: String + proposal_ends_with: String + proposal_ends_with_nocase: String + proposal_not_ends_with: String + proposal_not_ends_with_nocase: String + proposal_contains: String + proposal_not_contains: String + proposal_contains_nocase: String + proposal_not_contains_nocase: String + proposal_: Proposal_filter + proposer: Bytes + proposer_not: Bytes + proposer_gt: Bytes + proposer_lt: Bytes + proposer_gte: Bytes + proposer_lte: Bytes + proposer_in: [Bytes!] + proposer_not_in: [Bytes!] + proposer_contains: Bytes + proposer_not_contains: Bytes + targets: [Bytes!] + targets_not: [Bytes!] + targets_contains: [Bytes!] + targets_not_contains: [Bytes!] + targets_contains_nocase: [Bytes!] + targets_not_contains_nocase: [Bytes!] + values: [BigDecimal!] + values_not: [BigDecimal!] + values_contains: [BigDecimal!] + values_not_contains: [BigDecimal!] + values_contains_nocase: [BigDecimal!] + values_not_contains_nocase: [BigDecimal!] + signatures: [String!] + signatures_not: [String!] + signatures_contains: [String!] + signatures_not_contains: [String!] + signatures_contains_nocase: [String!] + signatures_not_contains_nocase: [String!] + calldatas: [Bytes!] + calldatas_not: [Bytes!] + calldatas_contains: [Bytes!] + calldatas_not_contains: [Bytes!] + calldatas_contains_nocase: [Bytes!] + calldatas_not_contains_nocase: [Bytes!] + startBlock: BigInt + startBlock_not: BigInt + startBlock_gt: BigInt + startBlock_lt: BigInt + startBlock_gte: BigInt + startBlock_lte: BigInt + startBlock_in: [BigInt!] + startBlock_not_in: [BigInt!] + endBlock: BigInt + endBlock_not: BigInt + endBlock_gt: BigInt + endBlock_lt: BigInt + endBlock_gte: BigInt + endBlock_lte: BigInt + endBlock_in: [BigInt!] + endBlock_not_in: [BigInt!] + description: String + description_not: String + description_gt: String + description_lt: String + description_gte: String + description_lte: String + description_in: [String!] + description_not_in: [String!] + description_starts_with: String + description_starts_with_nocase: String + description_not_starts_with: String + description_not_starts_with_nocase: String + description_ends_with: String + description_ends_with_nocase: String + description_not_ends_with: String + description_not_ends_with_nocase: String + description_contains: String + description_not_contains: String + description_contains_nocase: String + description_not_contains_nocase: String + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [ProposalCreated_filter] + or: [ProposalCreated_filter] +} + +enum ProposalExecuted_orderBy { + id + proposalId + blockNumber + blockTimestamp + transactionHash +} + +input ProposalExecuted_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + proposalId: BigInt + proposalId_not: BigInt + proposalId_gt: BigInt + proposalId_lt: BigInt + proposalId_gte: BigInt + proposalId_lte: BigInt + proposalId_in: [BigInt!] + proposalId_not_in: [BigInt!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [ProposalExecuted_filter] + or: [ProposalExecuted_filter] +} + +enum DistributionPeriodStarted_orderBy { + id + distribution + distribution__id + distribution__distributionId + distribution__startBlock + distribution__endBlock + distribution__fundsAvailable + distribution__delegationRewardsClaimed + distribution__fundingVotePowerUsed + distribution__screeningVotesCast + distribution__totalTokensDistributed + startBlock + endBlock + blockNumber + blockTimestamp + transactionHash +} + +input DistributionPeriodStarted_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + distribution: String + distribution_not: String + distribution_gt: String + distribution_lt: String + distribution_gte: String + distribution_lte: String + distribution_in: [String!] + distribution_not_in: [String!] + distribution_starts_with: String + distribution_starts_with_nocase: String + distribution_not_starts_with: String + distribution_not_starts_with_nocase: String + distribution_ends_with: String + distribution_ends_with_nocase: String + distribution_not_ends_with: String + distribution_not_ends_with_nocase: String + distribution_contains: String + distribution_not_contains: String + distribution_contains_nocase: String + distribution_not_contains_nocase: String + distribution_: DistributionPeriod_filter + startBlock: BigInt + startBlock_not: BigInt + startBlock_gt: BigInt + startBlock_lt: BigInt + startBlock_gte: BigInt + startBlock_lte: BigInt + startBlock_in: [BigInt!] + startBlock_not_in: [BigInt!] + endBlock: BigInt + endBlock_not: BigInt + endBlock_gt: BigInt + endBlock_lt: BigInt + endBlock_gte: BigInt + endBlock_lte: BigInt + endBlock_in: [BigInt!] + endBlock_not_in: [BigInt!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [DistributionPeriodStarted_filter] + or: [DistributionPeriodStarted_filter] +} + +enum VoteCast_orderBy { + id + voter + proposalId + support + weight + reason + blockNumber + blockTimestamp + transactionHash +} + +input VoteCast_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + voter: Bytes + voter_not: Bytes + voter_gt: Bytes + voter_lt: Bytes + voter_gte: Bytes + voter_lte: Bytes + voter_in: [Bytes!] + voter_not_in: [Bytes!] + voter_contains: Bytes + voter_not_contains: Bytes + proposalId: BigInt + proposalId_not: BigInt + proposalId_gt: BigInt + proposalId_lt: BigInt + proposalId_gte: BigInt + proposalId_lte: BigInt + proposalId_in: [BigInt!] + proposalId_not_in: [BigInt!] + support: Int + support_not: Int + support_gt: Int + support_lt: Int + support_gte: Int + support_lte: Int + support_in: [Int!] + support_not_in: [Int!] + weight: BigDecimal + weight_not: BigDecimal + weight_gt: BigDecimal + weight_lt: BigDecimal + weight_gte: BigDecimal + weight_lte: BigDecimal + weight_in: [BigDecimal!] + weight_not_in: [BigDecimal!] + reason: String + reason_not: String + reason_gt: String + reason_lt: String + reason_gte: String + reason_lte: String + reason_in: [String!] + reason_not_in: [String!] + reason_starts_with: String + reason_starts_with_nocase: String + reason_not_starts_with: String + reason_not_starts_with_nocase: String + reason_ends_with: String + reason_ends_with_nocase: String + reason_not_ends_with: String + reason_not_ends_with_nocase: String + reason_contains: String + reason_not_contains: String + reason_contains_nocase: String + reason_not_contains_nocase: String + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [VoteCast_filter] + or: [VoteCast_filter] +} + +enum DelegateChanged_orderBy { + id + delegator + fromDelegate + toDelegate + blockNumber + blockTimestamp + transactionHash +} + +input DelegateChanged_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + delegator: Bytes + delegator_not: Bytes + delegator_gt: Bytes + delegator_lt: Bytes + delegator_gte: Bytes + delegator_lte: Bytes + delegator_in: [Bytes!] + delegator_not_in: [Bytes!] + delegator_contains: Bytes + delegator_not_contains: Bytes + fromDelegate: Bytes + fromDelegate_not: Bytes + fromDelegate_gt: Bytes + fromDelegate_lt: Bytes + fromDelegate_gte: Bytes + fromDelegate_lte: Bytes + fromDelegate_in: [Bytes!] + fromDelegate_not_in: [Bytes!] + fromDelegate_contains: Bytes + fromDelegate_not_contains: Bytes + toDelegate: Bytes + toDelegate_not: Bytes + toDelegate_gt: Bytes + toDelegate_lt: Bytes + toDelegate_gte: Bytes + toDelegate_lte: Bytes + toDelegate_in: [Bytes!] + toDelegate_not_in: [Bytes!] + toDelegate_contains: Bytes + toDelegate_not_contains: Bytes + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [DelegateChanged_filter] + or: [DelegateChanged_filter] +} + +enum DelegateVotesChanged_orderBy { + id + delegate + previousBalance + newBalance + blockNumber + blockTimestamp + transactionHash +} + +input DelegateVotesChanged_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + delegate: Bytes + delegate_not: Bytes + delegate_gt: Bytes + delegate_lt: Bytes + delegate_gte: Bytes + delegate_lte: Bytes + delegate_in: [Bytes!] + delegate_not_in: [Bytes!] + delegate_contains: Bytes + delegate_not_contains: Bytes + previousBalance: BigDecimal + previousBalance_not: BigDecimal + previousBalance_gt: BigDecimal + previousBalance_lt: BigDecimal + previousBalance_gte: BigDecimal + previousBalance_lte: BigDecimal + previousBalance_in: [BigDecimal!] + previousBalance_not_in: [BigDecimal!] + newBalance: BigDecimal + newBalance_not: BigDecimal + newBalance_gt: BigDecimal + newBalance_lt: BigDecimal + newBalance_gte: BigDecimal + newBalance_lte: BigDecimal + newBalance_in: [BigDecimal!] + newBalance_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [DelegateVotesChanged_filter] + or: [DelegateVotesChanged_filter] +} + +enum BurnWrap_orderBy { + id + wrapper + account + account__id + account__rewardsClaimed + account__tokensDelegated + account__txCount + amount + blockNumber + blockTimestamp + transactionHash +} + +input BurnWrap_filter { + id: Bytes + id_not: Bytes + id_gt: Bytes + id_lt: Bytes + id_gte: Bytes + id_lte: Bytes + id_in: [Bytes!] + id_not_in: [Bytes!] + id_contains: Bytes + id_not_contains: Bytes + wrapper: Bytes + wrapper_not: Bytes + wrapper_gt: Bytes + wrapper_lt: Bytes + wrapper_gte: Bytes + wrapper_lte: Bytes + wrapper_in: [Bytes!] + wrapper_not_in: [Bytes!] + wrapper_contains: Bytes + wrapper_not_contains: Bytes + account: String + account_not: String + account_gt: String + account_lt: String + account_gte: String + account_lte: String + account_in: [String!] + account_not_in: [String!] + account_starts_with: String + account_starts_with_nocase: String + account_not_starts_with: String + account_not_starts_with_nocase: String + account_ends_with: String + account_ends_with_nocase: String + account_not_ends_with: String + account_not_ends_with_nocase: String + account_contains: String + account_not_contains: String + account_contains_nocase: String + account_not_contains_nocase: String + account_: Account_filter + amount: BigDecimal + amount_not: BigDecimal + amount_gt: BigDecimal + amount_lt: BigDecimal + amount_gte: BigDecimal + amount_lte: BigDecimal + amount_in: [BigDecimal!] + amount_not_in: [BigDecimal!] + blockNumber: BigInt + blockNumber_not: BigInt + blockNumber_gt: BigInt + blockNumber_lt: BigInt + blockNumber_gte: BigInt + blockNumber_lte: BigInt + blockNumber_in: [BigInt!] + blockNumber_not_in: [BigInt!] + blockTimestamp: BigInt + blockTimestamp_not: BigInt + blockTimestamp_gt: BigInt + blockTimestamp_lt: BigInt + blockTimestamp_gte: BigInt + blockTimestamp_lte: BigInt + blockTimestamp_in: [BigInt!] + blockTimestamp_not_in: [BigInt!] + transactionHash: Bytes + transactionHash_not: Bytes + transactionHash_gt: Bytes + transactionHash_lt: Bytes + transactionHash_gte: Bytes + transactionHash_lte: Bytes + transactionHash_in: [Bytes!] + transactionHash_not_in: [Bytes!] + transactionHash_contains: Bytes + transactionHash_not_contains: Bytes + _change_block: BlockChangedFilter + and: [BurnWrap_filter] + or: [BurnWrap_filter] +} + +type _MetaBlock_ { + hash: Bytes + number: Int! + timestamp: Int +} + +type _Meta_ { + block: _MetaBlock_! + deployment: String! + hasIndexingErrors: Boolean! +} + +type ResultState { + block: _Block_! + contractAddress: String! + cid: String! + kind: String! + data: String! +} + +type SyncStatus { + latestIndexedBlockHash: String! + latestIndexedBlockNumber: Int! + latestCanonicalBlockHash: String! + latestCanonicalBlockNumber: Int! + initialIndexedBlockHash: String! + initialIndexedBlockNumber: Int! + latestProcessedBlockHash: String! + latestProcessedBlockNumber: Int! +} + +type Query { + events(blockHash: String!, contractAddress: String!, name: String): [ResultEvent!] + eventsInRange(fromBlockNumber: Int!, toBlockNumber: Int!): [ResultEvent!] + token(id: ID!, block: Block_height): Token + tokens(block: Block_height, where: Token_filter, orderBy: Token_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Token!]! + poolFactory(id: ID!, block: Block_height): PoolFactory + poolFactories(block: Block_height, where: PoolFactory_filter, orderBy: PoolFactory_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [PoolFactory!]! + pool(id: ID!, block: Block_height): Pool + pools(block: Block_height, where: Pool_filter, orderBy: Pool_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Pool!]! + bucket(id: ID!, block: Block_height): Bucket + buckets(block: Block_height, where: Bucket_filter, orderBy: Bucket_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Bucket!]! + lend(id: ID!, block: Block_height): Lend + lends(block: Block_height, where: Lend_filter, orderBy: Lend_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Lend!]! + loan(id: ID!, block: Block_height): Loan + loans(block: Block_height, where: Loan_filter, orderBy: Loan_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Loan!]! + account(id: ID!, block: Block_height): Account + accounts(block: Block_height, where: Account_filter, orderBy: Account_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Account!]! + liquidationAuction(id: ID!, block: Block_height): LiquidationAuction + liquidationAuctions(block: Block_height, where: LiquidationAuction_filter, orderBy: LiquidationAuction_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [LiquidationAuction!]! + reserveAuction(id: ID!, block: Block_height): ReserveAuction + reserveAuctions(block: Block_height, where: ReserveAuction_filter, orderBy: ReserveAuction_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [ReserveAuction!]! + lptransferorList(id: ID!, block: Block_height): LPTransferorList + lptransferorLists(block: Block_height, where: LPTransferorList_filter, orderBy: LPTransferorList_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [LPTransferorList!]! + lpallowance(id: ID!, block: Block_height): LPAllowance + lpallowances(block: Block_height, where: LPAllowance_filter, orderBy: LPAllowance_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [LPAllowance!]! + lpallowanceList(id: ID!, block: Block_height): LPAllowanceList + lpallowanceLists(block: Block_height, where: LPAllowanceList_filter, orderBy: LPAllowanceList_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [LPAllowanceList!]! + addCollateral(id: ID!, block: Block_height): AddCollateral + addCollaterals(block: Block_height, where: AddCollateral_filter, orderBy: AddCollateral_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [AddCollateral!]! + addQuoteToken(id: ID!, block: Block_height): AddQuoteToken + addQuoteTokens(block: Block_height, where: AddQuoteToken_filter, orderBy: AddQuoteToken_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [AddQuoteToken!]! + auctionSettle(id: ID!, block: Block_height): AuctionSettle + auctionSettles(block: Block_height, where: AuctionSettle_filter, orderBy: AuctionSettle_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [AuctionSettle!]! + bondWithdrawn(id: ID!, block: Block_height): BondWithdrawn + bondWithdrawns(block: Block_height, where: BondWithdrawn_filter, orderBy: BondWithdrawn_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [BondWithdrawn!]! + bucketBankruptcy(id: ID!, block: Block_height): BucketBankruptcy + bucketBankruptcies(block: Block_height, where: BucketBankruptcy_filter, orderBy: BucketBankruptcy_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [BucketBankruptcy!]! + bucketTake(id: ID!, block: Block_height): BucketTake + bucketTakes(block: Block_height, where: BucketTake_filter, orderBy: BucketTake_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [BucketTake!]! + bucketTakeLPAwarded(id: ID!, block: Block_height): BucketTakeLPAwarded + bucketTakeLPAwardeds(block: Block_height, where: BucketTakeLPAwarded_filter, orderBy: BucketTakeLPAwarded_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [BucketTakeLPAwarded!]! + drawDebt(id: ID!, block: Block_height): DrawDebt + drawDebts(block: Block_height, where: DrawDebt_filter, orderBy: DrawDebt_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [DrawDebt!]! + flashloan(id: ID!, block: Block_height): Flashloan + flashloans(block: Block_height, where: Flashloan_filter, orderBy: Flashloan_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Flashloan!]! + kick(id: ID!, block: Block_height): Kick + kicks(block: Block_height, where: Kick_filter, orderBy: Kick_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Kick!]! + loanStamped(id: ID!, block: Block_height): LoanStamped + loanStampeds(block: Block_height, where: LoanStamped_filter, orderBy: LoanStamped_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [LoanStamped!]! + moveQuoteToken(id: ID!, block: Block_height): MoveQuoteToken + moveQuoteTokens(block: Block_height, where: MoveQuoteToken_filter, orderBy: MoveQuoteToken_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [MoveQuoteToken!]! + removeCollateral(id: ID!, block: Block_height): RemoveCollateral + removeCollaterals(block: Block_height, where: RemoveCollateral_filter, orderBy: RemoveCollateral_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [RemoveCollateral!]! + removeQuoteToken(id: ID!, block: Block_height): RemoveQuoteToken + removeQuoteTokens(block: Block_height, where: RemoveQuoteToken_filter, orderBy: RemoveQuoteToken_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [RemoveQuoteToken!]! + repayDebt(id: ID!, block: Block_height): RepayDebt + repayDebts(block: Block_height, where: RepayDebt_filter, orderBy: RepayDebt_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [RepayDebt!]! + reserveAuctionKick(id: ID!, block: Block_height): ReserveAuctionKick + reserveAuctionKicks(block: Block_height, where: ReserveAuctionKick_filter, orderBy: ReserveAuctionKick_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [ReserveAuctionKick!]! + reserveAuctionTake(id: ID!, block: Block_height): ReserveAuctionTake + reserveAuctionTakes(block: Block_height, where: ReserveAuctionTake_filter, orderBy: ReserveAuctionTake_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [ReserveAuctionTake!]! + resetInterestRate(id: ID!, block: Block_height): ResetInterestRate + resetInterestRates(block: Block_height, where: ResetInterestRate_filter, orderBy: ResetInterestRate_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [ResetInterestRate!]! + settle(id: ID!, block: Block_height): Settle + settles(block: Block_height, where: Settle_filter, orderBy: Settle_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Settle!]! + take(id: ID!, block: Block_height): Take + takes(block: Block_height, where: Take_filter, orderBy: Take_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Take!]! + transferLP(id: ID!, block: Block_height): TransferLP + transferLPS(block: Block_height, where: TransferLP_filter, orderBy: TransferLP_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [TransferLP!]! + updateInterestRate(id: ID!, block: Block_height): UpdateInterestRate + updateInterestRates(block: Block_height, where: UpdateInterestRate_filter, orderBy: UpdateInterestRate_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [UpdateInterestRate!]! + approval(id: ID!, block: Block_height): Approval + approvals(block: Block_height, where: Approval_filter, orderBy: Approval_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Approval!]! + approvalForAll(id: ID!, block: Block_height): ApprovalForAll + approvalForAlls(block: Block_height, where: ApprovalForAll_filter, orderBy: ApprovalForAll_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [ApprovalForAll!]! + moveLiquidity(id: ID!, block: Block_height): MoveLiquidity + moveLiquidities(block: Block_height, where: MoveLiquidity_filter, orderBy: MoveLiquidity_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [MoveLiquidity!]! + transfer(id: ID!, block: Block_height): Transfer + transfers(block: Block_height, where: Transfer_filter, orderBy: Transfer_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Transfer!]! + poolCreated(id: ID!, block: Block_height): PoolCreated + poolCreateds(block: Block_height, where: PoolCreated_filter, orderBy: PoolCreated_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [PoolCreated!]! + addCollateralNFT(id: ID!, block: Block_height): AddCollateralNFT + addCollateralNFTS(block: Block_height, where: AddCollateralNFT_filter, orderBy: AddCollateralNFT_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [AddCollateralNFT!]! + auctionNFTSettle(id: ID!, block: Block_height): AuctionNFTSettle + auctionNFTSettles(block: Block_height, where: AuctionNFTSettle_filter, orderBy: AuctionNFTSettle_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [AuctionNFTSettle!]! + drawDebtNFT(id: ID!, block: Block_height): DrawDebtNFT + drawDebtNFTS(block: Block_height, where: DrawDebtNFT_filter, orderBy: DrawDebtNFT_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [DrawDebtNFT!]! + mergeOrRemoveCollateralNFT(id: ID!, block: Block_height): MergeOrRemoveCollateralNFT + mergeOrRemoveCollateralNFTS(block: Block_height, where: MergeOrRemoveCollateralNFT_filter, orderBy: MergeOrRemoveCollateralNFT_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [MergeOrRemoveCollateralNFT!]! + position(id: ID!, block: Block_height): Position + positions(block: Block_height, where: Position_filter, orderBy: Position_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Position!]! + positionLend(id: ID!, block: Block_height): PositionLend + positionLends(block: Block_height, where: PositionLend_filter, orderBy: PositionLend_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [PositionLend!]! + burn(id: ID!, block: Block_height): Burn + burns(block: Block_height, where: Burn_filter, orderBy: Burn_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Burn!]! + memorializePosition(id: ID!, block: Block_height): MemorializePosition + memorializePositions(block: Block_height, where: MemorializePosition_filter, orderBy: MemorializePosition_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [MemorializePosition!]! + mint(id: ID!, block: Block_height): Mint + mints(block: Block_height, where: Mint_filter, orderBy: Mint_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Mint!]! + redeemPosition(id: ID!, block: Block_height): RedeemPosition + redeemPositions(block: Block_height, where: RedeemPosition_filter, orderBy: RedeemPosition_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [RedeemPosition!]! + grantFund(id: ID!, block: Block_height): GrantFund + grantFunds(block: Block_height, where: GrantFund_filter, orderBy: GrantFund_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [GrantFund!]! + distributionPeriod(id: ID!, block: Block_height): DistributionPeriod + distributionPeriods(block: Block_height, where: DistributionPeriod_filter, orderBy: DistributionPeriod_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [DistributionPeriod!]! + proposal(id: ID!, block: Block_height): Proposal + proposals(block: Block_height, where: Proposal_filter, orderBy: Proposal_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [Proposal!]! + proposalParams(id: ID!, block: Block_height): ProposalParams + proposalParamss(block: Block_height, where: ProposalParams_filter, orderBy: ProposalParams_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [ProposalParams!]! + distributionPeriodVote(id: ID!, block: Block_height): DistributionPeriodVote + distributionPeriodVotes(block: Block_height, where: DistributionPeriodVote_filter, orderBy: DistributionPeriodVote_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [DistributionPeriodVote!]! + screeningVote(id: ID!, block: Block_height): ScreeningVote + screeningVotes(block: Block_height, where: ScreeningVote_filter, orderBy: ScreeningVote_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [ScreeningVote!]! + fundingVote(id: ID!, block: Block_height): FundingVote + fundingVotes(block: Block_height, where: FundingVote_filter, orderBy: FundingVote_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [FundingVote!]! + fundedSlate(id: ID!, block: Block_height): FundedSlate + fundedSlates(block: Block_height, where: FundedSlate_filter, orderBy: FundedSlate_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [FundedSlate!]! + delegateRewardClaimed(id: ID!, block: Block_height): DelegateRewardClaimed + delegateRewardClaimeds(block: Block_height, where: DelegateRewardClaimed_filter, orderBy: DelegateRewardClaimed_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [DelegateRewardClaimed!]! + fundTreasury(id: ID!, block: Block_height): FundTreasury + fundTreasuries(block: Block_height, where: FundTreasury_filter, orderBy: FundTreasury_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [FundTreasury!]! + fundedSlateUpdated(id: ID!, block: Block_height): FundedSlateUpdated + fundedSlateUpdateds(block: Block_height, where: FundedSlateUpdated_filter, orderBy: FundedSlateUpdated_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [FundedSlateUpdated!]! + proposalCreated(id: ID!, block: Block_height): ProposalCreated + proposalCreateds(block: Block_height, where: ProposalCreated_filter, orderBy: ProposalCreated_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [ProposalCreated!]! + proposalExecuted(id: ID!, block: Block_height): ProposalExecuted + proposalExecuteds(block: Block_height, where: ProposalExecuted_filter, orderBy: ProposalExecuted_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [ProposalExecuted!]! + distributionPeriodStarted(id: ID!, block: Block_height): DistributionPeriodStarted + distributionPeriodStarteds(block: Block_height, where: DistributionPeriodStarted_filter, orderBy: DistributionPeriodStarted_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [DistributionPeriodStarted!]! + voteCast(id: ID!, block: Block_height): VoteCast + voteCasts(block: Block_height, where: VoteCast_filter, orderBy: VoteCast_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [VoteCast!]! + delegateChanged(id: ID!, block: Block_height): DelegateChanged + delegateChangeds(block: Block_height, where: DelegateChanged_filter, orderBy: DelegateChanged_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [DelegateChanged!]! + delegateVotesChanged(id: ID!, block: Block_height): DelegateVotesChanged + delegateVotesChangeds(block: Block_height, where: DelegateVotesChanged_filter, orderBy: DelegateVotesChanged_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [DelegateVotesChanged!]! + burnWrap(id: ID!, block: Block_height): BurnWrap + burnWraps(block: Block_height, where: BurnWrap_filter, orderBy: BurnWrap_orderBy, orderDirection: OrderDirection, first: Int = 100, skip: Int = 0): [BurnWrap!]! + _meta(block: Block_height): _Meta_ + getStateByCID(cid: String!): ResultState + getState(blockHash: String!, contractAddress: String!, kind: String): ResultState + getSyncStatus: SyncStatus +} + +type Token { + id: Bytes! + symbol: String! + name: String! + decimals: Int + tokenType: String! + poolCount: BigInt! + pools: [Pool!]! + totalSupply: BigInt + txCount: BigInt! +} + +type Pool { + id: Bytes! + createdAtBlockNumber: BigInt! + createdAtTimestamp: BigInt! + collateralToken: Token! + quoteToken: Token! + poolSize: BigDecimal! + t0debt: BigDecimal! + inflator: BigDecimal! + borrowRate: BigDecimal! + lendRate: BigDecimal! + borrowFeeRate: BigDecimal! + depositFeeRate: BigDecimal! + pledgedCollateral: BigDecimal! + totalInterestEarned: BigDecimal! + txCount: BigInt! + poolType: String! + loansCount: BigInt! + maxBorrower: Bytes! + quoteTokenFlashloaned: BigDecimal! + collateralFlashloaned: BigDecimal! + hpb: BigDecimal! + hpbIndex: Int! + htp: BigDecimal! + htpIndex: Int! + lup: BigDecimal! + lupIndex: Int! + reserves: BigDecimal! + claimableReserves: BigDecimal! + claimableReservesRemaining: BigDecimal! + burnEpoch: BigInt! + totalAjnaBurned: BigDecimal! + reserveAuctions: [ReserveAuction!]! + minDebtAmount: BigDecimal! + actualUtilization: BigDecimal! + targetUtilization: BigDecimal! + totalBondEscrowed: BigDecimal! + liquidationAuctions: [LiquidationAuction!]! + quoteTokenBalance: BigDecimal! + collateralBalance: BigDecimal! + subsetHash: Bytes! + tokenIdsPledged: [BigInt!]! + bucketTokenIds: [BigInt!]! + tokenIdsAllowed: [BigInt!]! +} + +type ReserveAuction { + id: Bytes! + pool: Pool! + claimableReservesRemaining: BigDecimal! + lastTakePrice: BigDecimal! + burnEpoch: BigInt! + kick: ReserveAuctionKick! + takes: [ReserveAuctionTake!]! + ajnaBurned: BigDecimal! +} + +type ReserveAuctionKick { + id: Bytes! + kicker: Bytes + reserveAuction: ReserveAuction! + pool: Pool! + claimableReserves: BigDecimal! + startingPrice: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type ReserveAuctionTake { + id: Bytes! + taker: Bytes + reserveAuction: ReserveAuction! + pool: Pool! + claimableReservesRemaining: BigDecimal! + auctionPrice: BigDecimal! + quotePurchased: BigDecimal! + ajnaBurned: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type LiquidationAuction { + id: Bytes! + pool: Pool! + borrower: Bytes! + lastTakePrice: BigDecimal! + collateral: BigDecimal! + collateralRemaining: BigDecimal! + debt: BigDecimal! + debtRemaining: BigDecimal! + loan: Loan! + kicker: Bytes! + kick: Kick! + kickTime: BigInt! + takes: [Take!]! + bucketTakes: [BucketTake!]! + settles: [Settle!]! + settle: AuctionSettle + settleTime: BigInt + settled: Boolean! + bondSize: BigDecimal! + bondFactor: BigDecimal! + neutralPrice: BigDecimal! + referencePrice: BigDecimal! + thresholdPrice: BigDecimal! +} + +type Loan { + id: Bytes! + poolAddress: String! + borrower: Bytes! + pool: Pool! + inLiquidation: Boolean! + liquidationAuction: LiquidationAuction + collateralPledged: BigDecimal! + thresholdPrice: BigDecimal! + tokenIdsPledged: [BigInt!]! + t0debt: BigDecimal! + t0Np: BigDecimal! +} + +type Kick { + id: Bytes! + kicker: Bytes! + pool: Pool! + loan: Loan! + locked: BigDecimal! + claimable: BigDecimal! + liquidationAuction: LiquidationAuction! + borrower: Bytes! + debt: BigDecimal! + collateral: BigDecimal! + bond: BigDecimal! + startingPrice: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Take { + id: Bytes! + taker: Bytes! + pool: Pool! + borrower: Bytes! + liquidationAuction: LiquidationAuction! + loan: Loan! + auctionPrice: BigDecimal! + amount: BigDecimal! + collateral: BigDecimal! + bondChange: BigDecimal! + isReward: Boolean! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type BucketTake { + id: Bytes! + borrower: Bytes! + taker: Bytes! + liquidationAuction: LiquidationAuction! + loan: Loan! + pool: Pool! + index: Int! + auctionPrice: BigDecimal! + amount: BigDecimal! + collateral: BigDecimal! + bondChange: BigDecimal! + isReward: Boolean! + lpAwarded: BucketTakeLPAwarded! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type BucketTakeLPAwarded { + id: Bytes! + taker: Bytes! + pool: Pool! + kicker: Bytes! + lpAwardedTaker: BigDecimal! + lpAwardedKicker: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Settle { + id: Bytes! + pool: Pool! + liquidationAuction: LiquidationAuction! + loan: Loan! + borrower: Bytes! + settledDebt: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type AuctionSettle { + id: Bytes! + pool: Pool! + loan: Loan! + borrower: Bytes! + collateral: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type PoolFactory { + id: Bytes! + poolType: String! + poolCount: BigInt! + pools: [Pool!]! + txCount: BigInt! +} + +type Bucket { + id: Bytes! + bucketIndex: Int! + bucketPrice: BigDecimal! + exchangeRate: BigDecimal! + poolAddress: String! + pool: Pool! + collateral: BigDecimal! + deposit: BigDecimal! + lpb: BigDecimal! + lends: [Lend!]! + positionLends: [PositionLend!]! +} + +type Lend { + id: Bytes! + bucket: Bucket! + bucketIndex: Int! + poolAddress: String! + lender: Bytes! + pool: Pool! + lpb: BigDecimal! + lpbValueInQuote: BigDecimal! + depositTime: BigInt! +} + +type PositionLend { + id: Bytes! + bucket: Bucket! + bucketIndex: Int! + depositTime: BigInt! + lpb: BigDecimal! + lpbValueInQuote: BigDecimal! + tokenId: BigInt! +} + +type Account { + id: Bytes! + pools: [Pool!]! + kicks: [Kick!]! + lends: [Lend!]! + loans: [Loan!]! + settles: [Settle!]! + takes: [Take!]! + reserveAuctions: [ReserveAuction!]! + proposalsCreated: [Proposal!]! + proposalsExecuted: [Proposal!]! + delegatedTo: Account + delegatedFrom: [Account!]! + rewardsClaimed: BigDecimal! + distributionPeriodVotes: [DistributionPeriodVote!]! + tokensDelegated: BigDecimal! + positions: [Position!]! + txCount: BigInt! +} + +type Proposal { + id: Bytes! + proposalId: BigInt! + description: String! + distribution: DistributionPeriod + executed: Boolean! + screeningVotesReceived: BigDecimal! + fundingVotesReceived: BigDecimal! + fundingVotesNegative: BigDecimal! + fundingVotesPositive: BigDecimal! + totalTokensRequested: BigDecimal! + params: [ProposalParams!]! +} + +type DistributionPeriod { + id: Bytes! + distributionId: BigInt! + startBlock: BigInt! + endBlock: BigInt! + topSlate: FundedSlate + slatesSubmitted: [FundedSlate!]! + fundsAvailable: BigDecimal! + delegationRewardsClaimed: BigDecimal! + fundingVotePowerUsed: BigDecimal! + screeningVotesCast: BigDecimal! + votes: [DistributionPeriodVote!]! + proposals: [Proposal!]! + totalTokensDistributed: BigDecimal! +} + +type FundedSlate { + id: Bytes! + distribution: DistributionPeriod! + proposals: [Proposal!]! + totalTokensRequested: BigDecimal! + totalFundingVotesReceived: BigDecimal! + updateBlock: BigInt! +} + +type DistributionPeriodVote { + id: Bytes! + voter: Account! + distribution: DistributionPeriod! + initialFundingStageVotingPowerRecordedPostVote: BigDecimal! + remainingFundingStageVotingPowerRecordedPostVote: BigDecimal! + initialScreeningStageVotingPowerRecordedPostVote: BigDecimal! + remainingScreeningStageVotingPowerRecordedPostVote: BigDecimal! + screeningVotes: [ScreeningVote!]! + fundingVotes: [FundingVote!]! +} + +type ScreeningVote { + id: Bytes! + distribution: DistributionPeriod! + voter: Account! + proposal: Proposal! + totalVotesCast: BigDecimal! + votesCast: [VoteCast!]! +} + +type VoteCast { + id: Bytes! + voter: Bytes! + proposalId: BigInt! + support: Int! + weight: BigDecimal! + reason: String! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type FundingVote { + id: Bytes! + distribution: DistributionPeriod! + voter: Account! + proposal: Proposal! + totalVotesCast: BigDecimal! + votingPowerUsed: BigDecimal! + votesCast: [VoteCast!]! +} + +type ProposalParams { + id: Bytes! + target: Bytes! + value: BigInt! + calldata: Bytes! + recipient: Bytes! + tokensRequested: BigDecimal! +} + +type Position { + id: Bytes! + tokenId: BigInt + indexes: [PositionLend!]! + owner: Bytes! + pool: Pool! + token: Token! + tokenURI: String! +} + +type LPTransferorList { + id: Bytes! + pool: Pool! + lender: Bytes! + transferors: [Bytes!]! +} + +type LPAllowance { + id: Bytes! + index: Int! + amount: BigDecimal! +} + +type LPAllowanceList { + id: Bytes! + pool: Pool! + lender: Bytes! + spender: Bytes! + allowances: [LPAllowance!]! +} + +type AddCollateral { + id: Bytes! + pool: Pool! + bucket: Bucket! + actor: Bytes! + index: Int! + amount: BigDecimal! + lpAwarded: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type AddQuoteToken { + id: Bytes! + pool: Pool! + bucket: Bucket! + lender: Bytes! + index: Int! + amount: BigDecimal! + lpAwarded: BigDecimal! + lup: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type BondWithdrawn { + id: Bytes! + kicker: Bytes! + reciever: Bytes! + amount: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type BucketBankruptcy { + id: Bytes! + bucket: Bucket! + index: Int! + pool: Pool! + lpForfeited: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type DrawDebt { + id: Bytes! + pool: Pool! + borrower: Bytes! + amountBorrowed: BigDecimal! + collateralPledged: BigDecimal! + lup: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Flashloan { + id: Bytes! + pool: Pool! + borrower: Bytes! + amount: BigDecimal! +} + +type LoanStamped { + id: Bytes! + pool: Pool! + borrower: Bytes! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type MoveQuoteToken { + id: Bytes! + pool: Pool! + lender: Bytes! + from: Bucket! + to: Bucket! + amount: BigDecimal! + lpRedeemedFrom: BigDecimal! + lpAwardedTo: BigDecimal! + lup: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type RemoveCollateral { + id: Bytes! + pool: Pool! + bucket: Bucket! + claimer: Bytes! + index: Int! + amount: BigDecimal! + lpRedeemed: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type RemoveQuoteToken { + id: Bytes! + pool: Pool! + bucket: Bucket! + lender: Bytes! + index: Int! + amount: BigDecimal! + lpRedeemed: BigDecimal! + lup: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type RepayDebt { + id: Bytes! + pool: Pool! + borrower: Bytes! + quoteRepaid: BigDecimal! + collateralPulled: BigDecimal! + lup: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type ResetInterestRate { + id: Bytes! + pool: Pool! + oldBorrowRate: BigDecimal! + newBorrowRate: BigDecimal! + oldLendRate: BigDecimal! + newLendRate: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type TransferLP { + id: Bytes! + owner: Bytes! + newOwner: Bytes! + indexes: [Int!]! + lp: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type UpdateInterestRate { + id: Bytes! + pool: Pool! + oldBorrowRate: BigDecimal! + newBorrowRate: BigDecimal! + oldLendRate: BigDecimal! + newLendRate: BigDecimal! + borrowFeeRate: BigDecimal! + depositFeeRate: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Approval { + id: Bytes! + owner: Bytes! + approved: Bytes! + tokenId: BigInt! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type ApprovalForAll { + id: Bytes! + owner: Bytes! + operator: Bytes! + approved: Boolean! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type MoveLiquidity { + id: Bytes! + lender: Bytes! + tokenId: BigInt! + pool: Pool! + fromIndex: Int! + toIndex: Int! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Transfer { + id: Bytes! + token: Token! + pool: Pool! + from: Bytes! + to: Bytes! + tokenId: BigInt! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type PoolCreated { + id: Bytes! + pool: Pool! + poolType: String! + factory: PoolFactory! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type AddCollateralNFT { + id: Bytes! + pool: Pool! + bucket: Bucket! + actor: Bytes! + index: BigInt! + tokenIds: [BigInt!]! + lpAwarded: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type AuctionNFTSettle { + id: Bytes! + pool: Pool! + loan: Loan! + borrower: Bytes! + collateral: BigDecimal! + lp: BigDecimal! + index: Int! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type DrawDebtNFT { + id: Bytes! + pool: Pool! + borrower: Bytes! + amountBorrowed: BigDecimal! + tokenIdsPledged: [BigInt!]! + lup: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type MergeOrRemoveCollateralNFT { + id: Bytes! + pool: Pool! + actor: Bytes! + collateralMerged: BigDecimal! + toIndexLps: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Burn { + id: Bytes! + lender: Bytes! + tokenId: BigInt! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type MemorializePosition { + id: Bytes! + pool: Pool! + lender: Bytes! + tokenId: BigInt! + indexes: [Int!]! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Mint { + id: Bytes! + lender: Bytes! + pool: Pool! + tokenId: BigInt! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type RedeemPosition { + id: Bytes! + pool: Pool! + lender: Bytes! + tokenId: BigInt! + indexes: [Int!]! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type GrantFund { + id: Bytes! + treasury: BigDecimal! + distributionPeriods: [DistributionPeriod!]! + totalDelegationRewardsClaimed: BigDecimal! +} + +type DelegateRewardClaimed { + id: Bytes! + delegateeAddress_: Bytes! + distribution: DistributionPeriod! + rewardClaimed_: BigInt! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type FundTreasury { + id: Bytes! + amount: BigInt! + treasuryBalance: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type FundedSlateUpdated { + id: Bytes! + distributionId_: BigInt! + fundedSlateHash_: Bytes! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type ProposalCreated { + id: Bytes! + proposal: Proposal! + proposer: Bytes! + targets: [Bytes!]! + values: [BigDecimal!]! + signatures: [String!]! + calldatas: [Bytes!]! + startBlock: BigInt! + endBlock: BigInt! + description: String! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type ProposalExecuted { + id: Bytes! + proposalId: BigInt! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type DistributionPeriodStarted { + id: Bytes! + distribution: DistributionPeriod! + startBlock: BigInt! + endBlock: BigInt! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type DelegateChanged { + id: Bytes! + delegator: Bytes! + fromDelegate: Bytes! + toDelegate: Bytes! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type DelegateVotesChanged { + id: Bytes! + delegate: Bytes! + previousBalance: BigDecimal! + newBalance: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type BurnWrap { + id: Bytes! + wrapper: Bytes! + account: Account + amount: BigDecimal! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Mutation { + watchContract(address: String!, kind: String!, checkpoint: Boolean!, startingBlock: Int): Boolean! +} + +type Subscription { + onEvent: ResultEvent! +} diff --git a/src/server.ts b/src/server.ts new file mode 100644 index 0000000..679134f --- /dev/null +++ b/src/server.ts @@ -0,0 +1,43 @@ +// +// Copyright 2021 Vulcanize, Inc. +// + +import fs from 'fs'; +import path from 'path'; +import 'reflect-metadata'; +import debug from 'debug'; + +import { ServerCmd } from '@cerc-io/cli'; +import { getGraphDbAndWatcher } from '@cerc-io/graph-node'; + +import { createResolvers } from './resolvers'; +import { Indexer } from './indexer'; +import { Database, ENTITY_QUERY_TYPE_MAP, ENTITY_TO_LATEST_ENTITY_MAP } from './database'; + +const log = debug('vulcanize:server'); + +export const main = async (): Promise => { + const serverCmd = new ServerCmd(); + await serverCmd.init(Database); + + const { graphWatcher } = await getGraphDbAndWatcher( + serverCmd.config.server, + serverCmd.clients.ethClient, + serverCmd.ethProvider, + serverCmd.database.baseDatabase, + ENTITY_QUERY_TYPE_MAP, + ENTITY_TO_LATEST_ENTITY_MAP + ); + + await serverCmd.initIndexer(Indexer, graphWatcher); + + const typeDefs = fs.readFileSync(path.join(__dirname, 'schema.gql')).toString(); + + return serverCmd.exec(createResolvers, typeDefs); +}; + +main().then(() => { + log('Starting server...'); +}).catch(err => { + log(err); +}); diff --git a/src/types.ts b/src/types.ts new file mode 100644 index 0000000..c456217 --- /dev/null +++ b/src/types.ts @@ -0,0 +1,3 @@ +// +// Copyright 2021 Vulcanize, Inc. +// diff --git a/subgraph-build/AjnaToken/AjnaToken.wasm b/subgraph-build/AjnaToken/AjnaToken.wasm new file mode 100644 index 0000000..9988b88 Binary files /dev/null and b/subgraph-build/AjnaToken/AjnaToken.wasm differ diff --git a/subgraph-build/AjnaToken/abis/AjnaToken.json b/subgraph-build/AjnaToken/abis/AjnaToken.json new file mode 100644 index 0000000..1390522 --- /dev/null +++ b/subgraph-build/AjnaToken/abis/AjnaToken.json @@ -0,0 +1,674 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "tokenReceiver_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "DOMAIN_SEPARATOR", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "allowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "burn", + "inputs": [ + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "burnFrom", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "checkpoints", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + }, + { + "name": "pos", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "tuple", + "internalType": "struct ERC20Votes.Checkpoint", + "components": [ + { + "name": "fromBlock", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "votes", + "type": "uint224", + "internalType": "uint224" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decimals", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "subtractedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "delegate", + "inputs": [ + { + "name": "delegatee", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "delegateBySig", + "inputs": [ + { + "name": "delegatee", + "type": "address", + "internalType": "address" + }, + { + "name": "nonce", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "v", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "r", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "s", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "delegates", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPastTotalSupply", + "inputs": [ + { + "name": "blockNumber", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPastVotes", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + }, + { + "name": "blockNumber", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getVotes", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "increaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "addedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "nonces", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "numCheckpoints", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint32", + "internalType": "uint32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "permit", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "deadline", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "v", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "r", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "s", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalSupply", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transfer", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferFromWithPermit", + "inputs": [ + { + "name": "from_", + "type": "address", + "internalType": "address" + }, + { + "name": "to_", + "type": "address", + "internalType": "address" + }, + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "value_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "deadline_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "v_", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "r_", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "s_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DelegateChanged", + "inputs": [ + { + "name": "delegator", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "fromDelegate", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "toDelegate", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DelegateVotesChanged", + "inputs": [ + { + "name": "delegate", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "previousBalance", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newBalance", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + } +] \ No newline at end of file diff --git a/subgraph-build/BurnWrappedAjna/BurnWrappedAjna.wasm b/subgraph-build/BurnWrappedAjna/BurnWrappedAjna.wasm new file mode 100644 index 0000000..2b79f79 Binary files /dev/null and b/subgraph-build/BurnWrappedAjna/BurnWrappedAjna.wasm differ diff --git a/subgraph-build/BurnWrappedAjna/abis/BurnWrappedAjna.json b/subgraph-build/BurnWrappedAjna/abis/BurnWrappedAjna.json new file mode 100644 index 0000000..2e86bed --- /dev/null +++ b/subgraph-build/BurnWrappedAjna/abis/BurnWrappedAjna.json @@ -0,0 +1,460 @@ +[ + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "wrappedToken", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "InvalidWrappedToken", + "type": "error" + }, + { + "inputs": [], + "name": "UnwrapNotAllowed", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "DOMAIN_SEPARATOR", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "depositFor", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "nonces", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "deadline", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "permit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "underlying", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "withdrawTo", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function" + } +] \ No newline at end of file diff --git a/subgraph-build/ERC20Pool/abis/ERC20.json b/subgraph-build/ERC20Pool/abis/ERC20.json new file mode 100644 index 0000000..d83f596 --- /dev/null +++ b/subgraph-build/ERC20Pool/abis/ERC20.json @@ -0,0 +1,288 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "name_", + "type": "string", + "internalType": "string" + }, + { + "name": "symbol_", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "allowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decimals", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "subtractedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "increaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "addedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalSupply", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transfer", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + } +] \ No newline at end of file diff --git a/subgraph-build/ERC20Pool/abis/ERC20Pool.json b/subgraph-build/ERC20Pool/abis/ERC20Pool.json new file mode 100644 index 0000000..9f4f8a7 --- /dev/null +++ b/subgraph-build/ERC20Pool/abis/ERC20Pool.json @@ -0,0 +1,2472 @@ +[ + { + "type": "function", + "name": "addCollateral", + "inputs": [ + { + "name": "amountToAdd_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "addQuoteToken", + "inputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "addedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approveLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approvedTransferors", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketCollateralDust", + "inputs": [ + { + "name": "bucketIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "bucketExchangeRate", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketTake", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "depositTake_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "burnInfo", + "inputs": [ + { + "name": "burnEventEpoch_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "collateralAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "collateralScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "currentBurnEpoch", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "debtInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositIndex", + "inputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositScale", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositSize", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUpToIndex", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUtilization", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "drawDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "amountToBorrow_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralToPledge_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "emasInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashFee", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashLoan", + "inputs": [ + { + "name": "receiver_", + "type": "address", + "internalType": "contract IERC3156FlashBorrower" + }, + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "increaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "inflatorInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "initialize", + "inputs": [ + { + "name": "rate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "interestRateInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "kick", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickReserveAuction", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickerInfo", + "inputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lender_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lpBalance_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositTime_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderKick", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "loanInfo", + "inputs": [ + { + "name": "loanId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "loansInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpAllowance", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "owner_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "allowance_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "maxFlashLoan", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "maxLoan_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "moveQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "fromIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fromBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "movedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "pledgedCollateral", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolType", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "removeCollateral", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "removeQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "repayDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxQuoteTokenAmountToRepay_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralAmountToPull_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralReceiver_", + "type": "address", + "internalType": "address" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amountRepaid_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "reservesInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "revokeLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "settle", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxDepth_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralSettled_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isBorrowerSettled_", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "stampLoan", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "take", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "callee_", + "type": "address", + "internalType": "address" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "collateralTaken_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "takeReserves", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "totalAuctionsInPool", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0Debt", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0DebtInAuction", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferLP", + "inputs": [ + { + "name": "owner_", + "type": "address", + "internalType": "address" + }, + { + "name": "newOwner_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "updateInterest", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdrawBonds", + "inputs": [ + { + "name": "recipient_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "withdrawnAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "AddCollateral", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApproveLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionNFTSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BondWithdrawn", + "inputs": [ + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "reciever", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketBankruptcy", + "inputs": [ + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "lpForfeited", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTake", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTakeLPAwarded", + "inputs": [ + { + "name": "taker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "lpAwardedTaker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedKicker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DecreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DrawDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountBorrowed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPledged", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Flashloan", + "inputs": [ + { + "name": "receiver", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "IncreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "InterestUpdateFailure", + "inputs": [], + "anonymous": false + }, + { + "type": "event", + "name": "Kick", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "debt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bond", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "KickReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LoanStamped", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "from", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "to", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemedFrom", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedTo", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveCollateral", + "inputs": [ + { + "name": "claimer", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RepayDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "quoteRepaid", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPulled", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ResetInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Settle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "settledDebt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Take", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "TransferLP", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "UpdateInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AlreadyInitialized", + "inputs": [] + }, + { + "type": "error", + "name": "AmountLTMinDebt", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotClearable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotTakeable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionPriceGtBucketPrice", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerNotSender", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerOk", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerUnderCollateralized", + "inputs": [] + }, + { + "type": "error", + "name": "BucketBankruptcyBlock", + "inputs": [] + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "CannotMergeToHigherPrice", + "inputs": [] + }, + { + "type": "error", + "name": "DustAmountNotExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanCallbackFailed", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanIncorrectBalance", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanUnavailableForToken", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientCollateral", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLP", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLiquidity", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAllowancesInput", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAmount", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidIndex", + "inputs": [] + }, + { + "type": "error", + "name": "LUPBelowHTP", + "inputs": [] + }, + { + "type": "error", + "name": "LimitIndexExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "MoveToSameIndex", + "inputs": [] + }, + { + "type": "error", + "name": "NoAllowance", + "inputs": [] + }, + { + "type": "error", + "name": "NoAuction", + "inputs": [] + }, + { + "type": "error", + "name": "NoClaim", + "inputs": [] + }, + { + "type": "error", + "name": "NoDebt", + "inputs": [] + }, + { + "type": "error", + "name": "NoReserves", + "inputs": [] + }, + { + "type": "error", + "name": "NoReservesAuction", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__SqrtNegativeInput", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__SqrtOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "denominator", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PriceBelowLUP", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "ReserveAuctionTooSoon", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransferToSameOwner", + "inputs": [] + }, + { + "type": "error", + "name": "TransferorNotApproved", + "inputs": [] + }, + { + "type": "error", + "name": "ZeroDebtToCollateral", + "inputs": [] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC20Pool/abis/ERC721.json b/subgraph-build/ERC20Pool/abis/ERC721.json new file mode 100644 index 0000000..3cd8163 --- /dev/null +++ b/subgraph-build/ERC20Pool/abis/ERC721.json @@ -0,0 +1,348 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "name_", + "type": "string", + "internalType": "string" + }, + { + "name": "symbol_", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getApproved", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isApprovedForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ownerOf", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setApprovalForAll", + "inputs": [ + { + "name": "operator", + "type": "address", + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "supportsInterface", + "inputs": [ + { + "name": "interfaceId", + "type": "bytes4", + "internalType": "bytes4" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "tokenURI", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApprovalForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + } +] \ No newline at end of file diff --git a/subgraph-build/ERC20Pool/abis/PoolInfoUtils.json b/subgraph-build/ERC20Pool/abis/PoolInfoUtils.json new file mode 100644 index 0000000..81ec4bb --- /dev/null +++ b/subgraph-build/ERC20Pool/abis/PoolInfoUtils.json @@ -0,0 +1,789 @@ +[ + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionStatus", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCover_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isCollateralized_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "availableQuoteTokenAmount", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "t0Np_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "thresholdPrice_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "quoteTokens_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "scale_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpb", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpbIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "htp", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "indexToPrice", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "lenderInterestMargin", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lenderInterestMargin_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToCollateral", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToQuoteTokens", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "quoteAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lup", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lupIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "poolLoansInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "loansCount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "maxBorrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "pendingInflator_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "pendingInterestFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolPricesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "hpb_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "hpbIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htpIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lup_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lupIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolReservesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "reserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReservesRemaining_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "auctionPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "timeRemaining_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolUtilizationInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolMinDebtAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolCollateralization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolActualUtilization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolTargetUtilization_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "priceToIndex", + "inputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "BucketPriceOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__CeilOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "denominator", + "type": "uint256", + "internalType": "uint256" + } + ] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC20Pool/abis/PoolInfoUtilsMulticall.json b/subgraph-build/ERC20Pool/abis/PoolInfoUtilsMulticall.json new file mode 100644 index 0000000..edb9cf4 --- /dev/null +++ b/subgraph-build/ERC20Pool/abis/PoolInfoUtilsMulticall.json @@ -0,0 +1,295 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "poolInfoUtils_", + "type": "address", + "internalType": "contract PoolInfoUtils" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "poolBalanceDetails", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "quoteTokenAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "collateralTokenAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "isNFT_", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [ + { + "name": "poolBalanceDetails_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolBalanceDetails", + "components": [ + { + "name": "debt", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "accruedDebt", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtInAuction", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "t0Debt2ToCollateral", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositUpToIndex", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "quoteTokenBalance", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralTokenBalance", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolDetailsMulticall", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolLoansInfo_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolLoansInfo", + "components": [ + { + "name": "poolSize", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "loansCount", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "maxBorrower", + "type": "address", + "internalType": "address" + }, + { + "name": "pendingInflator", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "pendingInterestFactor", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "poolPriceInfo_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolPriceInfo", + "components": [ + { + "name": "hpb", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "hpbIndex", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htp", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htpIndex", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lupIndex", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "poolRatesAndFees_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolRatesAndFees", + "components": [ + { + "name": "lenderInterestMargin", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "borrowFeeRate", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositFeeRate", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "poolReservesInfo_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolReservesInfo", + "components": [ + { + "name": "reserves", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReserves", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReservesRemaining", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "timeRemaining", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "poolUtilizationInfo_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolUtilizationInfo", + "components": [ + { + "name": "poolMinDebtAmount", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolCollateralization", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolActualUtilization", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolTargetUtilization", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolInfoUtils", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract PoolInfoUtils" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolRatesAndFeesMulticall", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lenderInterestMargin", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "borrowFeeRate", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositFeeRate", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + } +] \ No newline at end of file diff --git a/subgraph-build/ERC20PoolFactory/ERC20PoolFactory.wasm b/subgraph-build/ERC20PoolFactory/ERC20PoolFactory.wasm new file mode 100644 index 0000000..c445d6f Binary files /dev/null and b/subgraph-build/ERC20PoolFactory/ERC20PoolFactory.wasm differ diff --git a/subgraph-build/ERC20PoolFactory/abis/ERC20.json b/subgraph-build/ERC20PoolFactory/abis/ERC20.json new file mode 100644 index 0000000..d83f596 --- /dev/null +++ b/subgraph-build/ERC20PoolFactory/abis/ERC20.json @@ -0,0 +1,288 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "name_", + "type": "string", + "internalType": "string" + }, + { + "name": "symbol_", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "allowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decimals", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "subtractedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "increaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "addedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalSupply", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transfer", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + } +] \ No newline at end of file diff --git a/subgraph-build/ERC20PoolFactory/abis/ERC20Pool.json b/subgraph-build/ERC20PoolFactory/abis/ERC20Pool.json new file mode 100644 index 0000000..9f4f8a7 --- /dev/null +++ b/subgraph-build/ERC20PoolFactory/abis/ERC20Pool.json @@ -0,0 +1,2472 @@ +[ + { + "type": "function", + "name": "addCollateral", + "inputs": [ + { + "name": "amountToAdd_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "addQuoteToken", + "inputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "addedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approveLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approvedTransferors", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketCollateralDust", + "inputs": [ + { + "name": "bucketIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "bucketExchangeRate", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketTake", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "depositTake_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "burnInfo", + "inputs": [ + { + "name": "burnEventEpoch_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "collateralAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "collateralScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "currentBurnEpoch", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "debtInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositIndex", + "inputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositScale", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositSize", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUpToIndex", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUtilization", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "drawDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "amountToBorrow_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralToPledge_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "emasInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashFee", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashLoan", + "inputs": [ + { + "name": "receiver_", + "type": "address", + "internalType": "contract IERC3156FlashBorrower" + }, + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "increaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "inflatorInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "initialize", + "inputs": [ + { + "name": "rate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "interestRateInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "kick", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickReserveAuction", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickerInfo", + "inputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lender_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lpBalance_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositTime_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderKick", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "loanInfo", + "inputs": [ + { + "name": "loanId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "loansInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpAllowance", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "owner_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "allowance_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "maxFlashLoan", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "maxLoan_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "moveQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "fromIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fromBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "movedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "pledgedCollateral", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolType", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "removeCollateral", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "removeQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "repayDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxQuoteTokenAmountToRepay_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralAmountToPull_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralReceiver_", + "type": "address", + "internalType": "address" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amountRepaid_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "reservesInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "revokeLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "settle", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxDepth_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralSettled_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isBorrowerSettled_", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "stampLoan", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "take", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "callee_", + "type": "address", + "internalType": "address" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "collateralTaken_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "takeReserves", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "totalAuctionsInPool", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0Debt", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0DebtInAuction", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferLP", + "inputs": [ + { + "name": "owner_", + "type": "address", + "internalType": "address" + }, + { + "name": "newOwner_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "updateInterest", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdrawBonds", + "inputs": [ + { + "name": "recipient_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "withdrawnAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "AddCollateral", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApproveLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionNFTSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BondWithdrawn", + "inputs": [ + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "reciever", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketBankruptcy", + "inputs": [ + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "lpForfeited", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTake", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTakeLPAwarded", + "inputs": [ + { + "name": "taker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "lpAwardedTaker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedKicker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DecreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DrawDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountBorrowed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPledged", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Flashloan", + "inputs": [ + { + "name": "receiver", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "IncreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "InterestUpdateFailure", + "inputs": [], + "anonymous": false + }, + { + "type": "event", + "name": "Kick", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "debt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bond", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "KickReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LoanStamped", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "from", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "to", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemedFrom", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedTo", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveCollateral", + "inputs": [ + { + "name": "claimer", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RepayDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "quoteRepaid", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPulled", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ResetInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Settle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "settledDebt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Take", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "TransferLP", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "UpdateInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AlreadyInitialized", + "inputs": [] + }, + { + "type": "error", + "name": "AmountLTMinDebt", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotClearable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotTakeable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionPriceGtBucketPrice", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerNotSender", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerOk", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerUnderCollateralized", + "inputs": [] + }, + { + "type": "error", + "name": "BucketBankruptcyBlock", + "inputs": [] + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "CannotMergeToHigherPrice", + "inputs": [] + }, + { + "type": "error", + "name": "DustAmountNotExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanCallbackFailed", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanIncorrectBalance", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanUnavailableForToken", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientCollateral", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLP", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLiquidity", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAllowancesInput", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAmount", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidIndex", + "inputs": [] + }, + { + "type": "error", + "name": "LUPBelowHTP", + "inputs": [] + }, + { + "type": "error", + "name": "LimitIndexExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "MoveToSameIndex", + "inputs": [] + }, + { + "type": "error", + "name": "NoAllowance", + "inputs": [] + }, + { + "type": "error", + "name": "NoAuction", + "inputs": [] + }, + { + "type": "error", + "name": "NoClaim", + "inputs": [] + }, + { + "type": "error", + "name": "NoDebt", + "inputs": [] + }, + { + "type": "error", + "name": "NoReserves", + "inputs": [] + }, + { + "type": "error", + "name": "NoReservesAuction", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__SqrtNegativeInput", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__SqrtOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "denominator", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PriceBelowLUP", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "ReserveAuctionTooSoon", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransferToSameOwner", + "inputs": [] + }, + { + "type": "error", + "name": "TransferorNotApproved", + "inputs": [] + }, + { + "type": "error", + "name": "ZeroDebtToCollateral", + "inputs": [] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC20PoolFactory/abis/ERC20PoolFactory.json b/subgraph-build/ERC20PoolFactory/abis/ERC20PoolFactory.json new file mode 100644 index 0000000..5a6f2fc --- /dev/null +++ b/subgraph-build/ERC20PoolFactory/abis/ERC20PoolFactory.json @@ -0,0 +1,236 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "ajna_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "ERC20_NON_SUBSET_HASH", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "MAX_RATE", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "MIN_RATE", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ajna", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "deployPool", + "inputs": [ + { + "name": "collateral_", + "type": "address", + "internalType": "address" + }, + { + "name": "quote_", + "type": "address", + "internalType": "address" + }, + { + "name": "interestRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "deployedPools", + "inputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "deployedPoolsList", + "inputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getDeployedPoolsList", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address[]", + "internalType": "address[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getNumberOfDeployedPools", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "implementation", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract ERC20Pool" + } + ], + "stateMutability": "view" + }, + { + "type": "event", + "name": "PoolCreated", + "inputs": [ + { + "name": "pool_", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "subsetHash_", + "type": "bytes32", + "indexed": false, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "CreateFail", + "inputs": [] + }, + { + "type": "error", + "name": "DecimalsNotCompliant", + "inputs": [] + }, + { + "type": "error", + "name": "DeployQuoteCollateralSameToken", + "inputs": [] + }, + { + "type": "error", + "name": "DeployWithZeroAddress", + "inputs": [] + }, + { + "type": "error", + "name": "PoolAlreadyExists", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "PoolInterestRateInvalid", + "inputs": [] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC20PoolFactory/abis/PoolInfoUtils.json b/subgraph-build/ERC20PoolFactory/abis/PoolInfoUtils.json new file mode 100644 index 0000000..81ec4bb --- /dev/null +++ b/subgraph-build/ERC20PoolFactory/abis/PoolInfoUtils.json @@ -0,0 +1,789 @@ +[ + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionStatus", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCover_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isCollateralized_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "availableQuoteTokenAmount", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "t0Np_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "thresholdPrice_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "quoteTokens_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "scale_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpb", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpbIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "htp", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "indexToPrice", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "lenderInterestMargin", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lenderInterestMargin_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToCollateral", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToQuoteTokens", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "quoteAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lup", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lupIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "poolLoansInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "loansCount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "maxBorrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "pendingInflator_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "pendingInterestFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolPricesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "hpb_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "hpbIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htpIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lup_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lupIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolReservesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "reserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReservesRemaining_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "auctionPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "timeRemaining_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolUtilizationInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolMinDebtAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolCollateralization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolActualUtilization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolTargetUtilization_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "priceToIndex", + "inputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "BucketPriceOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__CeilOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "denominator", + "type": "uint256", + "internalType": "uint256" + } + ] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721Pool/abis/ERC20.json b/subgraph-build/ERC721Pool/abis/ERC20.json new file mode 100644 index 0000000..d83f596 --- /dev/null +++ b/subgraph-build/ERC721Pool/abis/ERC20.json @@ -0,0 +1,288 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "name_", + "type": "string", + "internalType": "string" + }, + { + "name": "symbol_", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "allowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decimals", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "subtractedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "increaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "addedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalSupply", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transfer", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721Pool/abis/ERC20Pool.json b/subgraph-build/ERC721Pool/abis/ERC20Pool.json new file mode 100644 index 0000000..9f4f8a7 --- /dev/null +++ b/subgraph-build/ERC721Pool/abis/ERC20Pool.json @@ -0,0 +1,2472 @@ +[ + { + "type": "function", + "name": "addCollateral", + "inputs": [ + { + "name": "amountToAdd_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "addQuoteToken", + "inputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "addedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approveLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approvedTransferors", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketCollateralDust", + "inputs": [ + { + "name": "bucketIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "bucketExchangeRate", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketTake", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "depositTake_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "burnInfo", + "inputs": [ + { + "name": "burnEventEpoch_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "collateralAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "collateralScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "currentBurnEpoch", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "debtInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositIndex", + "inputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositScale", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositSize", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUpToIndex", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUtilization", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "drawDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "amountToBorrow_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralToPledge_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "emasInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashFee", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashLoan", + "inputs": [ + { + "name": "receiver_", + "type": "address", + "internalType": "contract IERC3156FlashBorrower" + }, + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "increaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "inflatorInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "initialize", + "inputs": [ + { + "name": "rate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "interestRateInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "kick", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickReserveAuction", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickerInfo", + "inputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lender_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lpBalance_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositTime_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderKick", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "loanInfo", + "inputs": [ + { + "name": "loanId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "loansInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpAllowance", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "owner_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "allowance_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "maxFlashLoan", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "maxLoan_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "moveQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "fromIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fromBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "movedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "pledgedCollateral", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolType", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "removeCollateral", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "removeQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "repayDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxQuoteTokenAmountToRepay_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralAmountToPull_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralReceiver_", + "type": "address", + "internalType": "address" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amountRepaid_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "reservesInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "revokeLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "settle", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxDepth_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralSettled_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isBorrowerSettled_", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "stampLoan", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "take", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "callee_", + "type": "address", + "internalType": "address" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "collateralTaken_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "takeReserves", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "totalAuctionsInPool", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0Debt", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0DebtInAuction", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferLP", + "inputs": [ + { + "name": "owner_", + "type": "address", + "internalType": "address" + }, + { + "name": "newOwner_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "updateInterest", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdrawBonds", + "inputs": [ + { + "name": "recipient_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "withdrawnAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "AddCollateral", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApproveLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionNFTSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BondWithdrawn", + "inputs": [ + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "reciever", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketBankruptcy", + "inputs": [ + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "lpForfeited", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTake", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTakeLPAwarded", + "inputs": [ + { + "name": "taker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "lpAwardedTaker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedKicker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DecreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DrawDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountBorrowed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPledged", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Flashloan", + "inputs": [ + { + "name": "receiver", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "IncreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "InterestUpdateFailure", + "inputs": [], + "anonymous": false + }, + { + "type": "event", + "name": "Kick", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "debt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bond", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "KickReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LoanStamped", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "from", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "to", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemedFrom", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedTo", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveCollateral", + "inputs": [ + { + "name": "claimer", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RepayDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "quoteRepaid", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPulled", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ResetInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Settle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "settledDebt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Take", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "TransferLP", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "UpdateInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AlreadyInitialized", + "inputs": [] + }, + { + "type": "error", + "name": "AmountLTMinDebt", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotClearable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotTakeable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionPriceGtBucketPrice", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerNotSender", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerOk", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerUnderCollateralized", + "inputs": [] + }, + { + "type": "error", + "name": "BucketBankruptcyBlock", + "inputs": [] + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "CannotMergeToHigherPrice", + "inputs": [] + }, + { + "type": "error", + "name": "DustAmountNotExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanCallbackFailed", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanIncorrectBalance", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanUnavailableForToken", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientCollateral", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLP", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLiquidity", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAllowancesInput", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAmount", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidIndex", + "inputs": [] + }, + { + "type": "error", + "name": "LUPBelowHTP", + "inputs": [] + }, + { + "type": "error", + "name": "LimitIndexExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "MoveToSameIndex", + "inputs": [] + }, + { + "type": "error", + "name": "NoAllowance", + "inputs": [] + }, + { + "type": "error", + "name": "NoAuction", + "inputs": [] + }, + { + "type": "error", + "name": "NoClaim", + "inputs": [] + }, + { + "type": "error", + "name": "NoDebt", + "inputs": [] + }, + { + "type": "error", + "name": "NoReserves", + "inputs": [] + }, + { + "type": "error", + "name": "NoReservesAuction", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__SqrtNegativeInput", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__SqrtOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "denominator", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PriceBelowLUP", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "ReserveAuctionTooSoon", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransferToSameOwner", + "inputs": [] + }, + { + "type": "error", + "name": "TransferorNotApproved", + "inputs": [] + }, + { + "type": "error", + "name": "ZeroDebtToCollateral", + "inputs": [] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721Pool/abis/ERC721.json b/subgraph-build/ERC721Pool/abis/ERC721.json new file mode 100644 index 0000000..3cd8163 --- /dev/null +++ b/subgraph-build/ERC721Pool/abis/ERC721.json @@ -0,0 +1,348 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "name_", + "type": "string", + "internalType": "string" + }, + { + "name": "symbol_", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getApproved", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isApprovedForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ownerOf", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setApprovalForAll", + "inputs": [ + { + "name": "operator", + "type": "address", + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "supportsInterface", + "inputs": [ + { + "name": "interfaceId", + "type": "bytes4", + "internalType": "bytes4" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "tokenURI", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApprovalForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721Pool/abis/ERC721Pool.json b/subgraph-build/ERC721Pool/abis/ERC721Pool.json new file mode 100644 index 0000000..d8730b0 --- /dev/null +++ b/subgraph-build/ERC721Pool/abis/ERC721Pool.json @@ -0,0 +1,2562 @@ +[ + { + "type": "function", + "name": "addCollateral", + "inputs": [ + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "addQuoteToken", + "inputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "addedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approveLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approvedTransferors", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerTokenIds", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketExchangeRate", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketTake", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "depositTake_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "bucketTokenIds", + "inputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "burnInfo", + "inputs": [ + { + "name": "burnEventEpoch_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "collateralAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "currentBurnEpoch", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "debtInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositIndex", + "inputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositScale", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositSize", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUpToIndex", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUtilization", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "drawDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "amountToBorrow_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "tokenIdsToPledge_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "emasInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashFee", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashLoan", + "inputs": [ + { + "name": "receiver_", + "type": "address", + "internalType": "contract IERC3156FlashBorrower" + }, + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getBorrowerTokenIds", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getBucketTokenIds", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "increaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "inflatorInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "initialize", + "inputs": [ + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "rate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "interestRateInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isSubset", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "kick", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickReserveAuction", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickerInfo", + "inputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lender_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lpBalance_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositTime_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderKick", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "loanInfo", + "inputs": [ + { + "name": "loanId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "loansInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpAllowance", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "owner_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "allowance_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "maxFlashLoan", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "maxLoan_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "mergeOrRemoveCollateral", + "inputs": [ + { + "name": "removalIndexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "noOfNFTsToRemove_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralMerged_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "moveQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "fromIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fromBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "movedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "pledgedCollateral", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolType", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "removeCollateral", + "inputs": [ + { + "name": "noOfNFTsToRemove_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "removeQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "repayDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxQuoteTokenAmountToRepay_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "noOfNFTsToPull_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralReceiver_", + "type": "address", + "internalType": "address" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amountRepaid_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "reservesInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "revokeLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "settle", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxDepth_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralSettled_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isBorrowerSettled_", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "stampLoan", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "take", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "callee_", + "type": "address", + "internalType": "address" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "collateralTaken_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "takeReserves", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "tokenIdsAllowed", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalAuctionsInPool", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0Debt", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0DebtInAuction", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferLP", + "inputs": [ + { + "name": "owner_", + "type": "address", + "internalType": "address" + }, + { + "name": "newOwner_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "updateInterest", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdrawBonds", + "inputs": [ + { + "name": "recipient_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "withdrawnAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "AddCollateralNFT", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "tokenIds", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApproveLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionNFTSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BondWithdrawn", + "inputs": [ + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "reciever", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketBankruptcy", + "inputs": [ + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "lpForfeited", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTake", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTakeLPAwarded", + "inputs": [ + { + "name": "taker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "lpAwardedTaker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedKicker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DecreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DrawDebtNFT", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountBorrowed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "tokenIdsPledged", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Flashloan", + "inputs": [ + { + "name": "receiver", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "IncreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "InterestUpdateFailure", + "inputs": [], + "anonymous": false + }, + { + "type": "event", + "name": "Kick", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "debt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bond", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "KickReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LoanStamped", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MergeOrRemoveCollateralNFT", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateralMerged", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "toIndexLps", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "from", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "to", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemedFrom", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedTo", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveCollateral", + "inputs": [ + { + "name": "claimer", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RepayDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "quoteRepaid", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPulled", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ResetInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Settle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "settledDebt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Take", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "TransferLP", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "UpdateInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AlreadyInitialized", + "inputs": [] + }, + { + "type": "error", + "name": "AmountLTMinDebt", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotClearable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotTakeable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionPriceGtBucketPrice", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerNotSender", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerOk", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerUnderCollateralized", + "inputs": [] + }, + { + "type": "error", + "name": "BucketBankruptcyBlock", + "inputs": [] + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "CannotMergeToHigherPrice", + "inputs": [] + }, + { + "type": "error", + "name": "DustAmountNotExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanCallbackFailed", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanIncorrectBalance", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanUnavailableForToken", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientCollateral", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLP", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLiquidity", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAllowancesInput", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAmount", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidIndex", + "inputs": [] + }, + { + "type": "error", + "name": "LUPBelowHTP", + "inputs": [] + }, + { + "type": "error", + "name": "LimitIndexExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "MoveToSameIndex", + "inputs": [] + }, + { + "type": "error", + "name": "NoAllowance", + "inputs": [] + }, + { + "type": "error", + "name": "NoAuction", + "inputs": [] + }, + { + "type": "error", + "name": "NoClaim", + "inputs": [] + }, + { + "type": "error", + "name": "NoDebt", + "inputs": [] + }, + { + "type": "error", + "name": "NoReserves", + "inputs": [] + }, + { + "type": "error", + "name": "NoReservesAuction", + "inputs": [] + }, + { + "type": "error", + "name": "OnlySubset", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PriceBelowLUP", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "ReserveAuctionTooSoon", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransferToSameOwner", + "inputs": [] + }, + { + "type": "error", + "name": "TransferorNotApproved", + "inputs": [] + }, + { + "type": "error", + "name": "ZeroDebtToCollateral", + "inputs": [] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721Pool/abis/PoolInfoUtils.json b/subgraph-build/ERC721Pool/abis/PoolInfoUtils.json new file mode 100644 index 0000000..81ec4bb --- /dev/null +++ b/subgraph-build/ERC721Pool/abis/PoolInfoUtils.json @@ -0,0 +1,789 @@ +[ + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionStatus", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCover_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isCollateralized_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "availableQuoteTokenAmount", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "t0Np_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "thresholdPrice_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "quoteTokens_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "scale_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpb", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpbIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "htp", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "indexToPrice", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "lenderInterestMargin", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lenderInterestMargin_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToCollateral", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToQuoteTokens", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "quoteAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lup", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lupIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "poolLoansInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "loansCount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "maxBorrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "pendingInflator_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "pendingInterestFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolPricesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "hpb_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "hpbIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htpIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lup_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lupIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolReservesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "reserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReservesRemaining_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "auctionPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "timeRemaining_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolUtilizationInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolMinDebtAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolCollateralization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolActualUtilization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolTargetUtilization_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "priceToIndex", + "inputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "BucketPriceOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__CeilOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "denominator", + "type": "uint256", + "internalType": "uint256" + } + ] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721Pool/abis/PoolInfoUtilsMulticall.json b/subgraph-build/ERC721Pool/abis/PoolInfoUtilsMulticall.json new file mode 100644 index 0000000..edb9cf4 --- /dev/null +++ b/subgraph-build/ERC721Pool/abis/PoolInfoUtilsMulticall.json @@ -0,0 +1,295 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "poolInfoUtils_", + "type": "address", + "internalType": "contract PoolInfoUtils" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "poolBalanceDetails", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "quoteTokenAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "collateralTokenAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "isNFT_", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [ + { + "name": "poolBalanceDetails_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolBalanceDetails", + "components": [ + { + "name": "debt", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "accruedDebt", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtInAuction", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "t0Debt2ToCollateral", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositUpToIndex", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "quoteTokenBalance", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralTokenBalance", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolDetailsMulticall", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolLoansInfo_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolLoansInfo", + "components": [ + { + "name": "poolSize", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "loansCount", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "maxBorrower", + "type": "address", + "internalType": "address" + }, + { + "name": "pendingInflator", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "pendingInterestFactor", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "poolPriceInfo_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolPriceInfo", + "components": [ + { + "name": "hpb", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "hpbIndex", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htp", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htpIndex", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lupIndex", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "poolRatesAndFees_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolRatesAndFees", + "components": [ + { + "name": "lenderInterestMargin", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "borrowFeeRate", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositFeeRate", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "poolReservesInfo_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolReservesInfo", + "components": [ + { + "name": "reserves", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReserves", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReservesRemaining", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "timeRemaining", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "poolUtilizationInfo_", + "type": "tuple", + "internalType": "struct PoolInfoUtilsMulticall.PoolUtilizationInfo", + "components": [ + { + "name": "poolMinDebtAmount", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolCollateralization", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolActualUtilization", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolTargetUtilization", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolInfoUtils", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract PoolInfoUtils" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolRatesAndFeesMulticall", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lenderInterestMargin", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "borrowFeeRate", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositFeeRate", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721PoolFactory/ERC721PoolFactory.wasm b/subgraph-build/ERC721PoolFactory/ERC721PoolFactory.wasm new file mode 100644 index 0000000..e3f77d7 Binary files /dev/null and b/subgraph-build/ERC721PoolFactory/ERC721PoolFactory.wasm differ diff --git a/subgraph-build/ERC721PoolFactory/abis/ERC20.json b/subgraph-build/ERC721PoolFactory/abis/ERC20.json new file mode 100644 index 0000000..d83f596 --- /dev/null +++ b/subgraph-build/ERC721PoolFactory/abis/ERC20.json @@ -0,0 +1,288 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "name_", + "type": "string", + "internalType": "string" + }, + { + "name": "symbol_", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "allowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decimals", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "subtractedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "increaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "addedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalSupply", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transfer", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721PoolFactory/abis/ERC721.json b/subgraph-build/ERC721PoolFactory/abis/ERC721.json new file mode 100644 index 0000000..3cd8163 --- /dev/null +++ b/subgraph-build/ERC721PoolFactory/abis/ERC721.json @@ -0,0 +1,348 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "name_", + "type": "string", + "internalType": "string" + }, + { + "name": "symbol_", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getApproved", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isApprovedForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ownerOf", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setApprovalForAll", + "inputs": [ + { + "name": "operator", + "type": "address", + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "supportsInterface", + "inputs": [ + { + "name": "interfaceId", + "type": "bytes4", + "internalType": "bytes4" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "tokenURI", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApprovalForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721PoolFactory/abis/ERC721Pool.json b/subgraph-build/ERC721PoolFactory/abis/ERC721Pool.json new file mode 100644 index 0000000..d8730b0 --- /dev/null +++ b/subgraph-build/ERC721PoolFactory/abis/ERC721Pool.json @@ -0,0 +1,2562 @@ +[ + { + "type": "function", + "name": "addCollateral", + "inputs": [ + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "addQuoteToken", + "inputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "addedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approveLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approvedTransferors", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerTokenIds", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketExchangeRate", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketTake", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "depositTake_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "bucketTokenIds", + "inputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "burnInfo", + "inputs": [ + { + "name": "burnEventEpoch_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "collateralAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "currentBurnEpoch", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "debtInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositIndex", + "inputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositScale", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositSize", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUpToIndex", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositUtilization", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "drawDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "amountToBorrow_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "tokenIdsToPledge_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "emasInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashFee", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "flashLoan", + "inputs": [ + { + "name": "receiver_", + "type": "address", + "internalType": "contract IERC3156FlashBorrower" + }, + { + "name": "token_", + "type": "address", + "internalType": "address" + }, + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getBorrowerTokenIds", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getBucketTokenIds", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "increaseLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "amounts_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "inflatorInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "initialize", + "inputs": [ + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "rate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "interestRateInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isSubset", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "kick", + "inputs": [ + { + "name": "borrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickReserveAuction", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "kickerInfo", + "inputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderInfo", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lender_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lpBalance_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "depositTime_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lenderKick", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "npLimitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "loanInfo", + "inputs": [ + { + "name": "loanId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "loansInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpAllowance", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "owner_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "allowance_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "maxFlashLoan", + "inputs": [ + { + "name": "token_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "maxLoan_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "mergeOrRemoveCollateral", + "inputs": [ + { + "name": "removalIndexes_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "noOfNFTsToRemove_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralMerged_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "moveQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "fromIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fromBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toBucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "movedAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "pledgedCollateral", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolType", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "quoteTokenScale", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "removeCollateral", + "inputs": [ + { + "name": "noOfNFTsToRemove_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "removeQuoteToken", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "removedAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "redeemedLP_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "repayDebt", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxQuoteTokenAmountToRepay_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "noOfNFTsToPull_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateralReceiver_", + "type": "address", + "internalType": "address" + }, + { + "name": "limitIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amountRepaid_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "reservesInfo", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "revokeLPAllowance", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeLPTransferors", + "inputs": [ + { + "name": "transferors_", + "type": "address[]", + "internalType": "address[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "settle", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxDepth_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralSettled_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isBorrowerSettled_", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "stampLoan", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "take", + "inputs": [ + { + "name": "borrowerAddress_", + "type": "address", + "internalType": "address" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "callee_", + "type": "address", + "internalType": "address" + }, + { + "name": "data_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "collateralTaken_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "takeReserves", + "inputs": [ + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "tokenIdsAllowed", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalAuctionsInPool", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0Debt", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalT0DebtInAuction", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferLP", + "inputs": [ + { + "name": "owner_", + "type": "address", + "internalType": "address" + }, + { + "name": "newOwner_", + "type": "address", + "internalType": "address" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "updateInterest", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdrawBonds", + "inputs": [ + { + "name": "recipient_", + "type": "address", + "internalType": "address" + }, + { + "name": "maxAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "withdrawnAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "AddCollateralNFT", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "tokenIds", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwarded", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApproveLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionNFTSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AuctionSettle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BondWithdrawn", + "inputs": [ + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "reciever", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketBankruptcy", + "inputs": [ + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "lpForfeited", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTake", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "BucketTakeLPAwarded", + "inputs": [ + { + "name": "taker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "kicker", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "lpAwardedTaker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedKicker", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DecreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DrawDebtNFT", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountBorrowed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "tokenIdsPledged", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Flashloan", + "inputs": [ + { + "name": "receiver", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "IncreaseLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "amounts", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "InterestUpdateFailure", + "inputs": [], + "anonymous": false + }, + { + "type": "event", + "name": "Kick", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "debt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bond", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "KickReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LoanStamped", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MergeOrRemoveCollateralNFT", + "inputs": [ + { + "name": "actor", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "collateralMerged", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "toIndexLps", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "from", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "to", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemedFrom", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedTo", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveCollateral", + "inputs": [ + { + "name": "claimer", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RemoveQuoteToken", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "index", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RepayDebt", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "quoteRepaid", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateralPulled", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lup", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ReserveAuction", + "inputs": [ + { + "name": "claimableReservesRemaining", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "auctionPrice", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "currentBurnEpoch", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ResetInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPAllowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RevokeLPTransferors", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "transferors", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Settle", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "settledDebt", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Take", + "inputs": [ + { + "name": "borrower", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "collateral", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "bondChange", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "isReward", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "TransferLP", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "lp", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "UpdateInterestRate", + "inputs": [ + { + "name": "oldRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newRate", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AddAboveAuctionPrice", + "inputs": [] + }, + { + "type": "error", + "name": "AlreadyInitialized", + "inputs": [] + }, + { + "type": "error", + "name": "AmountLTMinDebt", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionActive", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotClearable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotCleared", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionNotTakeable", + "inputs": [] + }, + { + "type": "error", + "name": "AuctionPriceGtBucketPrice", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerNotSender", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerOk", + "inputs": [] + }, + { + "type": "error", + "name": "BorrowerUnderCollateralized", + "inputs": [] + }, + { + "type": "error", + "name": "BucketBankruptcyBlock", + "inputs": [] + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "CannotMergeToHigherPrice", + "inputs": [] + }, + { + "type": "error", + "name": "DustAmountNotExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanCallbackFailed", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanIncorrectBalance", + "inputs": [] + }, + { + "type": "error", + "name": "FlashloanUnavailableForToken", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientCollateral", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLP", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientLiquidity", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAllowancesInput", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidAmount", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidIndex", + "inputs": [] + }, + { + "type": "error", + "name": "LUPBelowHTP", + "inputs": [] + }, + { + "type": "error", + "name": "LimitIndexExceeded", + "inputs": [] + }, + { + "type": "error", + "name": "MoveToSameIndex", + "inputs": [] + }, + { + "type": "error", + "name": "NoAllowance", + "inputs": [] + }, + { + "type": "error", + "name": "NoAuction", + "inputs": [] + }, + { + "type": "error", + "name": "NoClaim", + "inputs": [] + }, + { + "type": "error", + "name": "NoDebt", + "inputs": [] + }, + { + "type": "error", + "name": "NoReserves", + "inputs": [] + }, + { + "type": "error", + "name": "NoReservesAuction", + "inputs": [] + }, + { + "type": "error", + "name": "OnlySubset", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PriceBelowLUP", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "RemoveDepositLockedByAuctionDebt", + "inputs": [] + }, + { + "type": "error", + "name": "ReserveAuctionTooSoon", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransactionExpired", + "inputs": [] + }, + { + "type": "error", + "name": "TransferToSameOwner", + "inputs": [] + }, + { + "type": "error", + "name": "TransferorNotApproved", + "inputs": [] + }, + { + "type": "error", + "name": "ZeroDebtToCollateral", + "inputs": [] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721PoolFactory/abis/ERC721PoolFactory.json b/subgraph-build/ERC721PoolFactory/abis/ERC721PoolFactory.json new file mode 100644 index 0000000..35d1100 --- /dev/null +++ b/subgraph-build/ERC721PoolFactory/abis/ERC721PoolFactory.json @@ -0,0 +1,299 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "ajna_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "ERC721_NON_SUBSET_HASH", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "MAX_RATE", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "MIN_RATE", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ajna", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "deployPool", + "inputs": [ + { + "name": "collateral_", + "type": "address", + "internalType": "address" + }, + { + "name": "quote_", + "type": "address", + "internalType": "address" + }, + { + "name": "interestRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "deployPool", + "inputs": [ + { + "name": "collateral_", + "type": "address", + "internalType": "address" + }, + { + "name": "quote_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "interestRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "deployedPools", + "inputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "deployedPoolsList", + "inputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getDeployedPoolsList", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address[]", + "internalType": "address[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getNFTSubsetHash", + "inputs": [ + { + "name": "tokenIds_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getNumberOfDeployedPools", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "implementation", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract ERC721Pool" + } + ], + "stateMutability": "view" + }, + { + "type": "event", + "name": "PoolCreated", + "inputs": [ + { + "name": "pool_", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "subsetHash_", + "type": "bytes32", + "indexed": false, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "CreateFail", + "inputs": [] + }, + { + "type": "error", + "name": "DecimalsNotCompliant", + "inputs": [] + }, + { + "type": "error", + "name": "DeployQuoteCollateralSameToken", + "inputs": [] + }, + { + "type": "error", + "name": "DeployWithZeroAddress", + "inputs": [] + }, + { + "type": "error", + "name": "NFTNotSupported", + "inputs": [] + }, + { + "type": "error", + "name": "PoolAlreadyExists", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "PoolInterestRateInvalid", + "inputs": [] + }, + { + "type": "error", + "name": "TokenIdSubsetInvalid", + "inputs": [] + } +] \ No newline at end of file diff --git a/subgraph-build/ERC721PoolFactory/abis/PoolInfoUtils.json b/subgraph-build/ERC721PoolFactory/abis/PoolInfoUtils.json new file mode 100644 index 0000000..81ec4bb --- /dev/null +++ b/subgraph-build/ERC721PoolFactory/abis/PoolInfoUtils.json @@ -0,0 +1,789 @@ +[ + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionStatus", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCover_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isCollateralized_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "availableQuoteTokenAmount", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "t0Np_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "thresholdPrice_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "quoteTokens_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "scale_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpb", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpbIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "htp", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "indexToPrice", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "lenderInterestMargin", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lenderInterestMargin_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToCollateral", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToQuoteTokens", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "quoteAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lup", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lupIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "poolLoansInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "loansCount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "maxBorrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "pendingInflator_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "pendingInterestFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolPricesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "hpb_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "hpbIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htpIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lup_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lupIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolReservesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "reserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReservesRemaining_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "auctionPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "timeRemaining_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolUtilizationInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolMinDebtAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolCollateralization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolActualUtilization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolTargetUtilization_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "priceToIndex", + "inputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "BucketPriceOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__CeilOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "denominator", + "type": "uint256", + "internalType": "uint256" + } + ] + } +] \ No newline at end of file diff --git a/subgraph-build/GrantFund/GrantFund.wasm b/subgraph-build/GrantFund/GrantFund.wasm new file mode 100644 index 0000000..e8badc5 Binary files /dev/null and b/subgraph-build/GrantFund/GrantFund.wasm differ diff --git a/subgraph-build/GrantFund/abis/GrantFund.json b/subgraph-build/GrantFund/abis/GrantFund.json new file mode 100644 index 0000000..097ca75 --- /dev/null +++ b/subgraph-build/GrantFund/abis/GrantFund.json @@ -0,0 +1,1031 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "ajnaToken_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "_voterInfo", + "inputs": [ + { + "name": "distributionId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "voter", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "fundingVotingPower", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "fundingRemainingVotingPower", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "screeningVotesCast", + "type": "uint248", + "internalType": "uint248" + }, + { + "name": "hasClaimedReward", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ajnaTokenAddress", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "claimDelegateReward", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "outputs": [ + { + "name": "rewardClaimed_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "execute", + "inputs": [ + { + "name": "targets_", + "type": "address[]", + "internalType": "address[]" + }, + { + "name": "values_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "calldatas_", + "type": "bytes[]", + "internalType": "bytes[]" + }, + { + "name": "descriptionHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "fundTreasury", + "inputs": [ + { + "name": "fundingAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "fundingVote", + "inputs": [ + { + "name": "voteParams_", + "type": "tuple[]", + "internalType": "struct IGrantFundState.FundingVoteParams[]", + "components": [ + { + "name": "proposalId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "votesUsed", + "type": "int256", + "internalType": "int256" + } + ] + } + ], + "outputs": [ + { + "name": "votesCast_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getChallengeStageStartBlock", + "inputs": [ + { + "name": "endBlock_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getDelegateReward", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "voter_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "rewards_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getDescriptionHash", + "inputs": [ + { + "name": "description_", + "type": "string", + "internalType": "string" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getDistributionId", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint24", + "internalType": "uint24" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getDistributionPeriodInfo", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "outputs": [ + { + "name": "", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "", + "type": "uint48", + "internalType": "uint48" + }, + { + "name": "", + "type": "uint48", + "internalType": "uint48" + }, + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getFundedProposalSlate", + "inputs": [ + { + "name": "slateHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getFundingStageEndBlock", + "inputs": [ + { + "name": "startBlock_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getFundingVotesCast", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "tuple[]", + "internalType": "struct IGrantFundState.FundingVoteParams[]", + "components": [ + { + "name": "proposalId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "votesUsed", + "type": "int256", + "internalType": "int256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getHasClaimedRewards", + "inputs": [ + { + "name": "distributionId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getProposalInfo", + "inputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "int128", + "internalType": "int128" + }, + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getScreeningStageEndBlock", + "inputs": [ + { + "name": "startBlock_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getScreeningVotesCast", + "inputs": [ + { + "name": "distributionId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getSlateHash", + "inputs": [ + { + "name": "proposalIds_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getStage", + "inputs": [], + "outputs": [ + { + "name": "stage_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getTopTenProposals", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getVoterInfo", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "uint128", + "internalType": "uint128" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getVotesFunding", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "votes_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getVotesScreening", + "inputs": [ + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + }, + { + "name": "account_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "votes_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hashProposal", + "inputs": [ + { + "name": "targets_", + "type": "address[]", + "internalType": "address[]" + }, + { + "name": "values_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "calldatas_", + "type": "bytes[]", + "internalType": "bytes[]" + }, + { + "name": "descriptionHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "propose", + "inputs": [ + { + "name": "targets_", + "type": "address[]", + "internalType": "address[]" + }, + { + "name": "values_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "calldatas_", + "type": "bytes[]", + "internalType": "bytes[]" + }, + { + "name": "description_", + "type": "string", + "internalType": "string" + } + ], + "outputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "screeningVote", + "inputs": [ + { + "name": "voteParams_", + "type": "tuple[]", + "internalType": "struct IGrantFundState.ScreeningVoteParams[]", + "components": [ + { + "name": "proposalId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "votes", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "outputs": [ + { + "name": "votesCast_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "startNewDistributionPeriod", + "inputs": [], + "outputs": [ + { + "name": "newDistributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "state", + "inputs": [ + { + "name": "proposalId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "enum IGrantFundState.ProposalState" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "treasury", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "updateSlate", + "inputs": [ + { + "name": "proposalIds_", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "distributionId_", + "type": "uint24", + "internalType": "uint24" + } + ], + "outputs": [ + { + "name": "newTopSlate_", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "DelegateRewardClaimed", + "inputs": [ + { + "name": "delegateeAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "distributionId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "rewardClaimed", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DistributionPeriodStarted", + "inputs": [ + { + "name": "distributionId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "startBlock", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "endBlock", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "FundTreasury", + "inputs": [ + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "treasuryBalance", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "FundedSlateUpdated", + "inputs": [ + { + "name": "distributionId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "fundedSlateHash", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ProposalCreated", + "inputs": [ + { + "name": "proposalId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "proposer", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "targets", + "type": "address[]", + "indexed": false, + "internalType": "address[]" + }, + { + "name": "values", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "signatures", + "type": "string[]", + "indexed": false, + "internalType": "string[]" + }, + { + "name": "calldatas", + "type": "bytes[]", + "indexed": false, + "internalType": "bytes[]" + }, + { + "name": "startBlock", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "endBlock", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "description", + "type": "string", + "indexed": false, + "internalType": "string" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ProposalExecuted", + "inputs": [ + { + "name": "proposalId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "VoteCast", + "inputs": [ + { + "name": "voter", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "proposalId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "support", + "type": "uint8", + "indexed": false, + "internalType": "uint8" + }, + { + "name": "weight", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "reason", + "type": "string", + "indexed": false, + "internalType": "string" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "DelegateRewardInvalid", + "inputs": [] + }, + { + "type": "error", + "name": "DistributionPeriodStillActive", + "inputs": [] + }, + { + "type": "error", + "name": "ExecuteProposalInvalid", + "inputs": [] + }, + { + "type": "error", + "name": "FundingVoteWrongDirection", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientRemainingVotingPower", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientVotingPower", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidProposal", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidProposalSlate", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidVote", + "inputs": [] + }, + { + "type": "error", + "name": "ProposalAlreadyExists", + "inputs": [] + }, + { + "type": "error", + "name": "ProposalNotSuccessful", + "inputs": [] + }, + { + "type": "error", + "name": "RewardAlreadyClaimed", + "inputs": [] + }, + { + "type": "error", + "name": "ScreeningPeriodEnded", + "inputs": [] + } +] \ No newline at end of file diff --git a/subgraph-build/PositionManager/PositionManager.wasm b/subgraph-build/PositionManager/PositionManager.wasm new file mode 100644 index 0000000..c2f0273 Binary files /dev/null and b/subgraph-build/PositionManager/PositionManager.wasm differ diff --git a/subgraph-build/PositionManager/abis/ERC721.json b/subgraph-build/PositionManager/abis/ERC721.json new file mode 100644 index 0000000..3cd8163 --- /dev/null +++ b/subgraph-build/PositionManager/abis/ERC721.json @@ -0,0 +1,348 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "name_", + "type": "string", + "internalType": "string" + }, + { + "name": "symbol_", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getApproved", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isApprovedForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ownerOf", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setApprovalForAll", + "inputs": [ + { + "name": "operator", + "type": "address", + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "supportsInterface", + "inputs": [ + { + "name": "interfaceId", + "type": "bytes4", + "internalType": "bytes4" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "tokenURI", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApprovalForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + } +] \ No newline at end of file diff --git a/subgraph-build/PositionManager/abis/PoolInfoUtils.json b/subgraph-build/PositionManager/abis/PoolInfoUtils.json new file mode 100644 index 0000000..81ec4bb --- /dev/null +++ b/subgraph-build/PositionManager/abis/PoolInfoUtils.json @@ -0,0 +1,789 @@ +[ + { + "type": "function", + "name": "auctionInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kicker_", + "type": "address", + "internalType": "address" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "head_", + "type": "address", + "internalType": "address" + }, + { + "name": "next_", + "type": "address", + "internalType": "address" + }, + { + "name": "prev_", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "auctionStatus", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "kickTime_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCover_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "isCollateralized_", + "type": "bool", + "internalType": "bool" + }, + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "neutralPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "referencePrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "debtToCollateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bondFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "availableQuoteTokenAmount", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "amount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "borrowerInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "borrower_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "debt_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "t0Np_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "thresholdPrice_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "bucketInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "quoteTokens_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "collateral_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "bucketLP_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "scale_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "exchangeRate_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "depositFeeRate", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpb", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hpbIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "htp", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "indexToPrice", + "inputs": [ + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "lenderInterestMargin", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "lenderInterestMargin_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToCollateral", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "collateralAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lpToQuoteTokens", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + }, + { + "name": "lp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "quoteAmount_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lup", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lupIndex", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "poolLoansInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolSize_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "loansCount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "maxBorrower_", + "type": "address", + "internalType": "address" + }, + { + "name": "pendingInflator_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "pendingInterestFactor_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolPricesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "hpb_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "hpbIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htp_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "htpIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lup_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lupIndex_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolReservesInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "reserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReserves_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "claimableReservesRemaining_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "auctionPrice_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "timeRemaining_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "poolUtilizationInfo", + "inputs": [ + { + "name": "ajnaPool_", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "poolMinDebtAmount_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolCollateralization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolActualUtilization_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "poolTargetUtilization_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "priceToIndex", + "inputs": [ + { + "name": "price_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "BucketPriceOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__CeilOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__DivOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "denominator", + "type": "uint256", + "internalType": "uint256" + } + ] + } +] \ No newline at end of file diff --git a/subgraph-build/PositionManager/abis/PositionManager.json b/subgraph-build/PositionManager/abis/PositionManager.json new file mode 100644 index 0000000..e13f0ed --- /dev/null +++ b/subgraph-build/PositionManager/abis/PositionManager.json @@ -0,0 +1,1021 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "erc20Factory_", + "type": "address", + "internalType": "contract ERC20PoolFactory" + }, + { + "name": "erc721Factory_", + "type": "address", + "internalType": "contract ERC721PoolFactory" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "DOMAIN_SEPARATOR", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "PERMIT_TYPEHASH", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "burn", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getApproved", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getLP", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPositionIndexes", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPositionIndexesFiltered", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "filteredIndexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getPositionInfo", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isAjnaPool", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "subsetHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isApprovedForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isIndexInPosition", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isPositionBucketBankrupt", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "index_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "memorializePositions", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "mint", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "recipient_", + "type": "address", + "internalType": "address" + }, + { + "name": "poolSubsetHash_", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "moveLiquidity", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "fromIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "toIndex_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "expiry_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "multicall", + "inputs": [ + { + "name": "data", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "outputs": [ + { + "name": "results", + "type": "bytes[]", + "internalType": "bytes[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "nonces", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "ownerOf", + "inputs": [ + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "permit", + "inputs": [ + { + "name": "spender_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "deadline_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "signature_", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "poolKey", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "redeemPositions", + "inputs": [ + { + "name": "pool_", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "indexes_", + "type": "uint256[]", + "internalType": "uint256[]" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "safeTransferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "data", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setApprovalForAll", + "inputs": [ + { + "name": "operator", + "type": "address", + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "supportsInterface", + "inputs": [ + { + "name": "interfaceId", + "type": "bytes4", + "internalType": "bytes4" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "tokenURI", + "inputs": [ + { + "name": "tokenId_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ApprovalForAll", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "operator", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "indexed": false, + "internalType": "bool" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Burn", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MemorializePosition", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Mint", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "pool", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MoveLiquidity", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "fromIndex", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "toIndex", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpRedeemedFrom", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "lpAwardedTo", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RedeemPosition", + "inputs": [ + { + "name": "lender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "indexes", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "tokenId", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AllowanceTooLow", + "inputs": [] + }, + { + "type": "error", + "name": "BucketBankrupt", + "inputs": [] + }, + { + "type": "error", + "name": "BucketIndexOutOfBounds", + "inputs": [] + }, + { + "type": "error", + "name": "DeployWithZeroAddress", + "inputs": [] + }, + { + "type": "error", + "name": "LiquidityNotRemoved", + "inputs": [] + }, + { + "type": "error", + "name": "NoAuth", + "inputs": [] + }, + { + "type": "error", + "name": "NoToken", + "inputs": [] + }, + { + "type": "error", + "name": "NonExistentToken", + "inputs": [] + }, + { + "type": "error", + "name": "NotAjnaPool", + "inputs": [] + }, + { + "type": "error", + "name": "NotAuthorized", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__Exp2InputTooBig", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntOverflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__FromIntUnderflow", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__LogInputTooSmall", + "inputs": [ + { + "name": "x", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulInputTooSmall", + "inputs": [] + }, + { + "type": "error", + "name": "PRBMathSD59x18__MulOverflow", + "inputs": [ + { + "name": "rAbs", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PRBMath__MulDivFixedPointOverflow", + "inputs": [ + { + "name": "prod1", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "PermitExpired", + "inputs": [] + }, + { + "type": "error", + "name": "RemovePositionFailed", + "inputs": [] + }, + { + "type": "error", + "name": "WrongPool", + "inputs": [] + } +] \ No newline at end of file diff --git a/subgraph-build/schema.graphql b/subgraph-build/schema.graphql new file mode 100644 index 0000000..c0cc99f --- /dev/null +++ b/subgraph-build/schema.graphql @@ -0,0 +1,990 @@ +# this supports both ERC20 and ERC721 tokens, as union types aren't currently supported +type Token @entity { + # token address + id: Bytes! + # token symbol + symbol: String! + # token name + name: String! + # token decimals + decimals: Int + # indicates whether the token is ERC20 or ERC721 + tokenType: String! # ERC20 or ERC721 + # number of pools including this token + poolCount: BigInt! + # list of pools including this token + pools: [Pool!]! + # total supply of the token + totalSupply: BigInt + # transactions across all pools that include this token + txCount: BigInt! +} + + + # # # # # # # # # + # Pool ENTITIES # + # # # # # # # # # + +type PoolFactory @entity { + # factory address + id: Bytes! + # indicates type of collateral (ERC20 or ERC721) + poolType: String! + # number of pools deployed by the factory + poolCount: BigInt! + # list of pools deployed by the factory + pools: [Pool!]! + # total number of transactions sent to the factory + txCount: BigInt! +} + +type Pool @entity { + # pool address + id: Bytes! + # block pool was created at + createdAtBlockNumber: BigInt! + # creation timestamp + createdAtTimestamp: BigInt! + # address of the pool's collateral token + collateralToken: Token! + # address of the pool's quote token + quoteToken: Token! + # amount of deposit in the pool + poolSize: BigDecimal! + # debt in T0 terms, useful when the caller knows the pending inflator + t0debt: BigDecimal! + # pool inflator snapshot + inflator: BigDecimal! + # interest rate paid by borrowers, excluding fees + borrowRate: BigDecimal! + # interest rate awarded to lenders, excluding fees + lendRate: BigDecimal! + # origination fee paid by borrower on newly drawn debt + borrowFeeRate: BigDecimal! + # fee charged to lenders depositing below the highest threshold price + depositFeeRate: BigDecimal! + # total collateral pledged to the pool + pledgedCollateral: BigDecimal! + # total interest earned by all lenders in the pool + totalInterestEarned: BigDecimal! + # total number of transactions sent to the pool + txCount: BigInt! + # type of pool: "Fungible", Collection", "Subset" + poolType: String! + + # LOANS INFORMATION + loansCount: BigInt! # total number of loans in the pool + maxBorrower: Bytes! # address of the borrower with the highest TP in the pool + # normalized total amount of tokens flashloaned from the pool + quoteTokenFlashloaned: BigDecimal! + collateralFlashloaned: BigDecimal! + + # PRICES INFORMATION + hpb: BigDecimal! # current highest price bucket + hpbIndex: Int! # current highest price bucket index + htp: BigDecimal! # current highest threshold price + htpIndex: Int! # current highest threshold price index + lup: BigDecimal! # current lowest utilized price + lupIndex: Int! # current lowest utilized price index + + # RESERVES INFORMATION + # current reserves contractQuoteBalance + poolDebt - pool.depositSize() + reserves: BigDecimal! + # current pool claimable reserves + claimableReserves: BigDecimal! + # remaining claimable reserves not yet taken + claimableReservesRemaining: BigDecimal! + # current burn epoch + burnEpoch: BigInt! + # total ajna burned in the pool + totalAjnaBurned: BigDecimal! + # list of all reserve auctions for this pool + reserveAuctions: [ReserveAuction!]! + + # UTILIZATION INFORMATION + # current pool minimum debt amount for a new borrow + minDebtAmount: BigDecimal! + # current pool utilization across all borrowers + actualUtilization: BigDecimal! + # current pool target utilization rate + targetUtilization: BigDecimal! + + # LIQUIDATION INFORMATION + # liquidation bond currently escrowed in the pool + totalBondEscrowed: BigDecimal! + # list of active liquidation auctions in the pool, sorted by kick time + liquidationAuctions: [LiquidationAuction!]! + + # normalized contract balances, used for TVL + quoteTokenBalance: BigDecimal! + collateralBalance: BigDecimal! + + # ERC721 POOL INFORMATION + # pool subsetHash + subsetHash: Bytes! + # list of tokenIds pledged by the borrower + tokenIdsPledged: [BigInt!]! + # list of tokenIds available to lenders + bucketTokenIds: [BigInt!]! + # list of tokenIds allowed by a subset pool + tokenIdsAllowed: [BigInt!]! +} + +type Bucket @entity { + # bucket id: $poolAddress + '#' + $bucketIndex + id: Bytes! + # bucket index + bucketIndex: Int! + # bucket price + bucketPrice: BigDecimal! + # current exchange rate of the bucket + exchangeRate: BigDecimal! + # pool address + poolAddress: String! + # pool in which the bucket belongs + pool: Pool! + # total collateral available in the bucket + collateral: BigDecimal! + # total quote tokens deposited in the bucket, inclusive of interest + deposit: BigDecimal! + # total LP for all lenders in the bucket + lpb: BigDecimal! + # list of lends associated with the bucket + lends: [Lend!]! + # list of PositionLends associated with the bucket + positionLends: [PositionLend!]! +} + +# lend occurs per bucket in a pool +type Lend @entity { + # Lend id: $bucketId + '|' + $accountId + id: Bytes! + # bucket to which a lend was made + bucket: Bucket! + # index of the bucket, for querying + bucketIndex: Int! + # pool address + poolAddress: String! + # address of the lender + lender: Bytes! + # pool pointer + pool: Pool! + # amount of LPB lender has in the bucket + lpb: BigDecimal! + # quote equivalent value of the lend's LPB in the bucket (regardless of available deposit in bucket) + lpbValueInQuote: BigDecimal! + # time at which the lend was made + depositTime: BigInt! +} + +# each borrower has only one loan with a pool +type Loan @entity { + # Loan id: $poolAddress + '|' + $borrowerId + id: Bytes! + # pool address + poolAddress: String! + # borrower address + borrower: Bytes! + # pool pointer + pool: Pool! + # boolean indicating whether the loan is in liquidations + inLiquidation: Boolean! + # most recent liquidation, whether active or inactive + liquidationAuction: LiquidationAuction + # collateral tokens deposited in a pool by the borrower + collateralPledged: BigDecimal! + # borrower's threshold price + thresholdPrice: BigDecimal! + # list of tokenIds pledged by the borrower + tokenIdsPledged: [BigInt!]! + # debt in T0 terms, useful when the caller knows the pending inflator + t0debt: BigDecimal! + # borrowers t0 neutral price + t0Np: BigDecimal! +} + +type Account @entity { + # address of the account + id: Bytes! + # list of pools in which an account is present + pools: [Pool!]! + + # kicks executed by the account + kicks: [Kick!]! + # buckets in a pool to which the account has lent quote + lends: [Lend!]! + # loans which the account has taken from pools + loans: [Loan!]! + # liquidation auctions settled + settles: [Settle!]! + # liquidation auctions taken + takes: [Take!]! + + # reserve auctions which the account has interacted in + reserveAuctions: [ReserveAuction!]! + + # ecosystem coordination proposals created + proposalsCreated: [Proposal!]! + # ecosystem coordination proposals passed and funded + proposalsExecuted: [Proposal!]! + # account to which this account is delegating votes + delegatedTo: Account + # accounts from which votes are delegated + delegatedFrom: [Account!]! + # delegation rewards claimed across all distribution periods + rewardsClaimed: BigDecimal! + # voting state for each distribution period + distributionPeriodVotes: [DistributionPeriodVote!]! + # amount of tokens delegated to this account + tokensDelegated: BigDecimal! + + # positions associated with the account + positions: [Position!]! + + # total number of transactions sent by the account + txCount: BigInt! +} + +type LiquidationAuction @entity { + id: Bytes! # $poolAddress + '|' + $loanId + '|' + blockNumber + pool: Pool! # pool in which the liquidation occurred + borrower: Bytes! # address of the borrower being liquidated + lastTakePrice: BigDecimal! # price of auction upon most recent take + collateral: BigDecimal! # initial collateral up for auction + collateralRemaining: BigDecimal! # collateral which has not been taken + debt: BigDecimal! # initial debt to be covered by the auction + debtRemaining: BigDecimal! # debt which has not been covered + loan: Loan! # loan being liquidated + kicker: Bytes! # address of the kicker + kick: Kick! # kick which triggered the liquidation + kickTime: BigInt! # block timestamp at which the kick was executed + takes: [Take!]! # list of takes which occured using outside liquidity + bucketTakes: [BucketTake!]! # list of takes which involved the pool's book + settles: [Settle!]! # list of possibly-intermediate settles performed on the auction + settle: AuctionSettle # final settlement of the auction + settleTime: BigInt # block timestamp at which the liquidation was settled + settled: Boolean! # boolean indicating whether the auction has been settled + bondSize: BigDecimal! # bond provided by kicker to initate auction + bondFactor: BigDecimal! # bond factor determining the reward or penalty for the kicker + neutralPrice: BigDecimal! # price at which kicker will have their bond returned without penalty or reward + referencePrice: BigDecimal! # max(HTP, NP) used in auction price curve + thresholdPrice: BigDecimal! # Threshold price stamped on the liquidation at time of kick +} + +# tracks the reserve auction process across multiple takes in a single auction +# used as start and take events are emitted as ReserveAuction +type ReserveAuction @entity { + id: Bytes! # $poolAddress + '|' + $burnEpoch + pool: Pool! # Pool in which the reserve auction occurred + claimableReservesRemaining: BigDecimal! # uint256 claimable reserves remaining at start or at latest take + lastTakePrice: BigDecimal! # uint256 price of auction upon most recent take, denominated in AJNA + burnEpoch: BigInt! # uint256 burn epoch at which the reserve auction was started + kick: ReserveAuctionKick! # kick information + takes: [ReserveAuctionTake!]! # list of reserve auction takes that occured during this auction process + ajnaBurned: BigDecimal! # total amount of ajna burned across all takes in the reserve auction +} + +# LP transferors approved by a lender for a pool, updated upon Approve/RevokeLpTransferors +type LPTransferorList @entity { + id: Bytes! # $poolAddress + '|' + $lender + pool: Pool! # pool in which these transferors have been approved + lender: Bytes! # address of the lender who has approved transferors + transferors: [Bytes!]! # addresses of approved transferors +} + +# represents a LP allowance for a single bucket +type LPAllowance @entity { + id: Bytes! # LPAllowanceList.id + '|' + $index + index: Int! # bucket index where an allowance has been granted + amount: BigDecimal! # size of the allowance (measured in LP) +} + +# updated upon Increase/Decrease/RevokeLPAllowance +type LPAllowanceList @entity { + id: Bytes! # $poolAddress + '|' + $lender + '|' + $spender + pool: Pool! # pool in which LP allowances have been granted + lender: Bytes! # address of the lender who has granted an allowance + spender: Bytes! # address who has been granted an allowance + allowances: [LPAllowance!]! # list of LP allowances +} + + # # # # # # # # # # # + # ERC20 Pool Events # + # # # # # # # # # # # + +type AddCollateral @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool to which collateral was added + bucket: Bucket! # Bucket to which collateral was added + actor: Bytes! # address + index: Int! # uint256 + amount: BigDecimal! # uint256 + lpAwarded: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type AddQuoteToken @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool to which quote was added + bucket: Bucket! # Bucket to which quote was added + lender: Bytes! # address + index: Int! # uint256 + amount: BigDecimal! # uint256 + lpAwarded: BigDecimal! # uint256 + lup: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +# emitted when auction has been removed from the liquidation queue +type AuctionSettle @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool whose debt was settled + loan: Loan! # Loan which was settled + borrower: Bytes! # address + collateral: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type BondWithdrawn @entity(immutable: true) { + id: Bytes! + kicker: Bytes! # address + reciever: Bytes! # address + amount: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type BucketBankruptcy @entity(immutable: true) { + id: Bytes! + bucket: Bucket! # Bucket which was bankrupted + index: Int! # uint256 + pool: Pool! # Pool whose bucket was bankrupted + lpForfeited: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type BucketTake @entity(immutable: true) { + id: Bytes! + borrower: Bytes! # address + taker: Bytes! # address of the taker + liquidationAuction: LiquidationAuction! # liquidation auction in which the take is occuring + loan: Loan! # loan which was taken + pool: Pool! # pool in which the take is occuring + index: Int! # uint256 + auctionPrice: BigDecimal! # price of auction when taken + amount: BigDecimal! # uint256 + collateral: BigDecimal! # uint256 + bondChange: BigDecimal! # uint256 + isReward: Boolean! # bool + lpAwarded: BucketTakeLPAwarded! + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type BucketTakeLPAwarded @entity(immutable: true) { + id: Bytes! + taker: Bytes! # address + pool: Pool! # Pool in which the take occurred + kicker: Bytes! # address + lpAwardedTaker: BigDecimal! # uint256 + lpAwardedKicker: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type DrawDebt @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool debt was drawn from + borrower: Bytes! # address + amountBorrowed: BigDecimal! # uint256 + collateralPledged: BigDecimal! # uint256 + lup: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Flashloan @entity(immutable: true) { + id: Bytes! + pool: Pool! + borrower: Bytes! # address + amount: BigDecimal! # uint256 +} + +type Kick @entity { + id: Bytes! + kicker: Bytes! # address of the kicker + pool: Pool! # Pool in which a kick occurred + loan: Loan! # Loan which was kicked + locked: BigDecimal! # amount of quote from the bond locked in the kick (updated on take) TODO: rename bondLocked + claimable: BigDecimal! # amount of quote from the bond claimable by the kicker (updated on settle) TODO: rename bondClaimable? + liquidationAuction: LiquidationAuction! # Liquidation auction which was initiated + borrower: Bytes! # address of the borrower being liquidated + debt: BigDecimal! # amount of debt to be covered + collateral: BigDecimal! # amount of collateral available to liquidate + bond: BigDecimal! # liquidation bond paid by kicker + startingPrice: BigDecimal! # initial price of auction + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type LoanStamped @entity(immutable: true) { + id: Bytes! + pool: Pool! + borrower: Bytes! # address + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type MoveQuoteToken @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool in which quote tokens were moved + lender: Bytes! # address + from: Bucket! # bucket quote token was moved from + to: Bucket! # bucket quote token was moved to + amount: BigDecimal! # uint256 + lpRedeemedFrom: BigDecimal! # uint256 + lpAwardedTo: BigDecimal! # uint256 + lup: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type RemoveCollateral @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool where collateral was removed + bucket: Bucket! # Bucket where collateral was removed + claimer: Bytes! # address + index: Int! # uint256 + amount: BigDecimal! # uint256 + lpRedeemed: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type RemoveQuoteToken @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool where deposit was removed + bucket: Bucket! # Bucket where deposit was removed + lender: Bytes! # address + index: Int! # uint256 + amount: BigDecimal! # uint256 + lpRedeemed: BigDecimal! # uint256 + lup: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type RepayDebt @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool debt was repaid to + borrower: Bytes! # address + quoteRepaid: BigDecimal! # uint256 + collateralPulled: BigDecimal! # uint256 + lup: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +# starts a claimable reserve auction +type ReserveAuctionKick @entity(immutable: true) { + id: Bytes! # transaction.hash + transaction.from + kicker: Bytes # address of the taker, null if emitted as start of event + reserveAuction: ReserveAuction! # reserve auction in which the take is occuring + pool: Pool! # pool in which the auction was kicked + claimableReserves: BigDecimal! # uint256 initial amount of claimable reserves in the auction + startingPrice: BigDecimal! # uint256 initial auction price + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +# indicates AJNA was burned in a claimable reserve auction +type ReserveAuctionTake @entity(immutable: true) { + id: Bytes! # transaction.hash + transaction.from + taker: Bytes # address of the taker, null if emitted as start of event + reserveAuction: ReserveAuction! # reserve auction in which the take is occuring + pool: Pool! # pool in which the take is occuring + claimableReservesRemaining: BigDecimal! # uint256 remaining amount of claimable reserves in the auction + auctionPrice: BigDecimal! # uint256 cost of purchasing one quote token, denominated in AJNA + quotePurchased: BigDecimal! # amount of quote token purchased by taker in this take + ajnaBurned: BigDecimal! # amount of AJNA burned by taker in this take + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +# indicates rate was reset on an underutilized pool with high interest rate +type ResetInterestRate @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool whose interest rate was reset + oldBorrowRate: BigDecimal! # uint256 + newBorrowRate: BigDecimal! # uint256 + oldLendRate: BigDecimal! # uint256 + newLendRate: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +# emitted for each settle TX; one to many required before auction is settled +type Settle @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool whose debt was settled + liquidationAuction: LiquidationAuction! # Liquidation auction which was settled + loan: Loan! # Loan which was settled + borrower: Bytes! # address + settledDebt: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Take @entity(immutable: true) { + id: Bytes! + taker: Bytes! # address of the taker + pool: Pool! # Pool in which the take occurred + borrower: Bytes! # address of the borrower being liquidated + liquidationAuction: LiquidationAuction! # Liquidation auction which was taken + loan: Loan! # Loan which was taken + auctionPrice: BigDecimal! # price of auction when taken + amount: BigDecimal! # uint256 + collateral: BigDecimal! # uint256 + bondChange: BigDecimal! # uint256 + isReward: Boolean! # bool + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type TransferLP @entity(immutable: true) { + id: Bytes! + owner: Bytes! # address + newOwner: Bytes! # address + indexes: [Int!]! # uint256[] + lp: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type UpdateInterestRate @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool whose interest rate was updated + # interest rates + oldBorrowRate: BigDecimal! # uint256 + newBorrowRate: BigDecimal! # uint256 + oldLendRate: BigDecimal! # uint256 + newLendRate: BigDecimal! # uint256 + # fees + borrowFeeRate: BigDecimal! # uint256 + depositFeeRate: BigDecimal! # uint256 + # event + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} +type Approval @entity(immutable: true) { + id: Bytes! + owner: Bytes! # address + approved: Bytes! # address + tokenId: BigInt! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type ApprovalForAll @entity(immutable: true) { + id: Bytes! + owner: Bytes! # address + operator: Bytes! # address + approved: Boolean! # bool + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type MoveLiquidity @entity(immutable: true) { + id: Bytes! + lender: Bytes! # address + tokenId: BigInt! # uint256 + pool: Pool! + fromIndex: Int! # uint256 + toIndex: Int! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +# PositionManager ERC-721 transfer event +type Transfer @entity(immutable: true) { + id: Bytes! + token: Token! # token which was transferred + pool: Pool! + from: Bytes! # address + to: Bytes! # address + tokenId: BigInt! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type PoolCreated @entity(immutable: true) { + id: Bytes! + pool: Pool! # pool which was created + poolType: String! # ERC20 or ERC721 + factory: PoolFactory! # address of factory contract used to create pool + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + + # # # # # # # # # # # + # ERC721 POOL EVENTS # + # # # # # # # # # # # + +type AddCollateralNFT @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool to which collateral was added + bucket: Bucket! # Bucket to which collateral was added + actor: Bytes! # address + index: BigInt! # bucket index to which collateral was added + tokenIds: [BigInt!]! # uint256[] list of tokenIds added as collateral + lpAwarded: BigDecimal! # lp awarded for adding collateral + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type AuctionNFTSettle @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool whose debt was settled + loan: Loan! # Loan which was settled + borrower: Bytes! # address + collateral: BigDecimal! # uint256 + lp: BigDecimal! # uint256 + index: Int! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type DrawDebtNFT @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool from which quote was withdrawn + borrower: Bytes! # address + amountBorrowed: BigDecimal! # uint256 + tokenIdsPledged: [BigInt!]! # uint256[] + lup: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type MergeOrRemoveCollateralNFT @entity(immutable: true) { + id: Bytes! + pool: Pool! # Pool in which NFT collateral was merged or removed + actor: Bytes! # address + collateralMerged: BigDecimal! # uint256 + toIndexLps: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + + # # # # # # # # # # # # # # # + # POSITION MANAGER ENTITIES # + # # # # # # # # # # # # # # # + +type Position @entity { + id: Bytes! # byte encoded tokenId + tokenId: BigInt # tokenId + indexes: [PositionLend!]! # list of PositionLends which constitute a position + owner: Bytes! # address of the position owner + pool: Pool! # pool that the position is associated with + token: Token! # pointer to LPToken entity + tokenURI: String! # tokenURI of the positionNFT +} + +# created to handle the seperate lpb positions for each bucket index +type PositionLend @entity { + id: Bytes! # $positionId + '|' + $bucketIndex + bucket: Bucket! # pointer to associated Bucket entity + bucketIndex: Int! # index of the bucket with lpb + depositTime: BigInt! # time at which the position was deposited + lpb: BigDecimal! # amount of LPB position has in the bucket + lpbValueInQuote: BigDecimal! # quote equivalent value of LPB in the bucket + tokenId: BigInt! # tokenId of the position +} + + # # # # # # # # # # # # # # + # POSITION MANAGER EVENTS # + # # # # # # # # # # # # # # + +type Burn @entity(immutable: true) { + id: Bytes! + lender: Bytes! # address + tokenId: BigInt! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type MemorializePosition @entity(immutable: true) { + id: Bytes! + pool: Pool! + lender: Bytes! # address + tokenId: BigInt! # uint256 + indexes: [Int!]! # uint256[] + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type Mint @entity(immutable: true) { + id: Bytes! + lender: Bytes! # address + pool: Pool! + tokenId: BigInt! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type RedeemPosition @entity(immutable: true) { + id: Bytes! + pool: Pool! + lender: Bytes! # address + tokenId: BigInt! # uint256 + indexes: [Int!]! # uint256[] + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + + # # # # # # # # # # # # + # GRANT FUND ENTITIES # + # # # # # # # # # # # # + +type GrantFund @entity { + id: Bytes! # address of the grant fund + treasury: BigDecimal! # Total ajna tokens in the grant fund treasure + distributionPeriods: [DistributionPeriod!]! # List of distribution periods + totalDelegationRewardsClaimed: BigDecimal! # Total delegation rewards claimed across all distribution periods +} + +type DistributionPeriod @entity { + id: Bytes! # distribution period id converted to Bytes from uint + distributionId: BigInt! # identifies the distribution period + startBlock: BigInt! # block number the distribution period starts + endBlock: BigInt! # block number the distribution period ends + topSlate: FundedSlate # The current top FundedSlate + slatesSubmitted: [FundedSlate!]! # FundedSlate[] slates submitted in the distribution period + fundsAvailable: BigDecimal! # Total ajna tokens available for distribution in the distribution period + delegationRewardsClaimed: BigDecimal! # Total delegation rewards claimed in the distribution period + fundingVotePowerUsed: BigDecimal! # Total funding vote power used + screeningVotesCast: BigDecimal! # number of screening votes cast + votes: [DistributionPeriodVote!]! # Voter info for the distribution period + proposals: [Proposal!]! # List of proposals submitted in the distribution period + totalTokensDistributed: BigDecimal! # Total ajna tokens distributed to executed proposals in a distribution period +} + +type Proposal @entity { + id: Bytes! # proposal id converted to Bytes from uint + proposalId: BigInt! # proposal id stored in original uint format + description: String! # proposal description hashed as part of proposalId + distribution: DistributionPeriod # distributionPeriod in which the proposal was submitted if Standard, null otherwise + executed: Boolean! # bool + screeningVotesReceived: BigDecimal! # uint256 + fundingVotesReceived: BigDecimal! # uint256 + fundingVotesNegative: BigDecimal! # uint256 + fundingVotesPositive: BigDecimal! # uint256 + totalTokensRequested: BigDecimal! # uint256 + params: [ProposalParams!]! # ProposalParams +} + +type ProposalParams @entity { + id: Bytes! # $proposalId + '|' + $paramIndex + target: Bytes! # address + value: BigInt! # uint256 + calldata: Bytes! # bytes + recipient: Bytes! # address + tokensRequested: BigDecimal! # uint256 +} + +type DistributionPeriodVote @entity { + id: Bytes! # $accountId + '|'' + $distributionId + voter: Account! # the account of the voter whose vote state in this distribution is being tracked + distribution: DistributionPeriod! # the distribution period associated with this entity + initialFundingStageVotingPowerRecordedPostVote: BigDecimal! # Voters initial funding stage voting power. Only recorded if the voter cast a screeningVote in this distribution period. + remainingFundingStageVotingPowerRecordedPostVote: BigDecimal! # Voters remaining funding stage voting power. + initialScreeningStageVotingPowerRecordedPostVote: BigDecimal! # Voters initial screening stage voting power. Only recorded if the voter cast a screeningVote in this distribution period. + remainingScreeningStageVotingPowerRecordedPostVote: BigDecimal! # Voters remaining screening stage voting power. + screeningVotes: [ScreeningVote!]! # ScreeningVote[] Array of ScreeningVotes cast. + fundingVotes: [FundingVote!]! # FundingVote[] Array of FundingVotes cast. +} + +# 1-1 with Proposal. Multiple screeningVotes on the same proposal write to a single entity +type ScreeningVote @entity { + id: Bytes! # $proposalId + 'screening' + $account.id + $distributionId + distribution: DistributionPeriod! # distribution period the vote was cast in + voter: Account! # actor who cast votes + proposal: Proposal! # proposal being voted on + totalVotesCast: BigDecimal! # total screening votes cast by a single voter on a proposal + votesCast: [VoteCast!]! # array of voteCast entities created for each screeningVote on this proposal +} + +# 1-1 with Proposal. Multiple fundingVotes on the same proposal write to a single entity +type FundingVote @entity { + id: Bytes! # $proposalId + 'funding' + $account.id + $distributionId + distribution: DistributionPeriod! # distribution period the vote was cast in + voter: Account! # actor who cast votes + proposal: Proposal! # proposal being voted on + totalVotesCast: BigDecimal! # uint256 total unsquared votes cast on the proposal + votingPowerUsed: BigDecimal! # uint256 # cost of the incremental funding vote to the voter's voting power + votesCast: [VoteCast!]! # array of voteCast entities created for each fundingVote on this proposal +} + +type FundedSlate @entity { + id: Bytes! # bytes32 hash of slate proposalIds + distribution: DistributionPeriod! # distribution period the vote was cast in + proposals: [Proposal!]! # uint256[] list of proposalIds + totalTokensRequested: BigDecimal! # total number of tokens requested by all proposals in the slate + totalFundingVotesReceived: BigDecimal! # net funding votes received by all proposals in the slate + updateBlock: BigInt! # block number the slate was updated +} + + # # # # # # # # # # # + # GRANT FUND EVENTS # + # # # # # # # # # # # + + +type DelegateRewardClaimed @entity(immutable: true) { + id: Bytes! + delegateeAddress_: Bytes! # address + distribution: DistributionPeriod! # distribution period the rewards were claimed in + rewardClaimed_: BigInt! # uint256 TODO: remove trailing underscore + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type FundTreasury @entity(immutable: true) { + id: Bytes! + amount: BigInt! # uint256 + treasuryBalance: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type FundedSlateUpdated @entity(immutable: true) { + id: Bytes! + distributionId_: BigInt! # uint256 + fundedSlateHash_: Bytes! # bytes32 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type ProposalCreated @entity(immutable: true) { + id: Bytes! + proposal: Proposal! + proposer: Bytes! # address + targets: [Bytes!]! # address[] + values: [BigDecimal!]! # uint256[] + signatures: [String!]! # string[] + calldatas: [Bytes!]! # bytes[] + startBlock: BigInt! # uint256 + endBlock: BigInt! # uint256 + description: String! # string + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type ProposalExecuted @entity(immutable: true) { + id: Bytes! + proposalId: BigInt! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type DistributionPeriodStarted @entity(immutable: true) { + id: Bytes! + distribution: DistributionPeriod! # The newly started distribution period + startBlock: BigInt! # uint256 + endBlock: BigInt! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type VoteCast @entity(immutable: true) { + id: Bytes! + voter: Bytes! # address # TODO: should be Account + proposalId: BigInt! # uint256 + support: Int! # uint8 + weight: BigDecimal! # uint256 + reason: String! # string + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + + # # # # # # # # # # # + # AJNA TOKEN EVENTS # + # # # # # # # # # # # + +type DelegateChanged @entity(immutable: true) { + id: Bytes! + delegator: Bytes! # address + fromDelegate: Bytes! # address + toDelegate: Bytes! # address + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + +type DelegateVotesChanged @entity(immutable: true) { + id: Bytes! + delegate: Bytes! # address + previousBalance: BigDecimal! # uint256 + newBalance: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} + + + # # # # # # # # # # # # + # BURN WRAPPER EVENTS # + # # # # # # # # # # # # + +type BurnWrap @entity(immutable: true) { + id: Bytes! + wrapper: Bytes! # address + account: Account # null if does not already exist + amount: BigDecimal! # uint256 + blockNumber: BigInt! + blockTimestamp: BigInt! + transactionHash: Bytes! +} diff --git a/subgraph-build/subgraph.yaml b/subgraph-build/subgraph.yaml new file mode 100644 index 0000000..f595534 --- /dev/null +++ b/subgraph-build/subgraph.yaml @@ -0,0 +1,398 @@ +specVersion: 0.0.5 +schema: + file: schema.graphql +dataSources: + - kind: ethereum + name: PositionManager + source: + abi: PositionManager + address: "0x87B0F458d8F1ACD28A83A748bFFbE24bD6B701B1" + startBlock: 18938158 + mapping: + kind: ethereum/events + apiVersion: 0.0.7 + language: wasm/assemblyscript + entities: + - Approval + - ApprovalForAll + - Burn + - MemorializePosition + - Mint + - MoveLiquidity + - RedeemPosition + - Transfer + abis: + - name: PositionManager + file: PositionManager/abis/PositionManager.json + - name: ERC721 + file: PositionManager/abis/ERC721.json + - name: PoolInfoUtils + file: PositionManager/abis/PoolInfoUtils.json + eventHandlers: + - event: Approval(indexed address,indexed address,indexed uint256) + handler: handleApproval + - event: ApprovalForAll(indexed address,indexed address,bool) + handler: handleApprovalForAll + - event: Burn(indexed address,indexed uint256) + handler: handleBurn + - event: MemorializePosition(indexed address,uint256,uint256[]) + handler: handleMemorializePosition + - event: Mint(indexed address,indexed address,uint256) + handler: handleMint + - event: MoveLiquidity(indexed address,uint256,uint256,uint256,uint256,uint256) + handler: handleMoveLiquidity + - event: RedeemPosition(indexed address,uint256,uint256[]) + handler: handleRedeemPosition + - event: Transfer(indexed address,indexed address,indexed uint256) + handler: handleTransfer + file: PositionManager/PositionManager.wasm + network: mainnet + - kind: ethereum + name: ERC20PoolFactory + source: + abi: ERC20PoolFactory + address: "0x6146DD43C5622bB6D12A5240ab9CF4de14eDC625" + startBlock: 18938158 + mapping: + kind: ethereum/events + apiVersion: 0.0.7 + language: wasm/assemblyscript + entities: + - PoolCreated + abis: + - name: ERC20PoolFactory + file: ERC20PoolFactory/abis/ERC20PoolFactory.json + - name: ERC20Pool + file: ERC20PoolFactory/abis/ERC20Pool.json + - name: ERC20 + file: ERC20PoolFactory/abis/ERC20.json + - name: PoolInfoUtils + file: ERC20PoolFactory/abis/PoolInfoUtils.json + eventHandlers: + - event: PoolCreated(address,bytes32) + handler: handlePoolCreated + file: ERC20PoolFactory/ERC20PoolFactory.wasm + network: mainnet + - kind: ethereum + name: ERC721PoolFactory + source: + abi: ERC721PoolFactory + address: "0x27461199d3b7381De66a85D685828E967E35AF4c" + startBlock: 18938158 + mapping: + kind: ethereum/events + apiVersion: 0.0.7 + language: wasm/assemblyscript + entities: + - PoolCreated + abis: + - name: ERC721PoolFactory + file: ERC721PoolFactory/abis/ERC721PoolFactory.json + - name: ERC721Pool + file: ERC721PoolFactory/abis/ERC721Pool.json + - name: ERC20 + file: ERC721PoolFactory/abis/ERC20.json + - name: ERC721 + file: ERC721PoolFactory/abis/ERC721.json + - name: PoolInfoUtils + file: ERC721PoolFactory/abis/PoolInfoUtils.json + eventHandlers: + - event: PoolCreated(address,bytes32) + handler: handlePoolCreated + file: ERC721PoolFactory/ERC721PoolFactory.wasm + network: mainnet + - kind: ethereum + name: GrantFund + source: + abi: GrantFund + address: "0x74d5b005ca64a5C9EE3611Bdc6F6C02D93C84b2f" + startBlock: 18964103 + mapping: + kind: ethereum/events + apiVersion: 0.0.7 + language: wasm/assemblyscript + entities: + - DelegateRewardClaimed + - FundTreasury + - FundedSlateUpdated + - ProposalCreated + - ProposalExecuted + - DistributionPeriodStarted + - VoteCast + abis: + - name: GrantFund + file: GrantFund/abis/GrantFund.json + eventHandlers: + - event: DelegateRewardClaimed(indexed address,indexed uint256,uint256) + handler: handleDelegateRewardClaimed + - event: FundTreasury(uint256,uint256) + handler: handleFundTreasury + - event: FundedSlateUpdated(indexed uint256,indexed bytes32) + handler: handleFundedSlateUpdated + - event: ProposalCreated(uint256,address,address[],uint256[],string[],bytes[],uint256,uint256,string) + handler: handleProposalCreated + - event: ProposalExecuted(uint256) + handler: handleProposalExecuted + - event: DistributionPeriodStarted(indexed uint256,uint256,uint256) + handler: handleDistributionPeriodStarted + - event: VoteCast(indexed address,uint256,uint8,uint256,string) + handler: handleVoteCast + file: GrantFund/GrantFund.wasm + network: mainnet + - kind: ethereum + name: AjnaToken + network: mainnet + source: + abi: AjnaToken + address: "0x9a96ec9B57Fb64FbC60B423d1f4da7691Bd35079" + startBlock: 15478977 + mapping: + kind: ethereum/events + apiVersion: 0.0.7 + language: wasm/assemblyscript + entities: + - DelegateChanged + - DelegateVotesChanged + abis: + - name: AjnaToken + file: AjnaToken/abis/AjnaToken.json + eventHandlers: + - event: DelegateChanged(indexed address,indexed address,indexed address) + handler: handleDelegateChanged + - event: DelegateVotesChanged(indexed address,uint256,uint256) + handler: handleDelegateVotesChanged + file: AjnaToken/AjnaToken.wasm + - kind: ethereum + name: BurnWrappedAjna + network: mainnet + source: + abi: BurnWrappedAjna + address: "0x936Ab482d6bd111910a42849D3A51Ff80BB0A711" + startBlock: 17913208 + mapping: + kind: ethereum/events + apiVersion: 0.0.7 + language: wasm/assemblyscript + entities: + - BurnWrap + abis: + - name: BurnWrappedAjna + file: BurnWrappedAjna/abis/BurnWrappedAjna.json + eventHandlers: + - event: Transfer(indexed address,indexed address,uint256) + handler: handleTransfer + file: BurnWrappedAjna/BurnWrappedAjna.wasm +templates: + - kind: ethereum + name: ERC20Pool + source: + abi: ERC20Pool + mapping: + kind: ethereum/events + apiVersion: 0.0.7 + language: wasm/assemblyscript + entities: + - AddCollateral + - AddQuoteToken + - ApproveLPTransferors + - AuctionSettle + - BondWithdrawn + - BucketBankruptcy + - BucketTake + - BucketTakeLPAwarded + - DecreaseLPAllowance + - DrawDebt + - IncreaseLPAllowance + - Kick + - LoanStamped + - MoveQuoteToken + - RemoveCollateral + - RemoveQuoteToken + - RepayDebt + - ReserveAuctionKick + - ReserveAuctionTake + - ResetInterestRate + - RevokeLPAllowance + - RevokeLPTransferors + - Settle + - Take + - TransferLP + - UpdateInterestRate + abis: + - name: ERC20 + file: ERC20Pool/abis/ERC20.json + - name: ERC721 + file: ERC20Pool/abis/ERC721.json + - name: ERC20Pool + file: ERC20Pool/abis/ERC20Pool.json + - name: PoolInfoUtils + file: ERC20Pool/abis/PoolInfoUtils.json + - name: PoolInfoUtilsMulticall + file: ERC20Pool/abis/PoolInfoUtilsMulticall.json + eventHandlers: + - event: AddCollateral(indexed address,indexed uint256,uint256,uint256) + handler: handleAddCollateral + - event: AddQuoteToken(indexed address,indexed uint256,uint256,uint256,uint256) + handler: handleAddQuoteToken + - event: ApproveLPTransferors(indexed address,address[]) + handler: handleApproveLPTransferors + - event: AuctionSettle(indexed address,uint256) + handler: handleAuctionSettle + - event: BondWithdrawn(indexed address,indexed address,uint256) + handler: handleBondWithdrawn + - event: BucketBankruptcy(indexed uint256,uint256) + handler: handleBucketBankruptcy + - event: BucketTake(indexed address,uint256,uint256,uint256,uint256,bool) + handler: handleBucketTake + - event: BucketTakeLPAwarded(indexed address,indexed address,uint256,uint256) + handler: handleBucketTakeLPAwarded + - event: DecreaseLPAllowance(indexed address,indexed address,uint256[],uint256[]) + handler: handleDecreaseLPAllowance + - event: DrawDebt(indexed address,uint256,uint256,uint256) + handler: handleDrawDebt + - event: Flashloan(indexed address,indexed address,uint256) + handler: handleFlashloan + - event: IncreaseLPAllowance(indexed address,indexed address,uint256[],uint256[]) + handler: handleIncreaseLPAllowance + - event: Kick(indexed address,uint256,uint256,uint256) + handler: handleKick + - event: KickReserveAuction(uint256,uint256,uint256) + handler: handleReserveAuctionKick + - event: LoanStamped(indexed address) + handler: handleLoanStamped + - event: MoveQuoteToken(indexed address,indexed uint256,indexed + uint256,uint256,uint256,uint256,uint256) + handler: handleMoveQuoteToken + - event: RemoveCollateral(indexed address,indexed uint256,uint256,uint256) + handler: handleRemoveCollateral + - event: RemoveQuoteToken(indexed address,indexed uint256,uint256,uint256,uint256) + handler: handleRemoveQuoteToken + - event: RepayDebt(indexed address,uint256,uint256,uint256) + handler: handleRepayDebt + - event: ReserveAuction(uint256,uint256,uint256) + handler: handleReserveAuctionTake + - event: ResetInterestRate(uint256,uint256) + handler: handleResetInterestRate + - event: RevokeLPAllowance(indexed address,indexed address,uint256[]) + handler: handleRevokeLPAllowance + - event: RevokeLPTransferors(indexed address,address[]) + handler: handleRevokeLPTransferors + - event: Settle(indexed address,uint256) + handler: handleSettle + - event: Take(indexed address,uint256,uint256,uint256,bool) + handler: handleTake + - event: TransferLP(address,address,uint256[],uint256) + handler: handleTransferLP + - event: UpdateInterestRate(uint256,uint256) + handler: handleUpdateInterestRate + file: templates/ERC20Pool/ERC20Pool.wasm + network: mainnet + - kind: ethereum + name: ERC721Pool + source: + abi: ERC721Pool + mapping: + kind: ethereum/events + apiVersion: 0.0.7 + language: wasm/assemblyscript + entities: + - AddCollateralNFT + - AddQuoteToken + - ApproveLPTransferors + - AuctionNFTSettle + - BondWithdrawn + - BucketBankruptcy + - BucketTake + - BucketTakeLPAwarded + - DecreaseLPAllowance + - DrawDebtNFT + - IncreaseLPAllowance + - Kick + - LoanStamped + - MergeOrRemoveCollateralNFT + - MoveQuoteToken + - RemoveCollateral + - RemoveQuoteToken + - RepayDebt + - ReserveAuctionKick + - ReserveAuctionTake + - ResetInterestRate + - RevokeLPAllowance + - RevokeLPTransferors + - Settle + - Take + - TransferLP + - UpdateInterestRate + abis: + - name: ERC20 + file: ERC721Pool/abis/ERC20.json + - name: ERC721 + file: ERC721Pool/abis/ERC721.json + - name: ERC20Pool + file: ERC721Pool/abis/ERC20Pool.json + - name: ERC721Pool + file: ERC721Pool/abis/ERC721Pool.json + - name: PoolInfoUtils + file: ERC721Pool/abis/PoolInfoUtils.json + - name: PoolInfoUtilsMulticall + file: ERC721Pool/abis/PoolInfoUtilsMulticall.json + eventHandlers: + - event: AddCollateralNFT(indexed address,indexed uint256,uint256[],uint256) + handler: handleAddCollateralNFT + - event: AddQuoteToken(indexed address,indexed uint256,uint256,uint256,uint256) + handler: handleAddQuoteToken + - event: ApproveLPTransferors(indexed address,address[]) + handler: handleApproveLPTransferors + - event: AuctionNFTSettle(indexed address,uint256,uint256,uint256) + handler: handleAuctionNFTSettle + - event: BondWithdrawn(indexed address,indexed address,uint256) + handler: handleBondWithdrawn + - event: BucketBankruptcy(indexed uint256,uint256) + handler: handleBucketBankruptcy + - event: BucketTake(indexed address,uint256,uint256,uint256,uint256,bool) + handler: handleBucketTake + - event: BucketTakeLPAwarded(indexed address,indexed address,uint256,uint256) + handler: handleBucketTakeLPAwarded + - event: DecreaseLPAllowance(indexed address,indexed address,uint256[],uint256[]) + handler: handleDecreaseLPAllowance + - event: DrawDebtNFT(indexed address,uint256,uint256[],uint256) + handler: handleDrawDebtNFT + - event: Flashloan(indexed address,indexed address,uint256) + handler: handleFlashloan + - event: IncreaseLPAllowance(indexed address,indexed address,uint256[],uint256[]) + handler: handleIncreaseLPAllowance + - event: Kick(indexed address,uint256,uint256,uint256) + handler: handleKick + - event: KickReserveAuction(uint256,uint256,uint256) + handler: handleReserveAuctionKick + - event: LoanStamped(indexed address) + handler: handleLoanStamped + - event: MergeOrRemoveCollateralNFT(indexed address,uint256,uint256) + handler: handleMergeOrRemoveCollateralNFT + - event: MoveQuoteToken(indexed address,indexed uint256,indexed + uint256,uint256,uint256,uint256,uint256) + handler: handleMoveQuoteToken + - event: RemoveCollateral(indexed address,indexed uint256,uint256,uint256) + handler: handleRemoveCollateral + - event: RemoveQuoteToken(indexed address,indexed uint256,uint256,uint256,uint256) + handler: handleRemoveQuoteToken + - event: RepayDebt(indexed address,uint256,uint256,uint256) + handler: handleRepayDebt + - event: ReserveAuction(uint256,uint256,uint256) + handler: handleReserveAuctionTake + - event: ResetInterestRate(uint256,uint256) + handler: handleResetInterestRate + - event: RevokeLPAllowance(indexed address,indexed address,uint256[]) + handler: handleRevokeLPAllowance + - event: RevokeLPTransferors(indexed address,address[]) + handler: handleRevokeLPTransferors + - event: Settle(indexed address,uint256) + handler: handleSettle + - event: Take(indexed address,uint256,uint256,uint256,bool) + handler: handleTake + - event: TransferLP(address,address,uint256[],uint256) + handler: handleTransferLP + - event: UpdateInterestRate(uint256,uint256) + handler: handleUpdateInterestRate + file: templates/ERC721Pool/ERC721Pool.wasm + network: mainnet diff --git a/subgraph-build/templates/ERC20Pool/ERC20Pool.wasm b/subgraph-build/templates/ERC20Pool/ERC20Pool.wasm new file mode 100644 index 0000000..391d9bc Binary files /dev/null and b/subgraph-build/templates/ERC20Pool/ERC20Pool.wasm differ diff --git a/subgraph-build/templates/ERC721Pool/ERC721Pool.wasm b/subgraph-build/templates/ERC721Pool/ERC721Pool.wasm new file mode 100644 index 0000000..7d971bc Binary files /dev/null and b/subgraph-build/templates/ERC721Pool/ERC721Pool.wasm differ diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..f4b8852 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,74 @@ +{ + "compilerOptions": { + /* Visit https://aka.ms/tsconfig.json to read more about this file */ + + /* Basic Options */ + // "incremental": true, /* Enable incremental compilation */ + "target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', 'ES2021', or 'ESNEXT'. */ + "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */ + "lib": ["es2019"], /* Specify library files to be included in the compilation. */ + // "allowJs": true, /* Allow javascript files to be compiled. */ + // "checkJs": true, /* Report errors in .js files. */ + // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'. */ + // "declaration": true, /* Generates corresponding '.d.ts' file. */ + // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */ + "sourceMap": true, /* Generates corresponding '.map' file. */ + // "outFile": "./", /* Concatenate and emit output to single file. */ + "outDir": "dist", /* Redirect output structure to the directory. */ + // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ + // "composite": true, /* Enable project compilation */ + // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */ + // "removeComments": true, /* Do not emit comments to output. */ + // "noEmit": true, /* Do not emit outputs. */ + // "importHelpers": true, /* Import emit helpers from 'tslib'. */ + "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ + // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ + + /* Strict Type-Checking Options */ + "strict": true, /* Enable all strict type-checking options. */ + // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */ + // "strictNullChecks": true, /* Enable strict null checks. */ + // "strictFunctionTypes": true, /* Enable strict checking of function types. */ + // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */ + // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ + // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ + // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ + + /* Additional Checks */ + // "noUnusedLocals": true, /* Report errors on unused locals. */ + // "noUnusedParameters": true, /* Report errors on unused parameters. */ + // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ + // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ + // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */ + // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an 'override' modifier. */ + // "noPropertyAccessFromIndexSignature": true, /* Require undeclared properties from index signatures to use element accesses. */ + + /* Module Resolution Options */ + // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ + // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ + // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ + // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ + // "typeRoots": [], /* List of folders to include type definitions from. */ + // "types": [], /* Type declaration files to be included in compilation. */ + // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ + "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ + // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ + // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ + + /* Source Map Options */ + // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ + // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ + // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ + // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ + + /* Experimental Options */ + "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ + // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ + + /* Advanced Options */ + "skipLibCheck": true, /* Skip type checking of declaration files. */ + "forceConsistentCasingInFileNames": true, /* Disallow inconsistently-cased references to the same file. */ + "resolveJsonModule": true /* Enabling the option allows importing JSON, and validating the types in that JSON file. */ + }, + "include": ["src/**/*"] +} diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..af35670 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,7379 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@aashutoshrathi/word-wrap@^1.2.3": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" + integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== + +"@achingbrain/ip-address@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@achingbrain/ip-address/-/ip-address-8.1.0.tgz#24f2e9cd7289e33f433d771b23bea56cfd0242c9" + integrity sha512-Zus4vMKVRDm+R1o0QJNhD0PD/8qRGO3Zx8YPsFG5lANt5utVtGg3iHVGBSAF80TfQmhi8rP+Kg/OigdxY0BXHw== + dependencies: + jsbn "1.1.0" + sprintf-js "1.1.2" + +"@achingbrain/nat-port-mapper@^1.0.3": + version "1.0.13" + resolved "https://registry.yarnpkg.com/@achingbrain/nat-port-mapper/-/nat-port-mapper-1.0.13.tgz#22519833c2d70d48addd551b5cccbf84010ccda5" + integrity sha512-B5GL6ILDek72OjoEyFGEuuNYaEOYxO06Ulhcaf/5iQ4EO8uaZWS+OkolYST7L+ecJrkjfaSNmSAsWRRuh+1Z5A== + dependencies: + "@achingbrain/ssdp" "^4.0.1" + "@libp2p/logger" "^4.0.1" + default-gateway "^7.2.2" + err-code "^3.0.1" + it-first "^3.0.1" + p-defer "^4.0.0" + p-timeout "^6.1.1" + xml2js "^0.6.0" + +"@achingbrain/ssdp@^4.0.1": + version "4.0.6" + resolved "https://registry.yarnpkg.com/@achingbrain/ssdp/-/ssdp-4.0.6.tgz#eca66ac260dcfcfcb237d7a58e63c3c8e87591b4" + integrity sha512-Y4JE2L9150i50V6lg/Y8+ilhxRpUZKKv+PKo68Aj7MjPfaUAar6ZHilF9h4/Zb3q0fqGMXNc9o11cQLNI8J8bA== + dependencies: + event-iterator "^2.0.0" + freeport-promise "^2.0.0" + merge-options "^3.0.4" + xml2js "^0.6.2" + +"@apollo/client@^3.3.19", "@apollo/client@^3.7.1": + version "3.9.7" + resolved "https://registry.yarnpkg.com/@apollo/client/-/client-3.9.7.tgz#e2b6f2d0240a6420753fb658a021dfd0637f2a56" + integrity sha512-OEEwt55bkFhqihCT5d75KUxZt50JZ9MuIYwG7VZlyPPIAb9K+qzVWlXWlf3tB5DaV43yXkUSLQfNpdIBFOB55Q== + dependencies: + "@graphql-typed-document-node/core" "^3.1.1" + "@wry/caches" "^1.0.0" + "@wry/equality" "^0.5.6" + "@wry/trie" "^0.5.0" + graphql-tag "^2.12.6" + hoist-non-react-statics "^3.3.2" + optimism "^0.18.0" + prop-types "^15.7.2" + rehackt "0.0.6" + response-iterator "^0.2.6" + symbol-observable "^4.0.0" + ts-invariant "^0.10.3" + tslib "^2.3.0" + zen-observable-ts "^1.2.5" + +"@apollo/protobufjs@1.2.6": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@apollo/protobufjs/-/protobufjs-1.2.6.tgz#d601e65211e06ae1432bf5993a1a0105f2862f27" + integrity sha512-Wqo1oSHNUj/jxmsVp4iR3I480p6qdqHikn38lKrFhfzcDJ7lwd7Ck7cHRl4JE81tWNArl77xhnG/OkZhxKBYOw== + dependencies: + "@protobufjs/aspromise" "^1.1.2" + "@protobufjs/base64" "^1.1.2" + "@protobufjs/codegen" "^2.0.4" + "@protobufjs/eventemitter" "^1.1.0" + "@protobufjs/fetch" "^1.1.0" + "@protobufjs/float" "^1.0.2" + "@protobufjs/inquire" "^1.1.0" + "@protobufjs/path" "^1.1.2" + "@protobufjs/pool" "^1.1.0" + "@protobufjs/utf8" "^1.1.0" + "@types/long" "^4.0.0" + "@types/node" "^10.1.0" + long "^4.0.0" + +"@apollo/protobufjs@1.2.7": + version "1.2.7" + resolved "https://registry.yarnpkg.com/@apollo/protobufjs/-/protobufjs-1.2.7.tgz#3a8675512817e4a046a897e5f4f16415f16a7d8a" + integrity sha512-Lahx5zntHPZia35myYDBRuF58tlwPskwHc5CWBZC/4bMKB6siTBWwtMrkqXcsNwQiFSzSx5hKdRPUmemrEp3Gg== + dependencies: + "@protobufjs/aspromise" "^1.1.2" + "@protobufjs/base64" "^1.1.2" + "@protobufjs/codegen" "^2.0.4" + "@protobufjs/eventemitter" "^1.1.0" + "@protobufjs/fetch" "^1.1.0" + "@protobufjs/float" "^1.0.2" + "@protobufjs/inquire" "^1.1.0" + "@protobufjs/path" "^1.1.2" + "@protobufjs/pool" "^1.1.0" + "@protobufjs/utf8" "^1.1.0" + "@types/long" "^4.0.0" + long "^4.0.0" + +"@apollo/usage-reporting-protobuf@^4.0.0": + version "4.1.1" + resolved "https://registry.yarnpkg.com/@apollo/usage-reporting-protobuf/-/usage-reporting-protobuf-4.1.1.tgz#407c3d18c7fbed7a264f3b9a3812620b93499de1" + integrity sha512-u40dIUePHaSKVshcedO7Wp+mPiZsaU6xjv9J+VyxpoU/zL6Jle+9zWeG98tr/+SZ0nZ4OXhrbb8SNr0rAPpIDA== + dependencies: + "@apollo/protobufjs" "1.2.7" + +"@apollo/utils.dropunuseddefinitions@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@apollo/utils.dropunuseddefinitions/-/utils.dropunuseddefinitions-1.1.0.tgz#02b04006442eaf037f4c4624146b12775d70d929" + integrity sha512-jU1XjMr6ec9pPoL+BFWzEPW7VHHulVdGKMkPAMiCigpVIT11VmCbnij0bWob8uS3ODJ65tZLYKAh/55vLw2rbg== + +"@apollo/utils.keyvaluecache@^1.0.1": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@apollo/utils.keyvaluecache/-/utils.keyvaluecache-1.0.2.tgz#2bfe358c4d82f3a0950518451996758c52613f57" + integrity sha512-p7PVdLPMnPzmXSQVEsy27cYEjVON+SH/Wb7COyW3rQN8+wJgT1nv9jZouYtztWW8ZgTkii5T6tC9qfoDREd4mg== + dependencies: + "@apollo/utils.logger" "^1.0.0" + lru-cache "7.10.1 - 7.13.1" + +"@apollo/utils.logger@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@apollo/utils.logger/-/utils.logger-1.0.1.tgz#aea0d1bb7ceb237f506c6bbf38f10a555b99a695" + integrity sha512-XdlzoY7fYNK4OIcvMD2G94RoFZbzTQaNP0jozmqqMudmaGo2I/2Jx71xlDJ801mWA/mbYRihyaw6KJii7k5RVA== + +"@apollo/utils.printwithreducedwhitespace@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@apollo/utils.printwithreducedwhitespace/-/utils.printwithreducedwhitespace-1.1.0.tgz#c466299a4766eef8577a2a64c8f27712e8bd7e30" + integrity sha512-GfFSkAv3n1toDZ4V6u2d7L4xMwLA+lv+6hqXicMN9KELSJ9yy9RzuEXaX73c/Ry+GzRsBy/fdSUGayGqdHfT2Q== + +"@apollo/utils.removealiases@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@apollo/utils.removealiases/-/utils.removealiases-1.0.0.tgz#75f6d83098af1fcae2d3beb4f515ad4a8452a8c1" + integrity sha512-6cM8sEOJW2LaGjL/0vHV0GtRaSekrPQR4DiywaApQlL9EdROASZU5PsQibe2MWeZCOhNrPRuHh4wDMwPsWTn8A== + +"@apollo/utils.sortast@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@apollo/utils.sortast/-/utils.sortast-1.1.0.tgz#93218c7008daf3e2a0725196085a33f5aab5ad07" + integrity sha512-VPlTsmUnOwzPK5yGZENN069y6uUHgeiSlpEhRnLFYwYNoJHsuJq2vXVwIaSmts015WTPa2fpz1inkLYByeuRQA== + dependencies: + lodash.sortby "^4.7.0" + +"@apollo/utils.stripsensitiveliterals@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@apollo/utils.stripsensitiveliterals/-/utils.stripsensitiveliterals-1.2.0.tgz#4920651f36beee8e260e12031a0c5863ad0c7b28" + integrity sha512-E41rDUzkz/cdikM5147d8nfCFVKovXxKBcjvLEQ7bjZm/cg9zEcXvS6vFY8ugTubI3fn6zoqo0CyU8zT+BGP9w== + +"@apollo/utils.usagereporting@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@apollo/utils.usagereporting/-/utils.usagereporting-1.0.1.tgz#3c70b49e554771659576fe35381c7a4b321d27fd" + integrity sha512-6dk+0hZlnDbahDBB2mP/PZ5ybrtCJdLMbeNJD+TJpKyZmSY6bA3SjI8Cr2EM9QA+AdziywuWg+SgbWUF3/zQqQ== + dependencies: + "@apollo/usage-reporting-protobuf" "^4.0.0" + "@apollo/utils.dropunuseddefinitions" "^1.1.0" + "@apollo/utils.printwithreducedwhitespace" "^1.1.0" + "@apollo/utils.removealiases" "1.0.0" + "@apollo/utils.sortast" "^1.1.0" + "@apollo/utils.stripsensitiveliterals" "^1.2.0" + +"@apollographql/apollo-tools@^0.5.3": + version "0.5.4" + resolved "https://registry.yarnpkg.com/@apollographql/apollo-tools/-/apollo-tools-0.5.4.tgz#cb3998c6cf12e494b90c733f44dd9935e2d8196c" + integrity sha512-shM3q7rUbNyXVVRkQJQseXv6bnYM3BUma/eZhwXR4xsuM+bqWnJKvW7SAfRjP7LuSCocrexa5AXhjjawNHrIlw== + +"@apollographql/graphql-playground-html@1.6.29": + version "1.6.29" + resolved "https://registry.yarnpkg.com/@apollographql/graphql-playground-html/-/graphql-playground-html-1.6.29.tgz#a7a646614a255f62e10dcf64a7f68ead41dec453" + integrity sha512-xCcXpoz52rI4ksJSdOCxeOCn2DLocxwHf9dVT/Q90Pte1LX+LY+91SFtJF3KXVHH8kEin+g1KKCQPKBjZJfWNA== + dependencies: + xss "^1.0.8" + +"@cerc-io/assemblyscript@0.19.10-watcher-ts-0.1.2": + version "0.19.10-watcher-ts-0.1.2" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fassemblyscript/-/0.19.10-watcher-ts-0.1.2/assemblyscript-0.19.10-watcher-ts-0.1.2.tgz#c6a20eeddca44ddb08994831845c0b172433566b" + integrity sha512-iovY7xoH5ZMGQZgsK/Wy8175AN2z6I0WUnzEWaxykkAFQUvnErgiw/Y4crkcOb/fDp8gslRfTeEFtR90m1AyPA== + dependencies: + asyncify-wasm "^1.2.1" + binaryen "101.0.0-nightly.20210723" + long "^4.0.0" + +"@cerc-io/cache@^0.2.82": + version "0.2.82" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fcache/-/0.2.82/cache-0.2.82.tgz#b3ccc72047e9fd59f8cfe1e6d55a7139e0b61b7b" + integrity sha512-auQhFYShmn6KaV27WcLqhPhsMjr8s/adThLpg2MYqlR880YNPx9WSXK0gku3xBej4XIXBurZy/QkMq4A3IF2vw== + dependencies: + canonical-json "^0.0.4" + debug "^4.3.1" + ethers "^5.4.4" + fs-extra "^10.0.0" + level "^7.0.0" + +"@cerc-io/cli@^0.2.82": + version "0.2.82" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fcli/-/0.2.82/cli-0.2.82.tgz#783782cfb60fe302d6ca2fa151d49f9fec53302e" + integrity sha512-d86uMh2mXo+ZPT9Jr9qMdQZ2q7ZeGv1xyGpJD/42XK+jf5t59ZjAzK2MxNgzEe/vYghiRdsg3+sJPA8wKmR6Bg== + dependencies: + "@apollo/client" "^3.7.1" + "@cerc-io/cache" "^0.2.82" + "@cerc-io/ipld-eth-client" "^0.2.82" + "@cerc-io/libp2p" "^0.42.2-laconic-0.1.4" + "@cerc-io/nitro-node" "^0.1.15" + "@cerc-io/peer" "^0.2.82" + "@cerc-io/rpc-eth-client" "^0.2.82" + "@cerc-io/util" "^0.2.82" + "@ethersproject/providers" "^5.4.4" + "@graphql-tools/utils" "^9.1.1" + "@ipld/dag-cbor" "^8.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + apollo-server-express "^3.11.1" + debug "^4.3.1" + ethers "^5.4.4" + express "^4.18.2" + graphql "^15.5.0" + graphql-request "^6.1.0" + graphql-subscriptions "^2.0.0" + http-proxy-middleware "^2.0.6" + js-yaml "^4.0.0" + json-diff "^0.5.4" + lodash "^4.17.21" + pluralize "^8.0.0" + reflect-metadata "^0.1.13" + typeorm "0.2.37" + yargs "^17.0.1" + +"@cerc-io/graph-node@^0.2.82": + version "0.2.82" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fgraph-node/-/0.2.82/graph-node-0.2.82.tgz#9e62dd7bf5497f014fc253d97cb6fee7c862a9ba" + integrity sha512-2b1/0CR0BBDWB/KIIxtM9vg2iHxPCNFN/XnEyumzmLXDgSwlNZkYLcPHWANK/X8nH3x8eqEA4BBfl0hDT9tnww== + dependencies: + "@apollo/client" "^3.3.19" + "@cerc-io/assemblyscript" "0.19.10-watcher-ts-0.1.2" + "@cerc-io/cache" "^0.2.82" + "@cerc-io/ipld-eth-client" "^0.2.82" + "@cerc-io/util" "^0.2.82" + "@types/json-diff" "^0.5.2" + "@types/yargs" "^17.0.0" + bn.js "^4.11.9" + debug "^4.3.1" + fs-extra "^10.0.0" + graphql "^15.5.0" + json-diff "^0.5.4" + lodash "^4.17.21" + omit-deep "^0.3.0" + pluralize "^8.0.0" + reflect-metadata "^0.1.13" + toml "^3.0.0" + typeorm "0.2.37" + typeorm-naming-strategies "^2.0.0" + yargs "^17.0.1" + +"@cerc-io/ipld-eth-client@^0.2.82": + version "0.2.82" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fipld-eth-client/-/0.2.82/ipld-eth-client-0.2.82.tgz#2d682ab8cdfc99d6b37cc2af6ee168f002b4639e" + integrity sha512-dbZ7n1TxVdwQ56T+KcE/Ac2bFWZXFkTCcs5fH5hlpUc4HyZI86MZ5IuaaNco4BBHYXUABntESWtvlx4cepeZCg== + dependencies: + "@apollo/client" "^3.7.1" + "@cerc-io/cache" "^0.2.82" + "@cerc-io/util" "^0.2.82" + cross-fetch "^3.1.4" + debug "^4.3.1" + ethers "^5.4.4" + graphql "^15.5.0" + graphql-ws "^5.11.2" + left-pad "^1.3.0" + ws "^8.11.0" + zen-observable-ts "^1.1.0" + +"@cerc-io/libp2p@0.42.2-laconic-0.1.4", "@cerc-io/libp2p@^0.42.2-laconic-0.1.4": + version "0.42.2-laconic-0.1.4" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Flibp2p/-/0.42.2-laconic-0.1.4/libp2p-0.42.2-laconic-0.1.4.tgz#ac9347e70d6d3cee040ad02074cae3070b91a8fb" + integrity sha512-gTC62YvkK3P7cWlaH8gQ6lDbqusNiaYI1q7y/+vQ/1s35uStwRn7fvXHC0aY9s36L4S3p1S0sxDzGXM8rtg6+w== + dependencies: + "@achingbrain/nat-port-mapper" "^1.0.3" + "@libp2p/crypto" "^1.0.4" + "@libp2p/interface-address-manager" "^2.0.0" + "@libp2p/interface-connection" "^3.0.2" + "@libp2p/interface-connection-encrypter" "^3.0.1" + "@libp2p/interface-connection-manager" "^1.1.1" + "@libp2p/interface-content-routing" "^2.0.0" + "@libp2p/interface-dht" "^2.0.0" + "@libp2p/interface-keychain" "^2.0.4" + "@libp2p/interface-libp2p" "^1.0.0" + "@libp2p/interface-metrics" "^4.0.0" + "@libp2p/interface-peer-discovery" "^1.0.1" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-peer-info" "^1.0.3" + "@libp2p/interface-peer-routing" "^1.0.1" + "@libp2p/interface-peer-store" "^1.2.2" + "@libp2p/interface-pubsub" "^3.0.0" + "@libp2p/interface-registrar" "^2.0.3" + "@libp2p/interface-stream-muxer" "^3.0.0" + "@libp2p/interface-transport" "^2.1.0" + "@libp2p/interfaces" "^3.0.3" + "@libp2p/keychain" "^1.0.0" + "@libp2p/logger" "^2.0.1" + "@libp2p/multistream-select" "^3.0.0" + "@libp2p/peer-collections" "^3.0.0" + "@libp2p/peer-id" "^2.0.0" + "@libp2p/peer-id-factory" "^2.0.0" + "@libp2p/peer-record" "^5.0.0" + "@libp2p/peer-store" "^6.0.0" + "@libp2p/tracked-map" "^3.0.0" + "@libp2p/utils" "^3.0.2" + "@libp2p/webrtc-peer" "^2.0.2" + "@multiformats/mafmt" "^11.0.2" + "@multiformats/multiaddr" "^11.0.0" + abortable-iterator "^4.0.2" + any-signal "^3.0.0" + datastore-core "^8.0.1" + err-code "^3.0.1" + interface-datastore "^7.0.0" + it-all "^2.0.0" + it-drain "^2.0.0" + it-filter "^2.0.0" + it-first "^2.0.0" + it-handshake "^4.1.2" + it-length-prefixed "^8.0.2" + it-map "^2.0.0" + it-merge "^2.0.0" + it-pair "^2.0.2" + it-pipe "^2.0.3" + it-pushable "^3.1.2" + it-sort "^2.0.1" + it-stream-types "^1.0.4" + merge-options "^3.0.4" + multiformats "^11.0.0" + p-fifo "^1.0.0" + p-settle "^5.0.0" + private-ip "^3.0.0" + protons-runtime "^4.0.1" + rate-limiter-flexible "^2.3.11" + retimer "^3.0.0" + set-delayed-interval "^1.0.0" + timeout-abort-controller "^3.0.0" + uint8arraylist "^2.3.2" + uint8arrays "^4.0.2" + wherearewe "^2.0.0" + xsalsa20 "^1.1.0" + +"@cerc-io/nitro-node@^0.1.15": + version "0.1.15" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fnitro-node/-/0.1.15/nitro-node-0.1.15.tgz#c36c48591fd5615768cf31eb17510b86f232bd49" + integrity sha512-wE8tWD7m8lZ3TEMnaI19YOiJLA8Sm9UOHsPKzzjCE2xIJ0X5HmSW4qi6BJEGd8VnlFGbBDXzG+O2DBYUWRpi2g== + dependencies: + "@cerc-io/libp2p" "0.42.2-laconic-0.1.4" + "@cerc-io/nitro-util" "^0.1.15" + "@cerc-io/peer" "^0.2.65" + "@cerc-io/ts-channel" "1.0.3-ts-nitro-0.1.1" + "@jpwilliams/waitgroup" "^2.1.0" + "@libp2p/crypto" "^1.0.4" + "@libp2p/tcp" "^6.0.0" + "@multiformats/multiaddr" "^11.1.4" + "@statechannels/nitro-protocol" "^2.0.1-alpha.5" + assert "^2.0.0" + async-mutex "^0.4.0" + debug "^4.3.4" + ethers "^5.7.2" + heap "^0.2.7" + it-pipe "^2.0.5" + level "^8.0.0" + lodash "^4.17.21" + path-browserify "^1.0.1" + promjs "^0.4.2" + uint8arrays "^4.0.3" + +"@cerc-io/nitro-util@^0.1.15": + version "0.1.15" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fnitro-util/-/0.1.15/nitro-util-0.1.15.tgz#693dcb9642ebab490f9c2088fbe490fb6ecfb438" + integrity sha512-ByFq+Ne8dUp2omvm2Wui19r22CvXmdIJeAnN+8BhCU/B0e01zHgPhoaoQ3FX5F/NFG7+eiuFHpVdmBRq+cbnUA== + dependencies: + "@cerc-io/ts-channel" "1.0.3-ts-nitro-0.1.1" + "@statechannels/nitro-protocol" "^2.0.1-alpha.5" + assert "^2.0.0" + debug "^4.3.4" + ethers "^5.7.2" + it-pipe "^3.0.1" + json-bigint "^1.0.0" + lodash "^4.17.21" + uint8arrays "^4.0.3" + +"@cerc-io/peer@^0.2.65", "@cerc-io/peer@^0.2.82": + version "0.2.82" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fpeer/-/0.2.82/peer-0.2.82.tgz#e27a1cafd06c25f9c4e02d49d4615f45a76ce22b" + integrity sha512-wKkBXO7hxuN13Av60otDj+2O7nyoogYp+n8uTKNU9cv6J87OLRUZZAuGb5FggUONgDqxS3cyaXD6vqLpkhbbIA== + dependencies: + "@cerc-io/libp2p" "^0.42.2-laconic-0.1.4" + "@cerc-io/prometheus-metrics" "1.1.4" + "@chainsafe/libp2p-gossipsub" "^6.0.0" + "@chainsafe/libp2p-noise" "^11.0.0" + "@chainsafe/libp2p-yamux" "3.0.7" + "@libp2p/floodsub" "^6.0.0" + "@libp2p/mplex" "^7.1.1" + "@libp2p/peer-id-factory" "^2.0.0" + "@libp2p/pubsub-peer-discovery" "^8.0.0" + "@libp2p/websockets" "^5.0.5" + "@multiformats/multiaddr" "^11.1.4" + assert "^2.0.0" + buffer "^6.0.3" + chai "^4.3.4" + debug "^4.3.1" + it-length-prefixed "^8.0.4" + it-map "^2.0.0" + it-pipe "^2.0.5" + it-pushable "^3.1.2" + mocha "^8.4.0" + p-event "^5.0.1" + uint8arrays "^4.0.3" + unique-names-generator "^4.7.1" + yargs "^17.0.1" + +"@cerc-io/prometheus-metrics@1.1.4": + version "1.1.4" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fprometheus-metrics/-/1.1.4/prometheus-metrics-1.1.4.tgz#51006b0b5bf6168394390c78072a1c0bb2b02f28" + integrity sha512-Mqg7o1Wer8zKv3/0NWB1sCMmW8hyYI0Fw58d/MR62+5EDZ2yPhwMUrLZUhyqdo3qXJzxMylAPSVx8URDcthmKA== + dependencies: + "@libp2p/interface-connection" "^3.0.2" + "@libp2p/interface-metrics" "^4.0.2" + "@libp2p/logger" "^2.0.2" + it-foreach "^1.0.0" + it-stream-types "^1.0.4" + promjs "^0.4.2" + +"@cerc-io/rpc-eth-client@^0.2.82": + version "0.2.82" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Frpc-eth-client/-/0.2.82/rpc-eth-client-0.2.82.tgz#44d58f22f8375adf4bf167a314691368cfa74b06" + integrity sha512-ndMkbOORQ6qs8zi+yIOU3btTXC1aVjzg+pCtNR62ieVZDJYTCXCD6kmZB4vx340PHnH2f5+51N9n/icY6CU0pQ== + dependencies: + "@cerc-io/cache" "^0.2.82" + "@cerc-io/ipld-eth-client" "^0.2.82" + "@cerc-io/util" "^0.2.82" + chai "^4.3.4" + ethers "^5.4.4" + left-pad "^1.3.0" + mocha "^8.4.0" + +"@cerc-io/solidity-mapper@^0.2.82": + version "0.2.82" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fsolidity-mapper/-/0.2.82/solidity-mapper-0.2.82.tgz#1ba9d41ac28c1963748d198bf400bae98e156342" + integrity sha512-braGSAB+iuIwwnpBWuSUtw0bhSEFMKKE6cYMr0O6Aj3NVLowmjrENKqCYDG6XwRpUKZheAgUUd8GJ5Dush412Q== + dependencies: + dotenv "^10.0.0" + +"@cerc-io/ts-channel@1.0.3-ts-nitro-0.1.1": + version "1.0.3-ts-nitro-0.1.1" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fts-channel/-/1.0.3-ts-nitro-0.1.1/ts-channel-1.0.3-ts-nitro-0.1.1.tgz#0768781313a167295c0bf21307f47e02dc17e936" + integrity sha512-2jFICUSyffuZ+8+qRhXuLSJq4GJ6Y02wxiXoubH0Kzv2lIKkJtWICY1ZQQhtXAvP0ncAQB85WJHqtqwH8l7J3Q== + +"@cerc-io/util@^0.2.82": + version "0.2.82" + resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Futil/-/0.2.82/util-0.2.82.tgz#aa0646bd4276ac5afa6789459eb78b88a4f170a5" + integrity sha512-rqcc5k7KEb261vxuNRD/+agYvp1CJjhWFohNGroxpQcP6be21PRh/Evm2wdqYq75GgN9suQooCdmsXsdXlMgXA== + dependencies: + "@apollo/utils.keyvaluecache" "^1.0.1" + "@cerc-io/nitro-node" "^0.1.15" + "@cerc-io/peer" "^0.2.82" + "@cerc-io/solidity-mapper" "^0.2.82" + "@cerc-io/ts-channel" "1.0.3-ts-nitro-0.1.1" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/providers" "^5.4.4" + "@ethersproject/web" "^5.7.1" + "@graphql-tools/schema" "^9.0.10" + "@graphql-tools/utils" "^9.1.1" + "@ipld/dag-cbor" "^6.0.12" + "@libp2p/interface-connection" "^3.0.2" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/peer-id" "^2.0.0" + apollo-server-core "^3.11.1" + apollo-server-express "^3.11.1" + apollo-server-plugin-response-cache "^3.8.1" + apollo-type-bigint "^0.1.3" + bunyan "^1.8.15" + debug "^4.3.1" + decimal.js "^10.3.1" + ethers "^5.4.4" + express "^4.18.2" + express-queue "^0.0.13" + fs-extra "^10.0.0" + graphql "^15.5.0" + graphql-subscriptions "^2.0.0" + graphql-ws "^5.11.2" + ipfs-http-client "^56.0.3" + it-length-prefixed "^8.0.4" + it-pipe "^2.0.5" + it-pushable "^3.1.2" + js-yaml "^4.1.0" + json-bigint "^1.0.0" + lodash "^4.17.21" + lru-cache "^10.0.0" + mokka "^1.4.2" + multiformats "^9.4.8" + pg "^8.5.1" + pg-boss "^6.1.0" + prom-client "^14.0.1" + toml "^3.0.0" + typeorm "0.2.37" + typeorm-naming-strategies "^2.0.0" + ws "^8.11.0" + yargs "^17.0.1" + +"@chainsafe/is-ip@^2.0.1": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@chainsafe/is-ip/-/is-ip-2.0.2.tgz#7311e7403f11d8c5cfa48111f56fcecaac37c9f6" + integrity sha512-ndGqEMG1W5WkGagaqOZHpPU172AGdxr+LD15sv3WIUvT5oCFUrG1Y0CW/v2Egwj4JXEvSibaIIIqImsm98y1nA== + +"@chainsafe/libp2p-gossipsub@^6.0.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@chainsafe/libp2p-gossipsub/-/libp2p-gossipsub-6.3.0.tgz#0ef8b8548a4c8307233b01dfb23bfa605df6b0e2" + integrity sha512-yRgMB5JpyPROjmhOeOmzJUAKci19qBEnpH80201f8JkkviUJo7+X8i3MUkammlbFg0VhaTKBT98Osbko9+rT1w== + dependencies: + "@libp2p/crypto" "^1.0.3" + "@libp2p/interface-connection" "^4.0.0" + "@libp2p/interface-connection-manager" "^1.3.0" + "@libp2p/interface-keys" "^1.0.3" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-peer-store" "^1.2.2" + "@libp2p/interface-pubsub" "^3.0.0" + "@libp2p/interface-registrar" "^2.0.3" + "@libp2p/interfaces" "^3.2.0" + "@libp2p/logger" "^2.0.0" + "@libp2p/peer-id" "^2.0.0" + "@libp2p/peer-record" "^5.0.0" + "@libp2p/pubsub" "^6.0.0" + "@libp2p/topology" "^4.0.0" + "@multiformats/multiaddr" "^12.0.0" + abortable-iterator "^4.0.2" + denque "^1.5.0" + it-length-prefixed "^8.0.2" + it-pipe "^2.0.4" + it-pushable "^3.1.0" + multiformats "^11.0.0" + protobufjs "^6.11.2" + uint8arraylist "^2.3.2" + uint8arrays "^4.0.2" + +"@chainsafe/libp2p-noise@^11.0.0": + version "11.0.4" + resolved "https://registry.yarnpkg.com/@chainsafe/libp2p-noise/-/libp2p-noise-11.0.4.tgz#b4806e7605e44fa279130c60a95faad13ed01d93" + integrity sha512-X7kA6a3/QPFxNFwgUJ8vubDu5qBDcDT0nhD+jL7g60IFKZu//HFH7oqsNCZa12yx0oR1fEYOR62iHDt2GHyWBQ== + dependencies: + "@libp2p/crypto" "^1.0.11" + "@libp2p/interface-connection-encrypter" "^3.0.5" + "@libp2p/interface-keys" "^1.0.6" + "@libp2p/interface-metrics" "^4.0.4" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/logger" "^2.0.5" + "@libp2p/peer-id" "^2.0.0" + "@stablelib/chacha20poly1305" "^1.0.1" + "@stablelib/hkdf" "^1.0.1" + "@stablelib/sha256" "^1.0.1" + "@stablelib/x25519" "^1.0.3" + it-length-prefixed "^8.0.2" + it-pair "^2.0.2" + it-pb-stream "^3.2.0" + it-pipe "^2.0.3" + it-stream-types "^1.0.4" + protons-runtime "^5.0.0" + uint8arraylist "^2.3.2" + uint8arrays "^4.0.2" + +"@chainsafe/libp2p-yamux@3.0.7": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@chainsafe/libp2p-yamux/-/libp2p-yamux-3.0.7.tgz#345d620097c6ac07fcbeb5910da18b3ed974337c" + integrity sha512-fp59/7Xzws+4Nz4TUS+5Z/lkwk+9IW6GsU6wPJVaGInxf5tl4qQ5S8TLql23CEGbuvbToqMEdNLVAtE+M2Lvng== + dependencies: + "@libp2p/interface-connection" "^3.0.1" + "@libp2p/interface-stream-muxer" "^3.0.0" + "@libp2p/interfaces" "^3.2.0" + "@libp2p/logger" "^2.0.1" + abortable-iterator "^4.0.2" + any-signal "^3.0.1" + it-pipe "^2.0.4" + it-pushable "^3.1.0" + uint8arraylist "^2.3.2" + +"@chainsafe/netmask@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@chainsafe/netmask/-/netmask-2.0.0.tgz#0d4a75f47919f65011da4327a3845c9661f1038a" + integrity sha512-I3Z+6SWUoaljh3TBzCnCxjlUyN8tA+NAk5L6m9IxvCf1BENQTePzPMis97CoN/iMW1St3WN+AWCCRp+TTBRiDg== + dependencies: + "@chainsafe/is-ip" "^2.0.1" + +"@cspotcode/source-map-support@^0.8.0": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" + integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== + dependencies: + "@jridgewell/trace-mapping" "0.3.9" + +"@eslint-community/eslint-utils@^4.2.0": + version "4.4.0" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" + integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== + dependencies: + eslint-visitor-keys "^3.3.0" + +"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": + version "4.10.0" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63" + integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA== + +"@eslint/eslintrc@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad" + integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^9.6.0" + globals "^13.19.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.0" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + +"@eslint/js@8.57.0": + version "8.57.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f" + integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g== + +"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.3.0", "@ethersproject/abi@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/address@5.7.0", "@ethersproject/address@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/contracts@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/networks@5.7.1", "@ethersproject/networks@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/providers@5.7.2", "@ethersproject/providers@^5.4.4": + version "5.7.2" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.2.tgz#f8b1a4f275d7ce58cf0a2eec222269a08beb18cb" + integrity sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.7.0", "@ethersproject/random@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/units@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/web@5.7.1", "@ethersproject/web@^5.7.0", "@ethersproject/web@^5.7.1": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@fastify/busboy@^2.0.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.1.1.tgz#b9da6a878a371829a0502c9b6c1c143ef6663f4d" + integrity sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA== + +"@graphql-tools/merge@8.3.1": + version "8.3.1" + resolved "https://registry.yarnpkg.com/@graphql-tools/merge/-/merge-8.3.1.tgz#06121942ad28982a14635dbc87b5d488a041d722" + integrity sha512-BMm99mqdNZbEYeTPK3it9r9S6rsZsQKtlqJsSBknAclXq2pGEfOxjcIZi+kBSkHZKPKCRrYDd5vY0+rUmIHVLg== + dependencies: + "@graphql-tools/utils" "8.9.0" + tslib "^2.4.0" + +"@graphql-tools/merge@^8.4.1": + version "8.4.2" + resolved "https://registry.yarnpkg.com/@graphql-tools/merge/-/merge-8.4.2.tgz#95778bbe26b635e8d2f60ce9856b388f11fe8288" + integrity sha512-XbrHAaj8yDuINph+sAfuq3QCZ/tKblrTLOpirK0+CAgNlZUCHs0Fa+xtMUURgwCVThLle1AF7svJCxFizygLsw== + dependencies: + "@graphql-tools/utils" "^9.2.1" + tslib "^2.4.0" + +"@graphql-tools/mock@^8.1.2": + version "8.7.20" + resolved "https://registry.yarnpkg.com/@graphql-tools/mock/-/mock-8.7.20.tgz#c83ae0f1940d194a3982120c9c85f3ac6b4f7f20" + integrity sha512-ljcHSJWjC/ZyzpXd5cfNhPI7YljRVvabKHPzKjEs5ElxWu2cdlLGvyNYepApXDsM/OJG/2xuhGM+9GWu5gEAPQ== + dependencies: + "@graphql-tools/schema" "^9.0.18" + "@graphql-tools/utils" "^9.2.1" + fast-json-stable-stringify "^2.1.0" + tslib "^2.4.0" + +"@graphql-tools/schema@^8.0.0": + version "8.5.1" + resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-8.5.1.tgz#c2f2ff1448380919a330312399c9471db2580b58" + integrity sha512-0Esilsh0P/qYcB5DKQpiKeQs/jevzIadNTaT0jeWklPMwNbT7yMX4EqZany7mbeRRlSRwMzNzL5olyFdffHBZg== + dependencies: + "@graphql-tools/merge" "8.3.1" + "@graphql-tools/utils" "8.9.0" + tslib "^2.4.0" + value-or-promise "1.0.11" + +"@graphql-tools/schema@^9.0.10", "@graphql-tools/schema@^9.0.18": + version "9.0.19" + resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-9.0.19.tgz#c4ad373b5e1b8a0cf365163435b7d236ebdd06e7" + integrity sha512-oBRPoNBtCkk0zbUsyP4GaIzCt8C0aCI4ycIRUL67KK5pOHljKLBBtGT+Jr6hkzA74C8Gco8bpZPe7aWFjiaK2w== + dependencies: + "@graphql-tools/merge" "^8.4.1" + "@graphql-tools/utils" "^9.2.1" + tslib "^2.4.0" + value-or-promise "^1.0.12" + +"@graphql-tools/utils@8.9.0": + version "8.9.0" + resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-8.9.0.tgz#c6aa5f651c9c99e1aca55510af21b56ec296cdb7" + integrity sha512-pjJIWH0XOVnYGXCqej8g/u/tsfV4LvLlj0eATKQu5zwnxd/TiTHq7Cg313qUPTFFHZ3PP5wJ15chYVtLDwaymg== + dependencies: + tslib "^2.4.0" + +"@graphql-tools/utils@^9.1.1", "@graphql-tools/utils@^9.2.1": + version "9.2.1" + resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-9.2.1.tgz#1b3df0ef166cfa3eae706e3518b17d5922721c57" + integrity sha512-WUw506Ql6xzmOORlriNrD6Ugx+HjVgYxt9KCXD9mHAak+eaXSwuGGPyE60hy9xaDEoXKBsG7SkG69ybitaVl6A== + dependencies: + "@graphql-typed-document-node/core" "^3.1.1" + tslib "^2.4.0" + +"@graphql-typed-document-node/core@^3.1.1", "@graphql-typed-document-node/core@^3.2.0": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.2.0.tgz#5f3d96ec6b2354ad6d8a28bf216a1d97b5426861" + integrity sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ== + +"@humanwhocodes/config-array@^0.11.14": + version "0.11.14" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b" + integrity sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg== + dependencies: + "@humanwhocodes/object-schema" "^2.0.2" + debug "^4.3.1" + minimatch "^3.0.5" + +"@humanwhocodes/module-importer@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== + +"@humanwhocodes/object-schema@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz#d9fae00a2d5cb40f92cfe64b47ad749fbc38f917" + integrity sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw== + +"@ipld/dag-cbor@^6.0.12", "@ipld/dag-cbor@^6.0.3": + version "6.0.15" + resolved "https://registry.yarnpkg.com/@ipld/dag-cbor/-/dag-cbor-6.0.15.tgz#aebe7a26c391cae98c32faedb681b1519e3d2372" + integrity sha512-Vm3VTSTwlmGV92a3C5aeY+r2A18zbH2amehNhsX8PBa3muXICaWrN8Uri85A5hLH7D7ElhE8PdjxD6kNqUmTZA== + dependencies: + cborg "^1.5.4" + multiformats "^9.5.4" + +"@ipld/dag-cbor@^7.0.0": + version "7.0.3" + resolved "https://registry.yarnpkg.com/@ipld/dag-cbor/-/dag-cbor-7.0.3.tgz#aa31b28afb11a807c3d627828a344e5521ac4a1e" + integrity sha512-1VVh2huHsuohdXC1bGJNE8WR72slZ9XE2T3wbBBq31dm7ZBatmKLLxrB+XAqafxfRFjv08RZmj/W/ZqaM13AuA== + dependencies: + cborg "^1.6.0" + multiformats "^9.5.4" + +"@ipld/dag-cbor@^8.0.0": + version "8.0.1" + resolved "https://registry.yarnpkg.com/@ipld/dag-cbor/-/dag-cbor-8.0.1.tgz#3042c219dd85a71d66ca6946fb6c7b6f0d519369" + integrity sha512-mHRuzgGXNk0Y5W7nNQdN37qJiig1Kdgf92icBVFRUNtBc9Ezl5DIdWfiGWBucHBrhqPBncxoH3As9cHPIRozxA== + dependencies: + cborg "^1.6.0" + multiformats "^11.0.0" + +"@ipld/dag-json@^8.0.1": + version "8.0.11" + resolved "https://registry.yarnpkg.com/@ipld/dag-json/-/dag-json-8.0.11.tgz#8d30cc2dfacb0aef04d327465d3df91e79e8b6ce" + integrity sha512-Pea7JXeYHTWXRTIhBqBlhw7G53PJ7yta3G/sizGEZyzdeEwhZRr0od5IQ0r2ZxOt1Do+2czddjeEPp+YTxDwCA== + dependencies: + cborg "^1.5.4" + multiformats "^9.5.4" + +"@ipld/dag-pb@^2.1.3": + version "2.1.18" + resolved "https://registry.yarnpkg.com/@ipld/dag-pb/-/dag-pb-2.1.18.tgz#12d63e21580e87c75fd1a2c62e375a78e355c16f" + integrity sha512-ZBnf2fuX9y3KccADURG5vb9FaOeMjFkCrNysB0PtftME/4iCTjxfaLoNq/IAh5fTqUOMXvryN6Jyka4ZGuMLIg== + dependencies: + multiformats "^9.5.4" + +"@josephg/resolvable@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@josephg/resolvable/-/resolvable-1.0.1.tgz#69bc4db754d79e1a2f17a650d3466e038d94a5eb" + integrity sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg== + +"@jpwilliams/waitgroup@^2.1.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@jpwilliams/waitgroup/-/waitgroup-2.1.1.tgz#06e639add32d11d5909ca904233a8f77248f76c2" + integrity sha512-0CxRhNfkvFCTLZBKGvKxY2FYtYW1yWhO2McLqBL0X5UWvYjIf9suH8anKW/DNutl369A75Ewyoh2iJMwBZ2tRg== + +"@jridgewell/resolve-uri@^3.0.3": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/sourcemap-codec@^1.4.10": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/trace-mapping@0.3.9": + version "0.3.9" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" + +"@leichtgewicht/ip-codec@^2.0.1": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz#b2ac626d6cb9c8718ab459166d4bb405b8ffa78b" + integrity sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A== + +"@libp2p/crypto@^1.0.0", "@libp2p/crypto@^1.0.11", "@libp2p/crypto@^1.0.3", "@libp2p/crypto@^1.0.4": + version "1.0.17" + resolved "https://registry.yarnpkg.com/@libp2p/crypto/-/crypto-1.0.17.tgz#e64043328c0c866bf7f4cc8560b4f483e9c745dc" + integrity sha512-Oeg0Eb/EvAho0gVkOgemXEgrVxWaT3x/DpFgkBdZ9qGxwq75w/E/oPc7souqBz+l1swfz37GWnwV7bIb4Xv5Ag== + dependencies: + "@libp2p/interface-keys" "^1.0.2" + "@libp2p/interfaces" "^3.2.0" + "@noble/ed25519" "^1.6.0" + "@noble/secp256k1" "^1.5.4" + multiformats "^11.0.0" + node-forge "^1.1.0" + protons-runtime "^5.0.0" + uint8arraylist "^2.4.3" + uint8arrays "^4.0.2" + +"@libp2p/floodsub@^6.0.0": + version "6.0.3" + resolved "https://registry.yarnpkg.com/@libp2p/floodsub/-/floodsub-6.0.3.tgz#38a5440449ea87bb9be90933a4bca0dbdddfb69c" + integrity sha512-ajbgcX5lgtILRWgXLvjbO6TRB3Dxo/JTGvzSpqmFOfcZ4PGubNkbDkOwz1TXVqFqtD/CI0rYrKiwBxlXmH/6tg== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-pubsub" "^3.0.0" + "@libp2p/logger" "^2.0.0" + "@libp2p/pubsub" "^6.0.0" + protons-runtime "^5.0.0" + uint8arraylist "^2.1.1" + uint8arrays "^4.0.3" + +"@libp2p/interface-address-manager@^2.0.0": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@libp2p/interface-address-manager/-/interface-address-manager-2.0.5.tgz#913fceed38b7cfe12a1e546764e3428a1fbaffda" + integrity sha512-e2vLstKkYlAG2PZe6SEBpnnP2Y/ej6URue+zAiyjJPuXoOGNzHyLaqcv7MKye171OEf9dg5wv1gFphWcUJJbSA== + dependencies: + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^12.0.0" + +"@libp2p/interface-connection-encrypter@^3.0.1", "@libp2p/interface-connection-encrypter@^3.0.5": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@libp2p/interface-connection-encrypter/-/interface-connection-encrypter-3.0.6.tgz#1f7c7428d5905b390cfc5390e72bd02829213d31" + integrity sha512-LwyYBN/aSa3IPCe7gBxffx/vaC0rFxAXlCbx4QGaWGtg6qK80Ouj89LEDWb3HkMbecNVWaV4TEqJIM5WnAAx1Q== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + it-stream-types "^1.0.4" + uint8arraylist "^2.1.2" + +"@libp2p/interface-connection-manager@^1.1.1", "@libp2p/interface-connection-manager@^1.3.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@libp2p/interface-connection-manager/-/interface-connection-manager-1.5.0.tgz#959dedb26c3859677f0c889406d1814978e60386" + integrity sha512-luqYVMH3yip12JlSwVmBdo5/qG4YnXQXp2AV4lvxWK0sUhCnI2r3YL4e9ne8o3LAA5CkH3lPqTQ2HSRpmOruFg== + dependencies: + "@libp2p/interface-connection" "^4.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^12.0.0" + +"@libp2p/interface-connection@^3.0.1", "@libp2p/interface-connection@^3.0.2": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-connection/-/interface-connection-3.1.1.tgz#f43180e64de118c29f311ee7111f8bbe50e252bf" + integrity sha512-+hxfYLv4jf+MruQEJiJeIyo/wI33/53wRL0XJTkxwQQPAkLHfZWCUY4kY9sXALd3+ASjXAENvJj9VvzZTlkRDQ== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^12.0.0" + it-stream-types "^1.0.4" + uint8arraylist "^2.1.2" + +"@libp2p/interface-connection@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@libp2p/interface-connection/-/interface-connection-4.0.0.tgz#fcc830ca891820fac89a4c6bd4fcc2df4874f49b" + integrity sha512-6xx/NmEc84HX7QmsjSC3hHredQYjHv4Dkf4G27adAPf+qN+vnPxmQ7gaTnk243a0++DOFTbZ2gKX/15G2B6SRg== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^12.0.0" + it-stream-types "^1.0.4" + uint8arraylist "^2.1.2" + +"@libp2p/interface-connection@^5.0.0", "@libp2p/interface-connection@^5.0.1": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-connection/-/interface-connection-5.1.1.tgz#da0572c76da43629d52b8bec6cd092143fae421d" + integrity sha512-ytknMbuuNW72LYMmTP7wFGP5ZTaUSGBCmV9f+uQ55XPcFHtKXLtKWVU/HE8IqPmwtyU8AO7veGoJ/qStMHNRVA== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^12.0.0" + it-stream-types "^2.0.1" + uint8arraylist "^2.4.3" + +"@libp2p/interface-content-routing@^2.0.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-content-routing/-/interface-content-routing-2.1.1.tgz#7c56acad48f59feb9f0c6dd637e73d0e4eebd510" + integrity sha512-nRPOUWgq1K1fDr3FKW93Tip7aH8AFefCw3nJygL4crepxWTSGw95s1GyDpC7t0RJkWTRNHsqZvsFsJ9FkHExKw== + dependencies: + "@libp2p/interface-peer-info" "^1.0.0" + "@libp2p/interfaces" "^3.0.0" + multiformats "^11.0.0" + +"@libp2p/interface-dht@^2.0.0": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@libp2p/interface-dht/-/interface-dht-2.0.3.tgz#da2c11998da9141c85eeaf8402c412174a0b4cbd" + integrity sha512-JAKbHvw3egaSeB7CHOf6PF/dLNim4kzAiXX+0IEz2lln8L32/Xf1T7KNOF/RSbSYqO9b7Xxc/b2fuSfyaMwwMQ== + dependencies: + "@libp2p/interface-peer-discovery" "^2.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-peer-info" "^1.0.0" + "@libp2p/interfaces" "^3.0.0" + multiformats "^11.0.0" + +"@libp2p/interface-keychain@^2.0.0", "@libp2p/interface-keychain@^2.0.3", "@libp2p/interface-keychain@^2.0.4": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@libp2p/interface-keychain/-/interface-keychain-2.0.5.tgz#6ce104f38cf07ad72c9dfbe471a689f4ea4b4687" + integrity sha512-mb7QNgn9fIvC7CaJCi06GJ+a6DN6RVT9TmEi0NmedZGATeCArPeWWG7r7IfxNVXb9cVOOE1RzV1swK0ZxEJF9Q== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + multiformats "^11.0.0" + +"@libp2p/interface-keys@^1.0.2", "@libp2p/interface-keys@^1.0.3", "@libp2p/interface-keys@^1.0.6": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@libp2p/interface-keys/-/interface-keys-1.0.8.tgz#2c6b55136113ae7cf78133d3c459cdf0455b29ae" + integrity sha512-CJ1SlrwuoHMquhEEWS77E+4vv7hwB7XORkqzGQrPQmA9MRdIEZRS64bA4JqCLUDa4ltH0l+U1vp0oZHLT67NEA== + +"@libp2p/interface-libp2p@^1.0.0": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@libp2p/interface-libp2p/-/interface-libp2p-1.3.3.tgz#d3f8e2900f4605a8d60267fc436b95a882688cf1" + integrity sha512-7kEoIlAGTIiUNJ/4vIFWx+j+iN4aco7O2PqH6ES3dTvX6sgvYxYFi83p1G/RDj8tHKO7jLfG3UmiwJc/Ab0VyA== + dependencies: + "@libp2p/interface-connection" "^5.0.0" + "@libp2p/interface-content-routing" "^2.0.0" + "@libp2p/interface-dht" "^2.0.0" + "@libp2p/interface-keychain" "^2.0.0" + "@libp2p/interface-metrics" "^4.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-peer-info" "^1.0.0" + "@libp2p/interface-peer-routing" "^1.0.0" + "@libp2p/interface-peer-store" "^1.0.0" + "@libp2p/interface-pubsub" "^4.0.0" + "@libp2p/interface-registrar" "^2.0.0" + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^12.0.0" + +"@libp2p/interface-metrics@^4.0.0", "@libp2p/interface-metrics@^4.0.2", "@libp2p/interface-metrics@^4.0.4": + version "4.0.8" + resolved "https://registry.yarnpkg.com/@libp2p/interface-metrics/-/interface-metrics-4.0.8.tgz#06eb45588737d72f074c70df8d1ef067a2d7cf71" + integrity sha512-1b9HjYyJH0m35kvPHipuoz2EtYCxyq34NUhuV8VK1VNtrouMpA3uCKp5FI7yHCA6V6+ux1R3UriKgNFOSGbIXQ== + dependencies: + "@libp2p/interface-connection" "^5.0.0" + +"@libp2p/interface-peer-discovery@^1.0.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-discovery/-/interface-peer-discovery-1.1.1.tgz#5de48cbf30d1899de7138afbf4bb7491f91759e8" + integrity sha512-tjbt5DquTyP/JDskasPbIB3lk+zPVL8J9UPfrELZqlslJo9ufsMKyEXcTMMABclTvUsh6uSDgC0JUpUHTeCn8A== + dependencies: + "@libp2p/interface-peer-info" "^1.0.0" + "@libp2p/interfaces" "^3.0.0" + +"@libp2p/interface-peer-discovery@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-discovery/-/interface-peer-discovery-2.0.0.tgz#90f176cfd202f5a362912386199e64f8b1e0fc53" + integrity sha512-Mien5t3Tc+ntP5p50acKUYJN90ouMnq1lOTQDKQNvGcXoajG8A1AEYLocnzVia/MXiexuj6S/Q28WBBacoOlBg== + dependencies: + "@libp2p/interface-peer-info" "^1.0.0" + "@libp2p/interfaces" "^3.0.0" + +"@libp2p/interface-peer-id@^2.0.0", "@libp2p/interface-peer-id@^2.0.1", "@libp2p/interface-peer-id@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-id/-/interface-peer-id-2.0.2.tgz#6302e70b6fc17c451bc3daa11447d059357bcc32" + integrity sha512-9pZp9zhTDoVwzRmp0Wtxw0Yfa//Yc0GqBCJi3EznBDE6HGIAVvppR91wSh2knt/0eYg0AQj7Y35VSesUTzMCUg== + dependencies: + multiformats "^11.0.0" + +"@libp2p/interface-peer-info@^1.0.0", "@libp2p/interface-peer-info@^1.0.2", "@libp2p/interface-peer-info@^1.0.3": + version "1.0.10" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-info/-/interface-peer-info-1.0.10.tgz#566026de95a0817b9e853c982b313541b7960c0b" + integrity sha512-HQlo8NwQjMyamCHJrnILEZz+YwEOXCB2sIIw3slIrhVUYeYlTaia1R6d9umaAeLHa255Zmdm4qGH8rJLRqhCcg== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@multiformats/multiaddr" "^12.0.0" + +"@libp2p/interface-peer-routing@^1.0.0", "@libp2p/interface-peer-routing@^1.0.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-routing/-/interface-peer-routing-1.1.1.tgz#b4d3f51d996ce0ea19773db45aff4684e247e6fb" + integrity sha512-/XEhwob9qXjdmI8PBcc+qFin32xmtyoC58nRpq8RliqHY5uOVWiHfZoNtdOXIsNvzVvq5FqlHOWt71ofxXTtlg== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-peer-info" "^1.0.0" + "@libp2p/interfaces" "^3.0.0" + +"@libp2p/interface-peer-store@^1.0.0", "@libp2p/interface-peer-store@^1.2.2": + version "1.2.9" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-store/-/interface-peer-store-1.2.9.tgz#85173892e52ac230abfd45798bfab03dce20ae84" + integrity sha512-jAAlbP1NXpEJOG6Dbr0QdP71TBYjHBc/65Ulwdn4J4f04PW1bI4JIMQeq6+/sLfaGVryvvUT/a52io8UUtB21Q== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-peer-info" "^1.0.0" + "@libp2p/interface-record" "^2.0.0" + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^12.0.0" + +"@libp2p/interface-peer-store@^2.0.0": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@libp2p/interface-peer-store/-/interface-peer-store-2.0.4.tgz#5e9961b37094341216301285edf6fd73f3e796aa" + integrity sha512-jNvBK3O1JPJqSiDN2vkb+PV8bTPnYdP54nxsLtut1BWukNm610lwzwleV7CetFI4bJCn6g+BgBvvq8fdADy0tA== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@multiformats/multiaddr" "^12.0.0" + +"@libp2p/interface-pubsub@^3.0.0": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@libp2p/interface-pubsub/-/interface-pubsub-3.0.7.tgz#cc1c7c47c883daddd2b84d83d719b3826943be3b" + integrity sha512-+c74EVUBTfw2sx1GE/z/IjsYO6dhur+ukF0knAppeZsRQ1Kgg6K5R3eECtT28fC6dBWLjFpAvW/7QGfiDAL4RA== + dependencies: + "@libp2p/interface-connection" "^4.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interfaces" "^3.0.0" + it-pushable "^3.0.0" + uint8arraylist "^2.1.2" + +"@libp2p/interface-pubsub@^4.0.0": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@libp2p/interface-pubsub/-/interface-pubsub-4.0.1.tgz#27f85b43ced13cf3382629a38f309f7fc7b45bec" + integrity sha512-PIc5V/J98Yr1ZTHh8lQshP7GdVUh+pKNIqj6wGaDmXs8oQLB40qKCjcpHQNlAnv2e1Bh9mEH2GXv5sGZOA651A== + dependencies: + "@libp2p/interface-connection" "^5.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interfaces" "^3.0.0" + it-pushable "^3.1.3" + uint8arraylist "^2.4.3" + +"@libp2p/interface-record@^2.0.0", "@libp2p/interface-record@^2.0.1": + version "2.0.7" + resolved "https://registry.yarnpkg.com/@libp2p/interface-record/-/interface-record-2.0.7.tgz#d083776e465cfa66d10e1d3c8e015677a9fc7635" + integrity sha512-AFPytZWI+p8FJWP0xuK5zbSjalLAOIMzEed2lBKdRWvdGBQUHt9ENLTkfkI9G7p/Pp3hlhVzzBXdIErKd+0GxQ== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + uint8arraylist "^2.4.3" + +"@libp2p/interface-registrar@^2.0.0", "@libp2p/interface-registrar@^2.0.3": + version "2.0.12" + resolved "https://registry.yarnpkg.com/@libp2p/interface-registrar/-/interface-registrar-2.0.12.tgz#a74b59df7b6c345d8bb45d310469b2d5f923e9bf" + integrity sha512-EyCi2bycC2rn3oPB4Swr7EqBsvcaWd6RcqR6zsImNIG9BKc4/R1gl6iaF861JaELYgYmzBMS31x1rQpVz5UekQ== + dependencies: + "@libp2p/interface-connection" "^5.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + +"@libp2p/interface-stream-muxer@^3.0.0": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@libp2p/interface-stream-muxer/-/interface-stream-muxer-3.0.6.tgz#f84fae484290b667a1b4ffa51af7d6138765a698" + integrity sha512-wbLrH/bdF8qe0CpPd3BFMSmUs085vc3/8zx5uhXJySD672enAc8Jw9gmAYd1pIqELdqJqBDg9EI0y1XMRxvVkw== + dependencies: + "@libp2p/interface-connection" "^4.0.0" + "@libp2p/interfaces" "^3.0.0" + it-stream-types "^1.0.4" + +"@libp2p/interface-transport@^2.0.0", "@libp2p/interface-transport@^2.1.0": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@libp2p/interface-transport/-/interface-transport-2.1.3.tgz#3fbc8457013a1552d281a3d94ee7ae0725cc16e0" + integrity sha512-ez+0X+w2Wyw3nJY6mP0DHFgrRnln/miAH4TJLcRfUSJHjGXH5ZfpuK1TnRxXpEUiqOezSbwke06/znI27KpRiQ== + dependencies: + "@libp2p/interface-connection" "^4.0.0" + "@libp2p/interface-stream-muxer" "^3.0.0" + "@libp2p/interfaces" "^3.0.0" + "@multiformats/multiaddr" "^12.0.0" + it-stream-types "^1.0.4" + +"@libp2p/interface@^0.1.6": + version "0.1.6" + resolved "https://registry.yarnpkg.com/@libp2p/interface/-/interface-0.1.6.tgz#1328cf6086f02c499183489ccb143fe9c159e871" + integrity sha512-Lzc5cS/hXuoXhuAbVIxJIHLCYmfPcbU0vVgrpMoiP1Qb2Q3ETU4A46GB8s8mWXgSU6tr9RcqerUqzFYD6+OAag== + dependencies: + "@multiformats/multiaddr" "^12.1.5" + abortable-iterator "^5.0.1" + it-pushable "^3.2.0" + it-stream-types "^2.0.1" + multiformats "^12.0.1" + p-defer "^4.0.0" + race-signal "^1.0.0" + uint8arraylist "^2.4.3" + +"@libp2p/interface@^1.0.0", "@libp2p/interface@^1.1.4": + version "1.1.4" + resolved "https://registry.yarnpkg.com/@libp2p/interface/-/interface-1.1.4.tgz#21c7bbbe7628419d1e4902f0c953db1423b0f40f" + integrity sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A== + dependencies: + "@multiformats/multiaddr" "^12.1.14" + it-pushable "^3.2.3" + it-stream-types "^2.0.1" + multiformats "^13.1.0" + progress-events "^1.0.0" + uint8arraylist "^2.4.8" + +"@libp2p/interfaces@^3.0.0", "@libp2p/interfaces@^3.0.2", "@libp2p/interfaces@^3.0.3", "@libp2p/interfaces@^3.2.0", "@libp2p/interfaces@^3.3.1": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@libp2p/interfaces/-/interfaces-3.3.2.tgz#5d8079be845b0960939b5b18880e785a4714465a" + integrity sha512-p/M7plbrxLzuQchvNwww1Was7ZeGE2NaOFulMaZBYIihU8z3fhaV+a033OqnC/0NTX/yhfdNOG7znhYq3XoR/g== + +"@libp2p/keychain@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@libp2p/keychain/-/keychain-1.0.1.tgz#f34d611ece45bd871f597bd14ce61e60459c6d5d" + integrity sha512-IvvBNcN6juPldpENiDrQFVx12573HP+jRoECGuyUBaMDy2uewFbEPWQbHFmF/kMD1IvEmAiihxrTLk7kEWllfg== + dependencies: + "@libp2p/crypto" "^1.0.11" + "@libp2p/interface-keychain" "^2.0.3" + "@libp2p/interface-peer-id" "^2.0.1" + "@libp2p/interfaces" "^3.3.1" + "@libp2p/logger" "^2.0.5" + "@libp2p/peer-id" "^2.0.1" + interface-datastore "^7.0.3" + merge-options "^3.0.4" + sanitize-filename "^1.6.3" + uint8arrays "^4.0.3" + +"@libp2p/logger@^2.0.0", "@libp2p/logger@^2.0.1", "@libp2p/logger@^2.0.2", "@libp2p/logger@^2.0.5": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@libp2p/logger/-/logger-2.1.1.tgz#e12e6c320ea64252af954bcec996895098d1cd36" + integrity sha512-2UbzDPctg3cPupF6jrv6abQnAUTrbLybNOj0rmmrdGm1cN2HJ1o/hBu0sXuq4KF9P1h/eVRn1HIRbVIEKnEJrA== + dependencies: + "@libp2p/interface-peer-id" "^2.0.2" + "@multiformats/multiaddr" "^12.1.3" + debug "^4.3.4" + interface-datastore "^8.2.0" + multiformats "^11.0.2" + +"@libp2p/logger@^3.0.2": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@libp2p/logger/-/logger-3.1.0.tgz#ac9adb08f344934e191d7049ce876ac0111449ce" + integrity sha512-qJbJBAhxHVsRBtQSOIkSLi0lskUSFjzE+zm0QvoyxzZKSz+mX41mZLbnofPIVOVauoDQ40dXpe7WDUOq8AbiQQ== + dependencies: + "@libp2p/interface" "^0.1.6" + "@multiformats/multiaddr" "^12.1.5" + debug "^4.3.4" + interface-datastore "^8.2.0" + multiformats "^12.0.1" + +"@libp2p/logger@^4.0.1": + version "4.0.7" + resolved "https://registry.yarnpkg.com/@libp2p/logger/-/logger-4.0.7.tgz#b5e82135f5c8a6f275c1b2e183333db956f3ed90" + integrity sha512-oyICns7G18S4eDhbFHUwZ7gLQnZTBVQtUMmMgEmrs8LnQu2GvXADxmQAPPkKtLNSCvRudg4hN3hP04Y+vNvlBQ== + dependencies: + "@libp2p/interface" "^1.1.4" + "@multiformats/multiaddr" "^12.1.14" + debug "^4.3.4" + interface-datastore "^8.2.11" + multiformats "^13.1.0" + +"@libp2p/mplex@^7.1.1": + version "7.1.7" + resolved "https://registry.yarnpkg.com/@libp2p/mplex/-/mplex-7.1.7.tgz#ee14192f5e82aa3710ae4a102875278aea0bb127" + integrity sha512-8eJ6HUL3bM8ck0rb/NJ04+phBUVBMocxH/kuc2Nypn8RX9ezihV7srGGhG5N7muaMwJrRbYkFhIV4GH+8WTZUg== + dependencies: + "@libp2p/interface-connection" "^4.0.0" + "@libp2p/interface-stream-muxer" "^3.0.0" + "@libp2p/interfaces" "^3.2.0" + "@libp2p/logger" "^2.0.0" + abortable-iterator "^4.0.2" + any-signal "^4.0.1" + benchmark "^2.1.4" + it-batched-bytes "^1.0.0" + it-pushable "^3.1.0" + it-stream-types "^1.0.4" + rate-limiter-flexible "^2.3.9" + uint8arraylist "^2.1.1" + uint8arrays "^4.0.2" + varint "^6.0.0" + +"@libp2p/multistream-select@^3.0.0": + version "3.1.9" + resolved "https://registry.yarnpkg.com/@libp2p/multistream-select/-/multistream-select-3.1.9.tgz#60b12503bab879a2ebb97d69f4670a10e67c35c8" + integrity sha512-iSNqr8jXvOrkNTyA43h/ARs4wd0Rd55/D6oFRndLcV4yQSUMmfjl7dUcbC5MAw+5/sgskfDx9TMawSwNq47Qwg== + dependencies: + "@libp2p/interfaces" "^3.2.0" + "@libp2p/logger" "^2.0.0" + abortable-iterator "^5.0.0" + it-first "^3.0.1" + it-handshake "^4.1.3" + it-length-prefixed "^9.0.0" + it-merge "^3.0.0" + it-pipe "^3.0.0" + it-pushable "^3.1.0" + it-reader "^6.0.1" + it-stream-types "^2.0.1" + uint8arraylist "^2.3.1" + uint8arrays "^4.0.2" + +"@libp2p/peer-collections@^3.0.0": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@libp2p/peer-collections/-/peer-collections-3.0.2.tgz#a5441108fcf137e822be378e2e3abdd3f22c68d9" + integrity sha512-3vRVMWVRCF6dVs/1/CHbw4YSv83bcqjZuAt9ZQHW85vn6OfHNFQesOHWT1TbRBuL8TSb//IwJkOfTAVLd6Mymw== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/peer-id" "^2.0.0" + +"@libp2p/peer-id-factory@^2.0.0": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@libp2p/peer-id-factory/-/peer-id-factory-2.0.4.tgz#ccf74ece34d16a069602e7cae28b1cb739803e0c" + integrity sha512-+0D+oklFzHpjRI3v7uw3PMMx00P36DV7YvAgL0+gpos0VzR/BI9tRiM6dpObZTrQ1hxp78F03p+qR1Zy9Qnmuw== + dependencies: + "@libp2p/crypto" "^1.0.0" + "@libp2p/interface-keys" "^1.0.2" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/peer-id" "^2.0.0" + multiformats "^11.0.0" + protons-runtime "^5.0.0" + uint8arraylist "^2.0.0" + uint8arrays "^4.0.2" + +"@libp2p/peer-id@^2.0.0", "@libp2p/peer-id@^2.0.1": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@libp2p/peer-id/-/peer-id-2.0.4.tgz#d50d2ae4663ef79f6e31ce4eaf25e1f44e1667ab" + integrity sha512-gcOsN8Fbhj6izIK+ejiWsqiqKeJ2yWPapi/m55VjOvDa52/ptQzZszxQP8jUk93u36de92ATFXDfZR/Bi6eeUQ== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interfaces" "^3.2.0" + multiformats "^11.0.0" + uint8arrays "^4.0.2" + +"@libp2p/peer-id@^3.0.2": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@libp2p/peer-id/-/peer-id-3.0.6.tgz#93b3f240488c0af3d76f64716e2ee032cd2fd2da" + integrity sha512-iN1Ia5gH2U1V/GOVRmLHmVY6fblxzrOPUoZrMYjHl/K4s+AiI7ym/527WDeQvhQpD7j3TfDwcAYforD2dLGpLw== + dependencies: + "@libp2p/interface" "^0.1.6" + multiformats "^12.0.1" + uint8arrays "^4.0.6" + +"@libp2p/peer-record@^5.0.0": + version "5.0.4" + resolved "https://registry.yarnpkg.com/@libp2p/peer-record/-/peer-record-5.0.4.tgz#b8f337a2864ffe2ffbb34596cb03d7c339ed18ae" + integrity sha512-e+AArf7pwMLqF24mehTe1OYjr1v0SOKshVrI1E9YH/Cb1F3ZZuK3smyGmnLaS4JlqsarRCMSe3V50tRkqMFY7g== + dependencies: + "@libp2p/crypto" "^1.0.11" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-record" "^2.0.1" + "@libp2p/interfaces" "^3.2.0" + "@libp2p/peer-id" "^2.0.0" + "@libp2p/utils" "^3.0.0" + "@multiformats/multiaddr" "^12.0.0" + protons-runtime "^5.0.0" + uint8-varint "^1.0.2" + uint8arraylist "^2.1.0" + uint8arrays "^4.0.2" + +"@libp2p/peer-store@^6.0.0": + version "6.0.4" + resolved "https://registry.yarnpkg.com/@libp2p/peer-store/-/peer-store-6.0.4.tgz#3ec42dc8f1863a06bd487ba0701719356a0da51f" + integrity sha512-yw7XbeJ5k880PpkDV/HcSZtj0vQ0ShPbnCzVHc1hW0JS/g1vhpSooAZOf3w65obUoFhUwccnSZ4HSLBSpQqOaA== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-peer-info" "^1.0.3" + "@libp2p/interface-peer-store" "^1.2.2" + "@libp2p/interface-record" "^2.0.1" + "@libp2p/interfaces" "^3.2.0" + "@libp2p/logger" "^2.0.0" + "@libp2p/peer-id" "^2.0.0" + "@libp2p/peer-record" "^5.0.0" + "@multiformats/multiaddr" "^11.0.0" + interface-datastore "^7.0.0" + it-all "^2.0.0" + it-filter "^2.0.0" + it-foreach "^1.0.0" + it-map "^2.0.0" + mortice "^3.0.0" + multiformats "^11.0.0" + protons-runtime "^5.0.0" + uint8arraylist "^2.1.1" + uint8arrays "^4.0.2" + +"@libp2p/pubsub-peer-discovery@^8.0.0": + version "8.0.6" + resolved "https://registry.yarnpkg.com/@libp2p/pubsub-peer-discovery/-/pubsub-peer-discovery-8.0.6.tgz#fb48a4c6e7c1d79f819997ee6076f15a6fe87f62" + integrity sha512-M1HoB+AohAaup0fP0Hm8reLctFgKvyRw+R/SlHnHj/jHinHKCtQhNZ9MSiV4vNnSomJZ+viFMw+3Yl2bgvbfgw== + dependencies: + "@libp2p/interface-peer-discovery" "^2.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-peer-info" "^1.0.2" + "@libp2p/interface-pubsub" "^4.0.0" + "@libp2p/interfaces" "^3.0.3" + "@libp2p/logger" "^3.0.2" + "@libp2p/peer-id" "^3.0.2" + "@multiformats/multiaddr" "^12.0.0" + protons-runtime "^5.0.0" + uint8arraylist "^2.4.3" + +"@libp2p/pubsub@^6.0.0": + version "6.0.6" + resolved "https://registry.yarnpkg.com/@libp2p/pubsub/-/pubsub-6.0.6.tgz#7acf5a1de8fa5d982afc109ddd31e240111e7fe8" + integrity sha512-/JU4xvtZIYDxOyiHIk4MlpnAJuqfZsabDP+4f59QlXNsppOmiIujaDhN3eFBFIKG29XDSgHZBzKMLK+XsB8O5g== + dependencies: + "@libp2p/crypto" "^1.0.0" + "@libp2p/interface-connection" "^4.0.0" + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-pubsub" "^3.0.0" + "@libp2p/interface-registrar" "^2.0.0" + "@libp2p/interfaces" "^3.2.0" + "@libp2p/logger" "^2.0.0" + "@libp2p/peer-collections" "^3.0.0" + "@libp2p/peer-id" "^2.0.0" + "@libp2p/topology" "^4.0.0" + abortable-iterator "^4.0.2" + it-length-prefixed "^9.0.0" + it-pipe "^3.0.0" + it-pushable "^3.0.0" + multiformats "^11.0.0" + p-queue "^7.2.0" + uint8arraylist "^2.0.0" + uint8arrays "^4.0.2" + +"@libp2p/tcp@^6.0.0": + version "6.2.2" + resolved "https://registry.yarnpkg.com/@libp2p/tcp/-/tcp-6.2.2.tgz#9262e284037f0951aca22f0fb3d488e3515ff6fd" + integrity sha512-5pLQDSUI+6qtAvh7pYgjqXFuFqzZ/AGL3BSX4C2oa+vWGIbooTZK3Mizp+iO0yHomVJ1y3V8AXXH8ddWdFqDpQ== + dependencies: + "@libp2p/interface-connection" "^4.0.0" + "@libp2p/interface-metrics" "^4.0.0" + "@libp2p/interface-transport" "^2.0.0" + "@libp2p/interfaces" "^3.2.0" + "@libp2p/logger" "^2.0.0" + "@libp2p/utils" "^3.0.2" + "@multiformats/mafmt" "^12.0.0" + "@multiformats/multiaddr" "^12.0.0" + stream-to-it "^0.2.2" + +"@libp2p/topology@^4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@libp2p/topology/-/topology-4.0.3.tgz#d86e013bd065b2a61ce82d416e1962c8556a46eb" + integrity sha512-uXd9ZYpmgb+onMTypsAPUlvKKeY20HMtxwsjAMEfDa29yqshK8DiEunHZNjLmtXaMIIO9CBl2w5ykjt5TtFsBQ== + dependencies: + "@libp2p/interface-peer-id" "^2.0.0" + "@libp2p/interface-registrar" "^2.0.3" + +"@libp2p/tracked-map@^3.0.0": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@libp2p/tracked-map/-/tracked-map-3.0.4.tgz#77bf9ca8fb85cb4593d02086671648cbb1f671d9" + integrity sha512-G5ElrjFoubP10TwQo3dnRVaxhshU9wtu86qq0cIXNv12XCFpvTvx12Vbf8sV1SU5imrWgd6XQgfRKsQtjmu3Ew== + dependencies: + "@libp2p/interface-metrics" "^4.0.0" + +"@libp2p/utils@^3.0.0", "@libp2p/utils@^3.0.2": + version "3.0.13" + resolved "https://registry.yarnpkg.com/@libp2p/utils/-/utils-3.0.13.tgz#a0bf648df4cc0bbb7542a9d88651cc92039a50c9" + integrity sha512-SNwIcQq/FvLpqVsjHHzbxSq7VgbbUK9EB7/865Re4NoLfqgE/6oTUpyPEDlrcJb4aTPFWbVPQzE85cA3raHIIw== + dependencies: + "@achingbrain/ip-address" "^8.1.0" + "@libp2p/interface-connection" "^5.0.1" + "@libp2p/interface-peer-store" "^2.0.0" + "@libp2p/interfaces" "^3.2.0" + "@libp2p/logger" "^2.0.0" + "@multiformats/multiaddr" "^12.0.0" + abortable-iterator "^5.0.0" + is-loopback-addr "^2.0.1" + it-stream-types "^2.0.1" + private-ip "^3.0.0" + uint8arraylist "^2.3.2" + +"@libp2p/webrtc-peer@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@libp2p/webrtc-peer/-/webrtc-peer-2.0.2.tgz#71c240e34905c6c97e20fdf703cec025c745c155" + integrity sha512-FozliUqHO1CIzrL8hPc5uT+5AGUWf5Dw3HncL9tte/CoDNVpj6O59ITIRWefssp3oIGEAIjpcebNu1d+mYfVug== + dependencies: + "@libp2p/interfaces" "^3.0.2" + "@libp2p/logger" "^2.0.0" + delay "^5.0.0" + err-code "^3.0.1" + iso-random-stream "^2.0.2" + it-pushable "^3.0.0" + it-stream-types "^1.0.4" + p-defer "^4.0.0" + p-event "^5.0.1" + uint8arrays "^4.0.2" + +"@libp2p/websockets@^5.0.5": + version "5.0.10" + resolved "https://registry.yarnpkg.com/@libp2p/websockets/-/websockets-5.0.10.tgz#87689c083a7b7e0fa98ab30f0791094c2545f83c" + integrity sha512-q8aKm0rhDxZjc4TzDpB0quog4pViFnz+Ok+UbGEk3xXxHwT3QCxaDVPKMemMqN/1N3OahVvcodpcvFSuWmus+A== + dependencies: + "@libp2p/interface-connection" "^4.0.0" + "@libp2p/interface-transport" "^2.0.0" + "@libp2p/interfaces" "^3.0.3" + "@libp2p/logger" "^2.0.0" + "@libp2p/utils" "^3.0.2" + "@multiformats/mafmt" "^12.0.0" + "@multiformats/multiaddr" "^12.0.0" + "@multiformats/multiaddr-to-uri" "^9.0.2" + abortable-iterator "^4.0.2" + it-ws "^5.0.6" + p-defer "^4.0.0" + p-timeout "^6.0.0" + wherearewe "^2.0.1" + ws "^8.12.1" + +"@multiformats/dns@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@multiformats/dns/-/dns-1.0.3.tgz#6dff5101b36d2834a55da0dc57c11a4521d6a796" + integrity sha512-fGpJ0CBWfSaEze9D8rL86b+Ykek9OLpC0AJe8eGvARAT9FgTuZBdGRgvFvmkRsM3vZt7kPdd+8wacHvwEBJaLw== + dependencies: + "@types/dns-packet" "^5.6.5" + buffer "^6.0.3" + dns-packet "^5.6.1" + hashlru "^2.3.0" + p-queue "^8.0.1" + progress-events "^1.0.0" + uint8arrays "^5.0.2" + +"@multiformats/mafmt@^11.0.2": + version "11.1.2" + resolved "https://registry.yarnpkg.com/@multiformats/mafmt/-/mafmt-11.1.2.tgz#c03ef4022c795b7f230b136f2f974fc263eac4f1" + integrity sha512-3n1o5eLU7WzTAPLuz3AodV7Iql6NWf7Ws8fqVaGT7o5nDDabUPYGBm2cZuh3OrqmwyCY61LrNUIsjzivU6UdpQ== + dependencies: + "@multiformats/multiaddr" "^12.0.0" + +"@multiformats/mafmt@^12.0.0": + version "12.1.6" + resolved "https://registry.yarnpkg.com/@multiformats/mafmt/-/mafmt-12.1.6.tgz#e7c1831c1e94c94932621826049afc89f3ad43b7" + integrity sha512-tlJRfL21X+AKn9b5i5VnaTD6bNttpSpcqwKVmDmSHLwxoz97fAHaepqFOk/l1fIu94nImIXneNbhsJx/RQNIww== + dependencies: + "@multiformats/multiaddr" "^12.0.0" + +"@multiformats/multiaddr-to-uri@^9.0.2": + version "9.0.8" + resolved "https://registry.yarnpkg.com/@multiformats/multiaddr-to-uri/-/multiaddr-to-uri-9.0.8.tgz#c0b1491b26a4d52273ddc16024c59ba47ef8583f" + integrity sha512-4eiN5iEiQfy2A98BxekUfW410L/ivg0sgjYSgSqmklnrBhK+QyMz4yqgfkub8xDTXOc7O5jp4+LVyM3ZqMeWNw== + dependencies: + "@multiformats/multiaddr" "^12.0.0" + +"@multiformats/multiaddr@^11.0.0", "@multiformats/multiaddr@^11.1.4": + version "11.6.1" + resolved "https://registry.yarnpkg.com/@multiformats/multiaddr/-/multiaddr-11.6.1.tgz#ec46984a298e715e27a398434c087856db5f3185" + integrity sha512-doST0+aB7/3dGK9+U5y3mtF3jq85KGbke1QiH0KE1F5mGQ9y56mFebTeu2D9FNOm+OT6UHb8Ss8vbSnpGjeLNw== + dependencies: + "@chainsafe/is-ip" "^2.0.1" + dns-over-http-resolver "^2.1.0" + err-code "^3.0.1" + multiformats "^11.0.0" + uint8arrays "^4.0.2" + varint "^6.0.0" + +"@multiformats/multiaddr@^12.0.0", "@multiformats/multiaddr@^12.1.14", "@multiformats/multiaddr@^12.1.3", "@multiformats/multiaddr@^12.1.5": + version "12.2.1" + resolved "https://registry.yarnpkg.com/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz#d95d1590b17dbe39dcefbb4d832d14434d3fe075" + integrity sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q== + dependencies: + "@chainsafe/is-ip" "^2.0.1" + "@chainsafe/netmask" "^2.0.0" + "@libp2p/interface" "^1.0.0" + "@multiformats/dns" "^1.0.3" + multiformats "^13.0.0" + uint8-varint "^2.0.1" + uint8arrays "^5.0.0" + +"@noble/ed25519@^1.6.0": + version "1.7.3" + resolved "https://registry.yarnpkg.com/@noble/ed25519/-/ed25519-1.7.3.tgz#57e1677bf6885354b466c38e2b620c62f45a7123" + integrity sha512-iR8GBkDt0Q3GyaVcIu7mSsVIqnFbkbRzGLWlvhwunacoLwt4J3swfKhfaM6rN6WY+TBGoYT1GtT1mIh2/jGbRQ== + +"@noble/secp256k1@^1.5.4": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.7.1.tgz#b251c70f824ce3ca7f8dc3df08d58f005cc0507c" + integrity sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw== + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@openzeppelin/contracts@4.6.0": + version "4.6.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.6.0.tgz#c91cf64bc27f573836dba4122758b4743418c1b3" + integrity sha512-8vi4d50NNya/bQqCmaVzvHNmwHvS0OBKb7HNtuNwEE3scXWrP31fKQoGxNMT+KbzmrNZzatE3QK5p2gFONI/hg== + +"@openzeppelin/contracts@^4.7.3": + version "4.9.6" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.9.6.tgz#2a880a24eb19b4f8b25adc2a5095f2aa27f39677" + integrity sha512-xSmezSupL+y9VkHZJGDoCBpmnB2ogM13ccaYDWqJTfS3dbuHkgjuwDFUmaFauBCboQMGB/S5UqUl2y54X99BmA== + +"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf" + integrity sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ== + +"@protobufjs/base64@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/base64/-/base64-1.1.2.tgz#4c85730e59b9a1f1f349047dbf24296034bb2735" + integrity sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg== + +"@protobufjs/codegen@^2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@protobufjs/codegen/-/codegen-2.0.4.tgz#7ef37f0d010fb028ad1ad59722e506d9262815cb" + integrity sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg== + +"@protobufjs/eventemitter@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70" + integrity sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q== + +"@protobufjs/fetch@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45" + integrity sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ== + dependencies: + "@protobufjs/aspromise" "^1.1.1" + "@protobufjs/inquire" "^1.1.0" + +"@protobufjs/float@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1" + integrity sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ== + +"@protobufjs/inquire@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089" + integrity sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q== + +"@protobufjs/path@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d" + integrity sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA== + +"@protobufjs/pool@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54" + integrity sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw== + +"@protobufjs/utf8@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" + integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw== + +"@sqltools/formatter@^1.2.2": + version "1.2.5" + resolved "https://registry.yarnpkg.com/@sqltools/formatter/-/formatter-1.2.5.tgz#3abc203c79b8c3e90fd6c156a0c62d5403520e12" + integrity sha512-Uy0+khmZqUrUGm5dmMqVlnvufZRSK0FbYzVgp0UMstm+F5+W2/jnEEQyc9vo1ZR/E5ZI/B1WjjoTqBqwJL6Krw== + +"@stablelib/aead@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/aead/-/aead-1.0.1.tgz#c4b1106df9c23d1b867eb9b276d8f42d5fc4c0c3" + integrity sha512-q39ik6sxGHewqtO0nP4BuSe3db5G1fEJE8ukvngS2gLkBXyy6E7pLubhbYgnkDFv6V8cWaxcE4Xn0t6LWcJkyg== + +"@stablelib/binary@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/binary/-/binary-1.0.1.tgz#c5900b94368baf00f811da5bdb1610963dfddf7f" + integrity sha512-ClJWvmL6UBM/wjkvv/7m5VP3GMr9t0osr4yVgLZsLCOz4hGN9gIAFEqnJ0TsSMAN+n840nf2cHZnA5/KFqHC7Q== + dependencies: + "@stablelib/int" "^1.0.1" + +"@stablelib/bytes@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/bytes/-/bytes-1.0.1.tgz#0f4aa7b03df3080b878c7dea927d01f42d6a20d8" + integrity sha512-Kre4Y4kdwuqL8BR2E9hV/R5sOrUj6NanZaZis0V6lX5yzqC3hBuVSDXUIBqQv/sCpmuWRiHLwqiT1pqqjuBXoQ== + +"@stablelib/chacha20poly1305@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/chacha20poly1305/-/chacha20poly1305-1.0.1.tgz#de6b18e283a9cb9b7530d8767f99cde1fec4c2ee" + integrity sha512-MmViqnqHd1ymwjOQfghRKw2R/jMIGT3wySN7cthjXCBdO+qErNPUBnRzqNpnvIwg7JBCg3LdeCZZO4de/yEhVA== + dependencies: + "@stablelib/aead" "^1.0.1" + "@stablelib/binary" "^1.0.1" + "@stablelib/chacha" "^1.0.1" + "@stablelib/constant-time" "^1.0.1" + "@stablelib/poly1305" "^1.0.1" + "@stablelib/wipe" "^1.0.1" + +"@stablelib/chacha@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/chacha/-/chacha-1.0.1.tgz#deccfac95083e30600c3f92803a3a1a4fa761371" + integrity sha512-Pmlrswzr0pBzDofdFuVe1q7KdsHKhhU24e8gkEwnTGOmlC7PADzLVxGdn2PoNVBBabdg0l/IfLKg6sHAbTQugg== + dependencies: + "@stablelib/binary" "^1.0.1" + "@stablelib/wipe" "^1.0.1" + +"@stablelib/constant-time@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/constant-time/-/constant-time-1.0.1.tgz#bde361465e1cf7b9753061b77e376b0ca4c77e35" + integrity sha512-tNOs3uD0vSJcK6z1fvef4Y+buN7DXhzHDPqRLSXUel1UfqMB1PWNsnnAezrKfEwTLpN0cGH2p9NNjs6IqeD0eg== + +"@stablelib/hash@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/hash/-/hash-1.0.1.tgz#3c944403ff2239fad8ebb9015e33e98444058bc5" + integrity sha512-eTPJc/stDkdtOcrNMZ6mcMK1e6yBbqRBaNW55XA1jU8w/7QdnCF0CmMmOD1m7VSkBR44PWrMHU2l6r8YEQHMgg== + +"@stablelib/hkdf@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/hkdf/-/hkdf-1.0.1.tgz#b4efd47fd56fb43c6a13e8775a54b354f028d98d" + integrity sha512-SBEHYE16ZXlHuaW5RcGk533YlBj4grMeg5TooN80W3NpcHRtLZLLXvKyX0qcRFxf+BGDobJLnwkvgEwHIDBR6g== + dependencies: + "@stablelib/hash" "^1.0.1" + "@stablelib/hmac" "^1.0.1" + "@stablelib/wipe" "^1.0.1" + +"@stablelib/hmac@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/hmac/-/hmac-1.0.1.tgz#3d4c1b8cf194cb05d28155f0eed8a299620a07ec" + integrity sha512-V2APD9NSnhVpV/QMYgCVMIYKiYG6LSqw1S65wxVoirhU/51ACio6D4yDVSwMzuTJXWZoVHbDdINioBwKy5kVmA== + dependencies: + "@stablelib/constant-time" "^1.0.1" + "@stablelib/hash" "^1.0.1" + "@stablelib/wipe" "^1.0.1" + +"@stablelib/int@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/int/-/int-1.0.1.tgz#75928cc25d59d73d75ae361f02128588c15fd008" + integrity sha512-byr69X/sDtDiIjIV6m4roLVWnNNlRGzsvxw+agj8CIEazqWGOQp2dTYgQhtyVXV9wpO6WyXRQUzLV/JRNumT2w== + +"@stablelib/keyagreement@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/keyagreement/-/keyagreement-1.0.1.tgz#4612efb0a30989deb437cd352cee637ca41fc50f" + integrity sha512-VKL6xBwgJnI6l1jKrBAfn265cspaWBPAPEc62VBQrWHLqVgNRE09gQ/AnOEyKUWrrqfD+xSQ3u42gJjLDdMDQg== + dependencies: + "@stablelib/bytes" "^1.0.1" + +"@stablelib/poly1305@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/poly1305/-/poly1305-1.0.1.tgz#93bfb836c9384685d33d70080718deae4ddef1dc" + integrity sha512-1HlG3oTSuQDOhSnLwJRKeTRSAdFNVB/1djy2ZbS35rBSJ/PFqx9cf9qatinWghC2UbfOYD8AcrtbUQl8WoxabA== + dependencies: + "@stablelib/constant-time" "^1.0.1" + "@stablelib/wipe" "^1.0.1" + +"@stablelib/random@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@stablelib/random/-/random-1.0.2.tgz#2dece393636489bf7e19c51229dd7900eddf742c" + integrity sha512-rIsE83Xpb7clHPVRlBj8qNe5L8ISQOzjghYQm/dZ7VaM2KHYwMW5adjQjrzTZCchFnNCNhkwtnOBa9HTMJCI8w== + dependencies: + "@stablelib/binary" "^1.0.1" + "@stablelib/wipe" "^1.0.1" + +"@stablelib/sha256@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/sha256/-/sha256-1.0.1.tgz#77b6675b67f9b0ea081d2e31bda4866297a3ae4f" + integrity sha512-GIIH3e6KH+91FqGV42Kcj71Uefd/QEe7Dy42sBTeqppXV95ggCcxLTk39bEr+lZfJmp+ghsR07J++ORkRELsBQ== + dependencies: + "@stablelib/binary" "^1.0.1" + "@stablelib/hash" "^1.0.1" + "@stablelib/wipe" "^1.0.1" + +"@stablelib/wipe@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@stablelib/wipe/-/wipe-1.0.1.tgz#d21401f1d59ade56a62e139462a97f104ed19a36" + integrity sha512-WfqfX/eXGiAd3RJe4VU2snh/ZPwtSjLG4ynQ/vYzvghTh7dHFcI1wl+nrkWG6lGhukOxOsUHfv8dUXr58D0ayg== + +"@stablelib/x25519@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@stablelib/x25519/-/x25519-1.0.3.tgz#13c8174f774ea9f3e5e42213cbf9fc68a3c7b7fd" + integrity sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw== + dependencies: + "@stablelib/keyagreement" "^1.0.1" + "@stablelib/random" "^1.0.2" + "@stablelib/wipe" "^1.0.1" + +"@statechannels/exit-format@^0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@statechannels/exit-format/-/exit-format-0.2.0.tgz#b9362816c2a23d59e429b86b310021de1031a387" + integrity sha512-i+HIPy2P6ddwT/uP0O6AiTmBRTQ9+vLmLnfJtvXmtpTsB8OT1R9Jjj5iVKowGcWk+cg8koEtQuQDMxfrHq7LaQ== + dependencies: + "@openzeppelin/contracts" "4.6.0" + ethers "^5.1.4" + lodash "^4.17.21" + +"@statechannels/nitro-protocol@^2.0.1-alpha.5": + version "2.0.1-alpha.6" + resolved "https://registry.yarnpkg.com/@statechannels/nitro-protocol/-/nitro-protocol-2.0.1-alpha.6.tgz#1bb59365eb78489eef2dfa73733bc1cad9890685" + integrity sha512-VehCgq3AOVTGCvGGIoF23YyQX+x1IbLzByFWbqPovucsm9vW0udR7r8Okw9hC0ZHanHOjQH5KxJL6aKUnrXinw== + dependencies: + "@openzeppelin/contracts" "^4.7.3" + "@statechannels/exit-format" "^0.2.0" + "@typechain/ethers-v5" "^9.0.0" + +"@tsconfig/node10@^1.0.7": + version "1.0.9" + resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" + integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== + +"@tsconfig/node12@^1.0.7": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" + integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== + +"@tsconfig/node14@^1.0.0": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" + integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== + +"@tsconfig/node16@^1.0.2": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9" + integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== + +"@typechain/ethers-v5@^9.0.0": + version "9.0.0" + resolved "https://registry.yarnpkg.com/@typechain/ethers-v5/-/ethers-v5-9.0.0.tgz#6aa93bea7425c0463bd8a61eea3643540ef851bd" + integrity sha512-bAanuPl1L2itaUdMvor/QvwnIH+TM/CmG00q17Ilv3ZZMeJ2j8HcarhgJUZ9pBY1teBb85P8cC03dz3mSSx+tQ== + dependencies: + lodash "^4.17.15" + ts-essentials "^7.0.1" + +"@types/accepts@^1.3.5": + version "1.3.7" + resolved "https://registry.yarnpkg.com/@types/accepts/-/accepts-1.3.7.tgz#3b98b1889d2b2386604c2bbbe62e4fb51e95b265" + integrity sha512-Pay9fq2lM2wXPWbteBsRAGiWH2hig4ZE2asK+mm7kUzlxRTfL961rj89I6zV/E3PcIkDqyuBEcMxFT7rccugeQ== + dependencies: + "@types/node" "*" + +"@types/body-parser@*": + version "1.19.5" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.5.tgz#04ce9a3b677dc8bd681a17da1ab9835dc9d3ede4" + integrity sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg== + dependencies: + "@types/connect" "*" + "@types/node" "*" + +"@types/body-parser@1.19.2": + version "1.19.2" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.2.tgz#aea2059e28b7658639081347ac4fab3de166e6f0" + integrity sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g== + dependencies: + "@types/connect" "*" + "@types/node" "*" + +"@types/connect@*": + version "3.4.38" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.38.tgz#5ba7f3bc4fbbdeaff8dded952e5ff2cc53f8d858" + integrity sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug== + dependencies: + "@types/node" "*" + +"@types/cors@2.8.12": + version "2.8.12" + resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.12.tgz#6b2c510a7ad7039e98e7b8d3d6598f4359e5c080" + integrity sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw== + +"@types/debug@^4.1.5": + version "4.1.12" + resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" + integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ== + dependencies: + "@types/ms" "*" + +"@types/dns-packet@^5.6.5": + version "5.6.5" + resolved "https://registry.yarnpkg.com/@types/dns-packet/-/dns-packet-5.6.5.tgz#49fc29a40f5d30227ed028fa1ee82601d3745e15" + integrity sha512-qXOC7XLOEe43ehtWJCMnQXvgcIpv6rPmQ1jXT98Ad8A3TB1Ue50jsCbSSSyuazScEuZ/Q026vHbrOTVkmwA+7Q== + dependencies: + "@types/node" "*" + +"@types/express-serve-static-core@4.17.31": + version "4.17.31" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz#a1139efeab4e7323834bb0226e62ac019f474b2f" + integrity sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + +"@types/express-serve-static-core@^4.17.18": + version "4.17.43" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.43.tgz#10d8444be560cb789c4735aea5eac6e5af45df54" + integrity sha512-oaYtiBirUOPQGSWNGPWnzyAFJ0BP3cwvN4oWZQY+zUBwpVIGsKUkpBpSztp74drYcjavs7SKFZ4DX1V2QeN8rg== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + "@types/send" "*" + +"@types/express@4.17.14": + version "4.17.14" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.14.tgz#143ea0557249bc1b3b54f15db4c81c3d4eb3569c" + integrity sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "^4.17.18" + "@types/qs" "*" + "@types/serve-static" "*" + +"@types/http-errors@*": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.4.tgz#7eb47726c391b7345a6ec35ad7f4de469cf5ba4f" + integrity sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA== + +"@types/http-proxy@^1.17.8": + version "1.17.14" + resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.14.tgz#57f8ccaa1c1c3780644f8a94f9c6b5000b5e2eec" + integrity sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w== + dependencies: + "@types/node" "*" + +"@types/json-bigint@^1.0.0": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@types/json-bigint/-/json-bigint-1.0.4.tgz#250d29e593375499d8ba6efaab22d094c3199ef3" + integrity sha512-ydHooXLbOmxBbubnA7Eh+RpBzuaIiQjh8WGJYQB50JFGFrdxW7JzVlyEV7fAXw0T2sqJ1ysTneJbiyNLqZRAag== + +"@types/json-diff@^0.5.2": + version "0.5.2" + resolved "https://registry.yarnpkg.com/@types/json-diff/-/json-diff-0.5.2.tgz#83689a504b3c7759f046d125d5521d6760ab9d0d" + integrity sha512-2oqXStJYYLDHCciNAClY277Ti3kXT+JLvPD7lLm/490i+B7g0GR6M4qiW+bd2V5vpB+yMKY8IelbsHMAYX1D0A== + +"@types/json-schema@^7.0.9": + version "7.0.15" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" + integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== + +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== + +"@types/long@^4.0.0", "@types/long@^4.0.1": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.2.tgz#b74129719fc8d11c01868010082d483b7545591a" + integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA== + +"@types/mime@*": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-3.0.4.tgz#2198ac274de6017b44d941e00261d5bc6a0e0a45" + integrity sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw== + +"@types/mime@^1": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.5.tgz#1ef302e01cf7d2b5a0fa526790c9123bf1d06690" + integrity sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w== + +"@types/minimatch@^3.0.4": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" + integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== + +"@types/ms@*": + version "0.7.34" + resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.34.tgz#10964ba0dee6ac4cd462e2795b6bebd407303433" + integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g== + +"@types/node@*", "@types/node@>=13.7.0": + version "20.11.27" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.27.tgz#debe5cfc8a507dd60fe2a3b4875b1604f215c2ac" + integrity sha512-qyUZfMnCg1KEz57r7pzFtSGt49f6RPkPBis3Vo4PbS7roQEDn22hiHzl/Lo1q4i4hDEgBJmBF/NTNg2XR0HbFg== + dependencies: + undici-types "~5.26.4" + +"@types/node@^10.1.0": + version "10.17.60" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b" + integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw== + +"@types/qs@*": + version "6.9.12" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.12.tgz#afa96b383a3a6fdc859453a1892d41b607fc7756" + integrity sha512-bZcOkJ6uWrL0Qb2NAWKa7TBU+mJHPzhx9jjLL1KHF+XpzEcR7EXHvjbHlGtR/IsP1vyPrehuS6XqkmaePy//mg== + +"@types/range-parser@*": + version "1.2.7" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" + integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== + +"@types/semver@^7.3.12": + version "7.5.8" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" + integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ== + +"@types/send@*": + version "0.17.4" + resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.4.tgz#6619cd24e7270793702e4e6a4b958a9010cfc57a" + integrity sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA== + dependencies: + "@types/mime" "^1" + "@types/node" "*" + +"@types/serve-static@*": + version "1.15.5" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.5.tgz#15e67500ec40789a1e8c9defc2d32a896f05b033" + integrity sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ== + dependencies: + "@types/http-errors" "*" + "@types/mime" "*" + "@types/node" "*" + +"@types/yargs-parser@*": + version "21.0.3" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" + integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== + +"@types/yargs@^17.0.0": + version "17.0.32" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.32.tgz#030774723a2f7faafebf645f4e5a48371dca6229" + integrity sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog== + dependencies: + "@types/yargs-parser" "*" + +"@types/zen-observable@0.8.3": + version "0.8.3" + resolved "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.8.3.tgz#781d360c282436494b32fe7d9f7f8e64b3118aa3" + integrity sha512-fbF6oTd4sGGy0xjHPKAt+eS2CrxJ3+6gQ3FGcBoIJR2TLAyCkCyI8JqZNy+FeON0AhVgNJoUumVoZQjBFUqHkw== + +"@typescript-eslint/eslint-plugin@^5.47.1": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db" + integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag== + dependencies: + "@eslint-community/regexpp" "^4.4.0" + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/type-utils" "5.62.0" + "@typescript-eslint/utils" "5.62.0" + debug "^4.3.4" + graphemer "^1.4.0" + ignore "^5.2.0" + natural-compare-lite "^1.4.0" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/parser@^5.47.1": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7" + integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== + dependencies: + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/typescript-estree" "5.62.0" + debug "^4.3.4" + +"@typescript-eslint/scope-manager@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" + integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + +"@typescript-eslint/type-utils@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a" + integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew== + dependencies: + "@typescript-eslint/typescript-estree" "5.62.0" + "@typescript-eslint/utils" "5.62.0" + debug "^4.3.4" + tsutils "^3.21.0" + +"@typescript-eslint/types@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" + integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== + +"@typescript-eslint/typescript-estree@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" + integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/utils@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" + integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@types/json-schema" "^7.0.9" + "@types/semver" "^7.3.12" + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/typescript-estree" "5.62.0" + eslint-scope "^5.1.1" + semver "^7.3.7" + +"@typescript-eslint/visitor-keys@5.62.0": + version "5.62.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" + integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== + dependencies: + "@typescript-eslint/types" "5.62.0" + eslint-visitor-keys "^3.3.0" + +"@ungap/promise-all-settled@1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" + integrity sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q== + +"@ungap/structured-clone@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" + integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== + +"@wry/caches@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@wry/caches/-/caches-1.0.1.tgz#8641fd3b6e09230b86ce8b93558d44cf1ece7e52" + integrity sha512-bXuaUNLVVkD20wcGBWRyo7j9N3TxePEWFZj2Y+r9OoUzfqmavM84+mFykRicNsBqatba5JLay1t48wxaXaWnlA== + dependencies: + tslib "^2.3.0" + +"@wry/context@^0.7.0": + version "0.7.4" + resolved "https://registry.yarnpkg.com/@wry/context/-/context-0.7.4.tgz#e32d750fa075955c4ab2cfb8c48095e1d42d5990" + integrity sha512-jmT7Sb4ZQWI5iyu3lobQxICu2nC/vbUhP0vIdd6tHC9PTfenmRmuIFqktc6GH9cgi+ZHnsLWPvfSvc4DrYmKiQ== + dependencies: + tslib "^2.3.0" + +"@wry/equality@^0.5.6": + version "0.5.7" + resolved "https://registry.yarnpkg.com/@wry/equality/-/equality-0.5.7.tgz#72ec1a73760943d439d56b7b1e9985aec5d497bb" + integrity sha512-BRFORjsTuQv5gxcXsuDXx6oGRhuVsEGwZy6LOzRRfgu+eSfxbhUQ9L9YtSEIuIjY/o7g3iWFjrc5eSY1GXP2Dw== + dependencies: + tslib "^2.3.0" + +"@wry/trie@^0.4.3": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@wry/trie/-/trie-0.4.3.tgz#077d52c22365871bf3ffcbab8e95cb8bc5689af4" + integrity sha512-I6bHwH0fSf6RqQcnnXLJKhkSXG45MFral3GxPaY4uAl0LYDZM+YDVDAiU9bYwjTuysy1S0IeecWtmq1SZA3M1w== + dependencies: + tslib "^2.3.0" + +"@wry/trie@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@wry/trie/-/trie-0.5.0.tgz#11e783f3a53f6e4cd1d42d2d1323f5bc3fa99c94" + integrity sha512-FNoYzHawTMk/6KMQoEG5O4PuioX19UbwdQKF44yw0nLfOypfQdjtfZzo/UIJWAJ23sNIFbD1Ug9lbaDGMwbqQA== + dependencies: + tslib "^2.3.0" + +abortable-iterator@^4.0.2: + version "4.0.3" + resolved "https://registry.yarnpkg.com/abortable-iterator/-/abortable-iterator-4.0.3.tgz#432570d8256dbad2cef4f129312b651c5ffcdd0f" + integrity sha512-GJ5fyS9O0hK/TMf+weR+WMEwSEBWVuStHqHmUYWbfHPULyVf7QdUnAvh41+1cUWtHVf0Z/qtQynidxz4ZFDPOg== + dependencies: + get-iterator "^2.0.0" + it-stream-types "^1.0.3" + +abortable-iterator@^5.0.0, abortable-iterator@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/abortable-iterator/-/abortable-iterator-5.0.1.tgz#5d93eba6fa8287a973a9ea090c64ca08b3777780" + integrity sha512-hlZ5Z8UwqrKsJcelVPEqDduZowJPBQJ9ZhBC2FXpja3lXy8X6MoI5uMzIgmrA8+3jcVnp8TF/tx+IBBqYJNUrg== + dependencies: + get-iterator "^2.0.0" + it-stream-types "^2.0.1" + +abstract-level@^1.0.2, abstract-level@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/abstract-level/-/abstract-level-1.0.4.tgz#3ad8d684c51cc9cbc9cf9612a7100b716c414b57" + integrity sha512-eUP/6pbXBkMbXFdx4IH2fVgvB7M0JvR7/lIL33zcs0IBcwjdzSSl31TOJsaCzmKSSDF9h8QYSOJux4Nd4YJqFg== + dependencies: + buffer "^6.0.3" + catering "^2.1.0" + is-buffer "^2.0.5" + level-supports "^4.0.0" + level-transcoder "^1.0.1" + module-error "^1.0.1" + queue-microtask "^1.2.3" + +abstract-leveldown@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-7.2.0.tgz#08d19d4e26fb5be426f7a57004851b39e1795a2e" + integrity sha512-DnhQwcFEaYsvYDnACLZhMmCWd3rkOeEvglpa4q5i/5Jlm3UIsWaxVzuXvDLFCSCWRO3yy2/+V/G7FusFgejnfQ== + dependencies: + buffer "^6.0.3" + catering "^2.0.0" + is-buffer "^2.0.5" + level-concat-iterator "^3.0.0" + level-supports "^2.0.1" + queue-microtask "^1.2.3" + +accepts@^1.3.5, accepts@~1.3.8: + version "1.3.8" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== + dependencies: + mime-types "~2.1.34" + negotiator "0.6.3" + +acorn-jsx@^5.3.2: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn-walk@^8.1.1: + version "8.3.2" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.2.tgz#7703af9415f1b6db9315d6895503862e231d34aa" + integrity sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A== + +acorn@^8.4.1, acorn@^8.9.0: + version "8.11.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" + integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== + +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + +ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ansi-colors@4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== + +ansi-regex@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" + integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== + +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +any-promise@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" + integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== + +any-signal@^3.0.0, any-signal@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/any-signal/-/any-signal-3.0.1.tgz#49cae34368187a3472e31de28fb5cb1430caa9a6" + integrity sha512-xgZgJtKEa9YmDqXodIgl7Fl1C8yNXr8w6gXjqK3LW4GcEiYT+6AQfJSE/8SPsEpLLmcvbv8YU+qet94UewHxqg== + +any-signal@^4.0.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/any-signal/-/any-signal-4.1.1.tgz#928416c355c66899e6b2a91cad4488f0324bae03" + integrity sha512-iADenERppdC+A2YKbOXXB2WUeABLaM6qnpZ70kZbPZ1cZMMJ7eF+3CaYm+/PhBizgkzlvssC7QuHS30oOiQYWA== + +anymatch@~3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +apollo-datasource@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/apollo-datasource/-/apollo-datasource-3.3.2.tgz#5711f8b38d4b7b53fb788cb4dbd4a6a526ea74c8" + integrity sha512-L5TiS8E2Hn/Yz7SSnWIVbZw0ZfEIXZCa5VUiVxD9P53JvSrf4aStvsFDlGWPvpIdCR+aly2CfoB79B9/JjKFqg== + dependencies: + "@apollo/utils.keyvaluecache" "^1.0.1" + apollo-server-env "^4.2.1" + +apollo-reporting-protobuf@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/apollo-reporting-protobuf/-/apollo-reporting-protobuf-3.4.0.tgz#6edd31f09d4a3704d9e808d1db30eca2229ded26" + integrity sha512-h0u3EbC/9RpihWOmcSsvTW2O6RXVaD/mPEjfrPkxRPTEPWqncsgOoRJw+wih4OqfH3PvTJvoEIf4LwKrUaqWog== + dependencies: + "@apollo/protobufjs" "1.2.6" + +apollo-server-core@^3.11.1, apollo-server-core@^3.13.0: + version "3.13.0" + resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-3.13.0.tgz#ad6601fbb34cc97eedca27a9fb0b5738d11cd27d" + integrity sha512-v/g6DR6KuHn9DYSdtQijz8dLOkP78I5JSVJzPkARhDbhpH74QNwrQ2PP2URAPPEDJ2EeZNQDX8PvbYkAKqg+kg== + dependencies: + "@apollo/utils.keyvaluecache" "^1.0.1" + "@apollo/utils.logger" "^1.0.0" + "@apollo/utils.usagereporting" "^1.0.0" + "@apollographql/apollo-tools" "^0.5.3" + "@apollographql/graphql-playground-html" "1.6.29" + "@graphql-tools/mock" "^8.1.2" + "@graphql-tools/schema" "^8.0.0" + "@josephg/resolvable" "^1.0.0" + apollo-datasource "^3.3.2" + apollo-reporting-protobuf "^3.4.0" + apollo-server-env "^4.2.1" + apollo-server-errors "^3.3.1" + apollo-server-plugin-base "^3.7.2" + apollo-server-types "^3.8.0" + async-retry "^1.2.1" + fast-json-stable-stringify "^2.1.0" + graphql-tag "^2.11.0" + loglevel "^1.6.8" + lru-cache "^6.0.0" + node-abort-controller "^3.0.1" + sha.js "^2.4.11" + uuid "^9.0.0" + whatwg-mimetype "^3.0.0" + +apollo-server-env@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/apollo-server-env/-/apollo-server-env-4.2.1.tgz#ea5b1944accdbdba311f179e4dfaeca482c20185" + integrity sha512-vm/7c7ld+zFMxibzqZ7SSa5tBENc4B0uye9LTfjJwGoQFY5xsUPH5FpO5j0bMUDZ8YYNbrF9SNtzc5Cngcr90g== + dependencies: + node-fetch "^2.6.7" + +apollo-server-errors@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/apollo-server-errors/-/apollo-server-errors-3.3.1.tgz#ba5c00cdaa33d4cbd09779f8cb6f47475d1cd655" + integrity sha512-xnZJ5QWs6FixHICXHxUfm+ZWqqxrNuPlQ+kj5m6RtEgIpekOPssH/SD9gf2B4HuWV0QozorrygwZnux8POvyPA== + +apollo-server-express@^3.11.1: + version "3.13.0" + resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-3.13.0.tgz#0d8d9bbba3b8b8264912d215f63fd44e74d5f42a" + integrity sha512-iSxICNbDUyebOuM8EKb3xOrpIwOQgKxGbR2diSr4HP3IW8T3njKFOoMce50vr+moOCe1ev8BnLcw9SNbuUtf7g== + dependencies: + "@types/accepts" "^1.3.5" + "@types/body-parser" "1.19.2" + "@types/cors" "2.8.12" + "@types/express" "4.17.14" + "@types/express-serve-static-core" "4.17.31" + accepts "^1.3.5" + apollo-server-core "^3.13.0" + apollo-server-types "^3.8.0" + body-parser "^1.19.0" + cors "^2.8.5" + parseurl "^1.3.3" + +apollo-server-plugin-base@^3.7.2: + version "3.7.2" + resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-3.7.2.tgz#c19cd137bc4c993ba2490ba2b571b0f3ce60a0cd" + integrity sha512-wE8dwGDvBOGehSsPTRZ8P/33Jan6/PmL0y0aN/1Z5a5GcbFhDaaJCjK5cav6npbbGL2DPKK0r6MPXi3k3N45aw== + dependencies: + apollo-server-types "^3.8.0" + +apollo-server-plugin-response-cache@^3.8.1: + version "3.8.2" + resolved "https://registry.yarnpkg.com/apollo-server-plugin-response-cache/-/apollo-server-plugin-response-cache-3.8.2.tgz#131ce372c3e83d5eaf8c826283c8432fa74b90dd" + integrity sha512-1k9iGgE7QIUvjC9B0A1elGrV5YcZZQFl5wEVOS7URUfEuTr3GsIHBZSFCLAEFNKTQewzS5Spqhv13AmFsOaFmg== + dependencies: + "@apollo/utils.keyvaluecache" "^1.0.1" + apollo-server-plugin-base "^3.7.2" + apollo-server-types "^3.8.0" + +apollo-server-types@^3.8.0: + version "3.8.0" + resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-3.8.0.tgz#d976b6967878681f715fe2b9e4dad9ba86b1346f" + integrity sha512-ZI/8rTE4ww8BHktsVpb91Sdq7Cb71rdSkXELSwdSR0eXu600/sY+1UXhTWdiJvk+Eq5ljqoHLwLbY2+Clq2b9A== + dependencies: + "@apollo/utils.keyvaluecache" "^1.0.1" + "@apollo/utils.logger" "^1.0.0" + apollo-reporting-protobuf "^3.4.0" + apollo-server-env "^4.2.1" + +apollo-type-bigint@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/apollo-type-bigint/-/apollo-type-bigint-0.1.3.tgz#9242115ca909b9467ba5c4bc6493a56a06984c0b" + integrity sha512-nyfwEWRZ+kon3Nnot20DufGm2EHZrkJoryYzw3soD+USdxhkcW434w1c/n+mjMLQDl86Z6EvlkvMX5Lordf2Wg== + +app-root-path@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-3.1.0.tgz#5971a2fc12ba170369a7a1ef018c71e6e47c2e86" + integrity sha512-biN3PwB2gUtjaYy/isrU3aNWI5w+fAfvHkSvCKeQGxhmYpwKFUxudR3Yya+KqVRHBmEDYh+/lTozYCFbmzX4nA== + +arg@^4.1.0: + version "4.1.3" + resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +array-buffer-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" + integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg== + dependencies: + call-bind "^1.0.5" + is-array-buffer "^3.0.4" + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== + +array-includes@^3.1.7: + version "3.1.7" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.7.tgz#8cd2e01b26f7a3086cbc87271593fe921c62abda" + integrity sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + get-intrinsic "^1.2.1" + is-string "^1.0.7" + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +array.prototype.filter@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array.prototype.filter/-/array.prototype.filter-1.0.3.tgz#423771edeb417ff5914111fff4277ea0624c0d0e" + integrity sha512-VizNcj/RGJiUyQBgzwxzE5oHdeuXY5hSbbmKMlphj1cy1Vl7Pn2asCGbSrru6hSQjmCzqTBPVWAF/whmEOVHbw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + es-array-method-boxes-properly "^1.0.0" + is-string "^1.0.7" + +array.prototype.findlastindex@^1.2.3: + version "1.2.4" + resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.4.tgz#d1c50f0b3a9da191981ff8942a0aedd82794404f" + integrity sha512-hzvSHUshSpCflDR1QMUBLHGHP1VIEBegT4pix9H/Z92Xw3ySoy6c2qh7lJWTJnRJ8JCZ9bJNCgTyYaJGcJu6xQ== + dependencies: + call-bind "^1.0.5" + define-properties "^1.2.1" + es-abstract "^1.22.3" + es-errors "^1.3.0" + es-shim-unscopables "^1.0.2" + +array.prototype.flat@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz#1476217df8cff17d72ee8f3ba06738db5b387d18" + integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + es-shim-unscopables "^1.0.0" + +array.prototype.flatmap@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz#c9a7c6831db8e719d6ce639190146c24bbd3e527" + integrity sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + es-shim-unscopables "^1.0.0" + +arraybuffer.prototype.slice@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz#097972f4255e41bc3425e37dc3f6421cf9aefde6" + integrity sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A== + dependencies: + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.5" + define-properties "^1.2.1" + es-abstract "^1.22.3" + es-errors "^1.2.1" + get-intrinsic "^1.2.3" + is-array-buffer "^3.0.4" + is-shared-array-buffer "^1.0.2" + +assert@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/assert/-/assert-2.1.0.tgz#6d92a238d05dc02e7427c881fb8be81c8448b2dd" + integrity sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw== + dependencies: + call-bind "^1.0.2" + is-nan "^1.3.2" + object-is "^1.1.5" + object.assign "^4.1.4" + util "^0.12.5" + +assertion-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== + +async-mutex@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/async-mutex/-/async-mutex-0.4.1.tgz#bccf55b96f2baf8df90ed798cb5544a1f6ee4c2c" + integrity sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA== + dependencies: + tslib "^2.4.0" + +async-retry@^1.2.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/async-retry/-/async-retry-1.3.3.tgz#0e7f36c04d8478e7a58bdbed80cedf977785f280" + integrity sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw== + dependencies: + retry "0.13.1" + +asyncify-wasm@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/asyncify-wasm/-/asyncify-wasm-1.2.1.tgz#a15c0480e858619a4f971e44e6fc05c49015d9e8" + integrity sha512-ZS7tZ8H8EVbUxAZnkKHvMt9UkYoALue2jwrVl7cnLByjq+1MRrbq7rL5TS+EHQduwkfXD/cNZNa+I0ZyLEBBRQ== + +available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + +benchmark@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/benchmark/-/benchmark-2.1.4.tgz#09f3de31c916425d498cc2ee565a0ebf3c2a5629" + integrity sha512-l9MlfN4M1K/H2fbhfMy3B7vJd6AGKJVQn2h6Sg/Yx+KckoUA7ewS5Vv6TjSq18ooE1kS9hhAlQRH3AkXIh/aOQ== + dependencies: + lodash "^4.17.4" + platform "^1.3.3" + +bignumber.js@^9.0.0: + version "9.1.2" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.1.2.tgz#b7c4242259c008903b13707983b5f4bbd31eda0c" + integrity sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +binaryen@101.0.0-nightly.20210723: + version "101.0.0-nightly.20210723" + resolved "https://registry.yarnpkg.com/binaryen/-/binaryen-101.0.0-nightly.20210723.tgz#b6bb7f3501341727681a03866c0856500eec3740" + integrity sha512-eioJNqhHlkguVSbblHOtLqlhtC882SOEPKmNFZaDuz1hzQjolxZ+eu3/kaS10n3sGPONsIZsO7R9fR00UyhEUA== + +bintrees@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/bintrees/-/bintrees-1.0.2.tgz#49f896d6e858a4a499df85c38fb399b9aff840f8" + integrity sha512-VOMgTMwjAaUG580SXn3LacVgjurrbMme7ZZNYGSSV7mmtY6QQRh0Eg3pwIcntQ77DErK1L0NxkbetjcoXzVwKw== + +blob-to-it@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/blob-to-it/-/blob-to-it-1.0.4.tgz#f6caf7a4e90b7bb9215fa6a318ed6bd8ad9898cb" + integrity sha512-iCmk0W4NdbrWgRRuxOriU8aM5ijeVLI61Zulsmg/lUHNr7pYjoj+U77opLefNagevtrrbMt3JQ5Qip7ar178kA== + dependencies: + browser-readablestream-to-it "^1.0.3" + +bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.2.0, bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + +body-parser@1.20.2, body-parser@^1.19.0: + version "1.20.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd" + integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA== + dependencies: + bytes "3.1.2" + content-type "~1.0.5" + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + http-errors "2.0.0" + iconv-lite "0.4.24" + on-finished "2.4.1" + qs "6.11.0" + raw-body "2.5.2" + type-is "~1.6.18" + unpipe "1.0.0" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^3.0.2, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +browser-level@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/browser-level/-/browser-level-1.0.1.tgz#36e8c3183d0fe1c405239792faaab5f315871011" + integrity sha512-XECYKJ+Dbzw0lbydyQuJzwNXtOpbMSq737qxJN11sIRTErOMShvDpbzTlgju7orJKvx4epULolZAuJGLzCmWRQ== + dependencies: + abstract-level "^1.0.2" + catering "^2.1.1" + module-error "^1.0.2" + run-parallel-limit "^1.1.0" + +browser-readablestream-to-it@^1.0.0, browser-readablestream-to-it@^1.0.1, browser-readablestream-to-it@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/browser-readablestream-to-it/-/browser-readablestream-to-it-1.0.3.tgz#ac3e406c7ee6cdf0a502dd55db33bab97f7fba76" + integrity sha512-+12sHB+Br8HIh6VAMVEG5r3UXCyESIgDW7kzk3BjIXa43DVqVwL7GC5TW3jeh+72dtcH99pPVpw0X8i0jt+/kw== + +browser-stdout@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" + integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== + +buffer-writer@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-2.0.0.tgz#ce7eb81a38f7829db09c873f2fbb792c0c98ec04" + integrity sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw== + +buffer@^6.0.1, buffer@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.2.1" + +bunyan@^1.8.15: + version "1.8.15" + resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" + integrity sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig== + optionalDependencies: + dtrace-provider "~0.8" + moment "^2.19.3" + mv "~2" + safe-json-stringify "~1" + +byte-access@^1.0.0, byte-access@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/byte-access/-/byte-access-1.0.1.tgz#84badd99be3671c03f0dd6a039a9c963983724af" + integrity sha512-GKYa+lvxnzhgHWj9X+LCsQ4s2/C5uvib573eAOiQKywXMkzFFErY2+yQdzmdE5iWVpmqecsRx3bOtOY4/1eINw== + dependencies: + uint8arraylist "^2.0.0" + +bytes@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== + +call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" + integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + set-function-length "^1.2.1" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + +canonical-json@^0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/canonical-json/-/canonical-json-0.0.4.tgz#6579c072c3db5c477ec41dc978fbf2b8f41074a3" + integrity sha512-2sW7x0m/P7dqEnO0O87U7RTVQAaa7MELcd+Jd9FA6CYgYtwJ1TlDWIYMD8nuMkH1KoThsJogqgLyklrt9d/Azw== + +catering@^2.0.0, catering@^2.1.0, catering@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/catering/-/catering-2.1.1.tgz#66acba06ed5ee28d5286133982a927de9a04b510" + integrity sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w== + +cborg@^1.5.4, cborg@^1.6.0: + version "1.10.2" + resolved "https://registry.yarnpkg.com/cborg/-/cborg-1.10.2.tgz#83cd581b55b3574c816f82696307c7512db759a1" + integrity sha512-b3tFPA9pUr2zCUiCfRd2+wok2/LBSNUMKOuRRok+WlvvAgEt/PlbgPTsZUcwCOs53IJvLgTp0eotwtosE6njug== + +chai@^4.3.4: + version "4.4.1" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.4.1.tgz#3603fa6eba35425b0f2ac91a009fe924106e50d1" + integrity sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g== + dependencies: + assertion-error "^1.1.0" + check-error "^1.0.3" + deep-eql "^4.1.3" + get-func-name "^2.0.2" + loupe "^2.3.6" + pathval "^1.1.1" + type-detect "^4.0.8" + +chalk@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + +chalk@^4.0.0, chalk@^4.1.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +check-error@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" + integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== + dependencies: + get-func-name "^2.0.2" + +chokidar@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" + integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.5.0" + optionalDependencies: + fsevents "~2.3.1" + +classic-level@^1.2.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/classic-level/-/classic-level-1.4.1.tgz#169ecf9f9c6200ad42a98c8576af449c1badbaee" + integrity sha512-qGx/KJl3bvtOHrGau2WklEZuXhS3zme+jf+fsu6Ej7W7IP/C49v7KNlWIsT1jZu0YnfzSIYDGcEWpCa1wKGWXQ== + dependencies: + abstract-level "^1.0.2" + catering "^2.1.0" + module-error "^1.0.1" + napi-macros "^2.2.2" + node-gyp-build "^4.3.0" + +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + +cli-color@~0.1.6: + version "0.1.7" + resolved "https://registry.yarnpkg.com/cli-color/-/cli-color-0.1.7.tgz#adc3200fa471cc211b0da7f566b71e98b9d67347" + integrity sha512-xNaQxWYgI6DD4xIJLn8GY2zDZVbrN0vsU1fEbDNAHZRyceWhpj7A08mYcG1AY92q1Aw0geYkVfiAcEYIZtuTSg== + dependencies: + es5-ext "0.8.x" + +cli-highlight@^2.1.11: + version "2.1.11" + resolved "https://registry.yarnpkg.com/cli-highlight/-/cli-highlight-2.1.11.tgz#49736fa452f0aaf4fae580e30acb26828d2dc1bf" + integrity sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg== + dependencies: + chalk "^4.0.0" + highlight.js "^10.7.1" + mz "^2.4.0" + parse5 "^5.1.1" + parse5-htmlparser2-tree-adapter "^6.0.0" + yargs "^16.0.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.1" + wrap-ansi "^7.0.0" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +commander@^2.20.3: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +content-disposition@0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== + dependencies: + safe-buffer "5.2.1" + +content-type@~1.0.4, content-type@~1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== + +cookie@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" + integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== + +copyfiles@^2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/copyfiles/-/copyfiles-2.4.1.tgz#d2dcff60aaad1015f09d0b66e7f0f1c5cd3c5da5" + integrity sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg== + dependencies: + glob "^7.0.5" + minimatch "^3.0.3" + mkdirp "^1.0.4" + noms "0.0.0" + through2 "^2.0.1" + untildify "^4.0.0" + yargs "^16.1.0" + +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + +cors@^2.8.5: + version "2.8.5" + resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" + integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== + dependencies: + object-assign "^4" + vary "^1" + +create-require@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== + +cron-parser@^4.0.0: + version "4.9.0" + resolved "https://registry.yarnpkg.com/cron-parser/-/cron-parser-4.9.0.tgz#0340694af3e46a0894978c6f52a6dbb5c0f11ad5" + integrity sha512-p0SaNjrHOnQeR8/VnfGbmg9te2kfyYSQ7Sc/j/6DtPL3JQvKxmjO9TSjNFpujqV3vEYYBvNNvXSxzyksBWAx1Q== + dependencies: + luxon "^3.2.1" + +cross-fetch@^3.1.4, cross-fetch@^3.1.5: + version "3.1.8" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.8.tgz#0327eba65fd68a7d119f8fb2bf9334a1a7956f82" + integrity sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg== + dependencies: + node-fetch "^2.6.12" + +cross-spawn@^7.0.2, cross-spawn@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +cssfilter@0.0.10: + version "0.0.10" + resolved "https://registry.yarnpkg.com/cssfilter/-/cssfilter-0.0.10.tgz#c6d2672632a2e5c83e013e6864a42ce8defd20ae" + integrity sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw== + +dag-jose@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/dag-jose/-/dag-jose-1.0.0.tgz#52e42d70cb5bee31ae4e8e3ab860615568d7ad73" + integrity sha512-U0b/YsIPBp6YZNTFrVjwLZAlY3qGRxZTIEcM/CcQmrVrCWq9MWQq9pheXVSPLIhF4SNwzp2SikPva4/BIrJY+g== + dependencies: + "@ipld/dag-cbor" "^6.0.3" + multiformats "^9.0.2" + +datastore-core@^8.0.1: + version "8.0.4" + resolved "https://registry.yarnpkg.com/datastore-core/-/datastore-core-8.0.4.tgz#a5951c8e530f0ba11ca44f6bb3ce5d7070a3d44e" + integrity sha512-oBA6a024NFXJOTu+w9nLAimfy4wCYUhdE/5XQGtdKt1BmCVtPYW10GORvVT3pdZBcse6k/mVcBl+hjkXIlm65A== + dependencies: + "@libp2p/logger" "^2.0.0" + err-code "^3.0.1" + interface-datastore "^7.0.0" + it-all "^2.0.0" + it-drain "^2.0.0" + it-filter "^2.0.0" + it-map "^2.0.0" + it-merge "^2.0.0" + it-pipe "^2.0.3" + it-pushable "^3.0.0" + it-take "^2.0.0" + uint8arrays "^4.0.2" + +debug@2.6.9, debug@^2.2.0: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== + dependencies: + ms "2.1.2" + +debug@^3.1.0, debug@^3.2.7: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + +decamelize@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" + integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== + +decimal.js@^10.3.1: + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== + +deep-eql@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.3.tgz#7c7775513092f7df98d8df9996dd085eb668cc6d" + integrity sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw== + dependencies: + type-detect "^4.0.0" + +deep-is@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + +default-gateway@^7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-7.2.2.tgz#85e6d88fde0f58703bab7744ed9d5330fa6b3f6c" + integrity sha512-AD7TrdNNPXRZIGw63dw+lnGmT4v7ggZC5NHNJgAYWm5njrwoze1q5JSAW9YuLy2tjnoLUG/r8FEB93MCh9QJPg== + dependencies: + execa "^7.1.1" + +deferred-leveldown@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-7.0.0.tgz#39802715fda6ec06d0159a8b28bd1c7e2b1cf0bf" + integrity sha512-QKN8NtuS3BC6m0B8vAnBls44tX1WXAFATUsJlruyAYbZpysWV3siH6o/i3g9DCHauzodksO60bdj5NazNbjCmg== + dependencies: + abstract-leveldown "^7.2.0" + inherits "^2.0.3" + +define-data-property@^1.0.1, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + +define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + +delay@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/delay/-/delay-5.0.0.tgz#137045ef1b96e5071060dd5be60bf9334436bd1d" + integrity sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw== + +denque@^1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/denque/-/denque-1.5.1.tgz#07f670e29c9a78f8faecb2566a1e2c11929c5cbf" + integrity sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw== + +depd@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +destroy@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== + +diff@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" + integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== + +diff@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" + integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== + +difflib@~0.2.1: + version "0.2.4" + resolved "https://registry.yarnpkg.com/difflib/-/difflib-0.2.4.tgz#b5e30361a6db023176d562892db85940a718f47e" + integrity sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w== + dependencies: + heap ">= 0.2.0" + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +dns-over-http-resolver@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/dns-over-http-resolver/-/dns-over-http-resolver-1.2.3.tgz#194d5e140a42153f55bb79ac5a64dd2768c36af9" + integrity sha512-miDiVSI6KSNbi4SVifzO/reD8rMnxgrlnkrlkugOLQpWQTe2qMdHsZp5DmfKjxNE+/T3VAAYLQUZMv9SMr6+AA== + dependencies: + debug "^4.3.1" + native-fetch "^3.0.0" + receptacle "^1.3.2" + +dns-over-http-resolver@^2.1.0: + version "2.1.3" + resolved "https://registry.yarnpkg.com/dns-over-http-resolver/-/dns-over-http-resolver-2.1.3.tgz#bb7f2e10cc18d960339a6e30e21b8c1d99be7b38" + integrity sha512-zjRYFhq+CsxPAouQWzOsxNMvEN+SHisjzhX8EMxd2Y0EG3thvn6wXQgMJLnTDImkhe4jhLbOQpXtL10nALBOSA== + dependencies: + debug "^4.3.1" + native-fetch "^4.0.2" + receptacle "^1.3.2" + undici "^5.12.0" + +dns-packet@^5.6.1: + version "5.6.1" + resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-5.6.1.tgz#ae888ad425a9d1478a0674256ab866de1012cf2f" + integrity sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw== + dependencies: + "@leichtgewicht/ip-codec" "^2.0.1" + +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +dotenv@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" + integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== + +dotenv@^8.2.0: + version "8.6.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" + integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== + +dreamopt@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/dreamopt/-/dreamopt-0.6.0.tgz#d813ccdac8d39d8ad526775514a13dda664d6b4b" + integrity sha512-KRJa47iBEK0y6ZtgCgy2ykuvMT8c9gj3ua9Dv7vCkclFJJeH2FjhGY2xO5qBoWGahsjCGMlk4Cq9wJYeWxuYhQ== + dependencies: + wordwrap ">=0.0.2" + +dtrace-provider@~0.8: + version "0.8.8" + resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.8.tgz#2996d5490c37e1347be263b423ed7b297fb0d97e" + integrity sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg== + dependencies: + nan "^2.14.0" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== + +electron-fetch@^1.7.2: + version "1.9.1" + resolved "https://registry.yarnpkg.com/electron-fetch/-/electron-fetch-1.9.1.tgz#e28bfe78d467de3f2dec884b1d72b8b05322f30f" + integrity sha512-M9qw6oUILGVrcENMSRRefE1MbHPIz0h79EKIeJWK9v563aT9Qkh8aEHPO1H5vi970wPirNY+jO9OpFoLiMsMGA== + dependencies: + encoding "^0.1.13" + +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +elliptic@^6.5.4: + version "6.5.5" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.5.tgz#c715e09f78b6923977610d4c2346d6ce22e6dded" + integrity sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== + +encoding-down@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-7.1.0.tgz#8d55b5a20d50eb6f0edaf7233f6aee0ff562386a" + integrity sha512-ky47X5jP84ryk5EQmvedQzELwVJPjCgXDQZGeb9F6r4PdChByCGHTBrVcF3h8ynKVJ1wVbkxTsDC8zBROPypgQ== + dependencies: + abstract-leveldown "^7.2.0" + inherits "^2.0.3" + level-codec "^10.0.0" + level-errors "^3.0.0" + +encoding@^0.1.13: + version "0.1.13" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== + dependencies: + iconv-lite "^0.6.2" + +err-code@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-3.0.1.tgz#a444c7b992705f2b120ee320b09972eef331c920" + integrity sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA== + +es-abstract@^1.22.1, es-abstract@^1.22.3: + version "1.22.5" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.5.tgz#1417df4e97cc55f09bf7e58d1e614bc61cb8df46" + integrity sha512-oW69R+4q2wG+Hc3KZePPZxOiisRIqfKBVo/HLx94QcJeWGU/8sZhCvc829rd1kS366vlJbzBfXf9yWwf0+Ko7w== + dependencies: + array-buffer-byte-length "^1.0.1" + arraybuffer.prototype.slice "^1.0.3" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + es-define-property "^1.0.0" + es-errors "^1.3.0" + es-set-tostringtag "^2.0.3" + es-to-primitive "^1.2.1" + function.prototype.name "^1.1.6" + get-intrinsic "^1.2.4" + get-symbol-description "^1.0.2" + globalthis "^1.0.3" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + has-proto "^1.0.3" + has-symbols "^1.0.3" + hasown "^2.0.1" + internal-slot "^1.0.7" + is-array-buffer "^3.0.4" + is-callable "^1.2.7" + is-negative-zero "^2.0.3" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.3" + is-string "^1.0.7" + is-typed-array "^1.1.13" + is-weakref "^1.0.2" + object-inspect "^1.13.1" + object-keys "^1.1.1" + object.assign "^4.1.5" + regexp.prototype.flags "^1.5.2" + safe-array-concat "^1.1.0" + safe-regex-test "^1.0.3" + string.prototype.trim "^1.2.8" + string.prototype.trimend "^1.0.7" + string.prototype.trimstart "^1.0.7" + typed-array-buffer "^1.0.2" + typed-array-byte-length "^1.0.1" + typed-array-byte-offset "^1.0.2" + typed-array-length "^1.0.5" + unbox-primitive "^1.0.2" + which-typed-array "^1.1.14" + +es-array-method-boxes-properly@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" + integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== + +es-define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" + integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== + dependencies: + get-intrinsic "^1.2.4" + +es-errors@^1.0.0, es-errors@^1.2.1, es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + +es-set-tostringtag@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" + integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ== + dependencies: + get-intrinsic "^1.2.4" + has-tostringtag "^1.0.2" + hasown "^2.0.1" + +es-shim-unscopables@^1.0.0, es-shim-unscopables@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz#1f6942e71ecc7835ed1c8a83006d8771a63a3763" + integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw== + dependencies: + hasown "^2.0.0" + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +es5-ext@0.8.x: + version "0.8.2" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.8.2.tgz#aba8d9e1943a895ac96837a62a39b3f55ecd94ab" + integrity sha512-H19ompyhnKiBdjHR1DPHvf5RHgHPmJaY9JNzFGbMbPgdsUkvnUCN1Ke8J4Y0IMyTwFM2M9l4h2GoHwzwpSmXbA== + +escalade@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + +escape-string-regexp@4.0.0, escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +escape-string-regexp@^1.0.2: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +eslint-config-semistandard@^15.0.1: + version "15.0.1" + resolved "https://registry.yarnpkg.com/eslint-config-semistandard/-/eslint-config-semistandard-15.0.1.tgz#a868397af8fb26d1bb6b907aa9d575d385581099" + integrity sha512-sfV+qNBWKOmF0kZJll1VH5XqOAdTmLlhbOl9WKI11d2eMEe+Kicxnpm24PQWHOqAfk5pAWU2An0LjNCXKa4Usg== + +eslint-config-standard@^16.0.3: + version "16.0.3" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-16.0.3.tgz#6c8761e544e96c531ff92642eeb87842b8488516" + integrity sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg== + +eslint-import-resolver-node@^0.3.9: + version "0.3.9" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac" + integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g== + dependencies: + debug "^3.2.7" + is-core-module "^2.13.0" + resolve "^1.22.4" + +eslint-module-utils@^2.8.0: + version "2.8.1" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz#52f2404300c3bd33deece9d7372fb337cc1d7c34" + integrity sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q== + dependencies: + debug "^3.2.7" + +eslint-plugin-es@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz#75a7cdfdccddc0589934aeeb384175f221c57893" + integrity sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== + dependencies: + eslint-utils "^2.0.0" + regexpp "^3.0.0" + +eslint-plugin-import@^2.27.5: + version "2.29.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz#d45b37b5ef5901d639c15270d74d46d161150643" + integrity sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw== + dependencies: + array-includes "^3.1.7" + array.prototype.findlastindex "^1.2.3" + array.prototype.flat "^1.3.2" + array.prototype.flatmap "^1.3.2" + debug "^3.2.7" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.9" + eslint-module-utils "^2.8.0" + hasown "^2.0.0" + is-core-module "^2.13.1" + is-glob "^4.0.3" + minimatch "^3.1.2" + object.fromentries "^2.0.7" + object.groupby "^1.0.1" + object.values "^1.1.7" + semver "^6.3.1" + tsconfig-paths "^3.15.0" + +eslint-plugin-node@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz#c95544416ee4ada26740a30474eefc5402dc671d" + integrity sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g== + dependencies: + eslint-plugin-es "^3.0.0" + eslint-utils "^2.0.0" + ignore "^5.1.1" + minimatch "^3.0.4" + resolve "^1.10.1" + semver "^6.1.0" + +eslint-plugin-promise@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-5.2.0.tgz#a596acc32981627eb36d9d75f9666ac1a4564971" + integrity sha512-SftLb1pUG01QYq2A/hGAWfDRXqYD82zE7j7TopDOyNdU+7SvvoXREls/+PRTY17vUXzXnZA/zfnyKgRH6x4JJw== + +eslint-plugin-standard@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-5.0.0.tgz#c43f6925d669f177db46f095ea30be95476b1ee4" + integrity sha512-eSIXPc9wBM4BrniMzJRBm2uoVuXz2EPa+NXPk2+itrVt+r5SbKFERx/IgrK/HmfjddyKVz2f+j+7gBRvu19xLg== + +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-scope@^7.2.2: + version "7.2.2" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f" + integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== + dependencies: + esrecurse "^4.3.0" + estraverse "^5.2.0" + +eslint-utils@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-visitor-keys@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" + integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== + +eslint@^8.35.0: + version "8.57.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.0.tgz#c786a6fd0e0b68941aaf624596fb987089195668" + integrity sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@eslint-community/regexpp" "^4.6.1" + "@eslint/eslintrc" "^2.1.4" + "@eslint/js" "8.57.0" + "@humanwhocodes/config-array" "^0.11.14" + "@humanwhocodes/module-importer" "^1.0.1" + "@nodelib/fs.walk" "^1.2.8" + "@ungap/structured-clone" "^1.2.0" + ajv "^6.12.4" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.3.2" + doctrine "^3.0.0" + escape-string-regexp "^4.0.0" + eslint-scope "^7.2.2" + eslint-visitor-keys "^3.4.3" + espree "^9.6.1" + esquery "^1.4.2" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + find-up "^5.0.0" + glob-parent "^6.0.2" + globals "^13.19.0" + graphemer "^1.4.0" + ignore "^5.2.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + is-path-inside "^3.0.3" + js-yaml "^4.1.0" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.1.2" + natural-compare "^1.4.0" + optionator "^0.9.3" + strip-ansi "^6.0.1" + text-table "^0.2.0" + +espree@^9.6.0, espree@^9.6.1: + version "9.6.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" + integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== + dependencies: + acorn "^8.9.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^3.4.1" + +esquery@^1.4.2: + version "1.5.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" + integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== + +ethers@^5.1.4, ethers@^5.4.4, ethers@^5.7.2: + version "5.7.2" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e" + integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.1" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.2" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.1" + "@ethersproject/wordlists" "5.7.0" + +event-iterator@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/event-iterator/-/event-iterator-2.0.0.tgz#10f06740cc1e9fd6bc575f334c2bc1ae9d2dbf62" + integrity sha512-KGft0ldl31BZVV//jj+IAIGCxkvvUkkON+ScH6zfoX+l+omX6001ggyRSpI0Io2Hlro0ThXotswCtfzS8UkIiQ== + +eventemitter3@^4.0.0: + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== + +eventemitter3@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" + integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== + +events@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + +execa@^7.1.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-7.2.0.tgz#657e75ba984f42a70f38928cedc87d6f2d4fe4e9" + integrity sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.1" + human-signals "^4.3.0" + is-stream "^3.0.0" + merge-stream "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^3.0.7" + strip-final-newline "^3.0.0" + +express-end@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/express-end/-/express-end-0.0.8.tgz#0c8fd95428932158f2b4cf91f4045346bf2c5323" + integrity sha512-PPntzICAq006LBpXKBVJtmRUiCRqTMZ+OB8L2RFXgx+OmkMWU66IL4DTEPF/DOcxmsuC7Y0NdbT2R71lb+pBpg== + dependencies: + debug "^2.2.0" + +express-queue@^0.0.13: + version "0.0.13" + resolved "https://registry.yarnpkg.com/express-queue/-/express-queue-0.0.13.tgz#e9800d67749d4dfab7c34223f00595af933ce5df" + integrity sha512-C4OEDasGDqpXLrZICSUxbY47p5c0bKqf/3/3hwauSCmI+jVVxKBWU2w39BuKLP6nF65z87uDFBbJMPAn2ZrG3g== + dependencies: + debug "^4.3.4" + express-end "0.0.8" + mini-queue "0.0.14" + +express@^4.18.2: + version "4.18.3" + resolved "https://registry.yarnpkg.com/express/-/express-4.18.3.tgz#6870746f3ff904dee1819b82e4b51509afffb0d4" + integrity sha512-6VyCijWQ+9O7WuVMTRBTl+cjNNIzD5cY5mQ1WM8r/LEkI2u8EYpOotESNwzNlyCn3g+dmjKYI6BmNneSr/FSRw== + dependencies: + accepts "~1.3.8" + array-flatten "1.1.1" + body-parser "1.20.2" + content-disposition "0.5.4" + content-type "~1.0.4" + cookie "0.5.0" + cookie-signature "1.0.6" + debug "2.6.9" + depd "2.0.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "1.2.0" + fresh "0.5.2" + http-errors "2.0.0" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "2.4.1" + parseurl "~1.3.3" + path-to-regexp "0.1.7" + proxy-addr "~2.0.7" + qs "6.11.0" + range-parser "~1.2.1" + safe-buffer "5.2.1" + send "0.18.0" + serve-static "1.15.0" + setprototypeof "1.2.0" + statuses "2.0.1" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-fifo@^1.0.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" + integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== + +fast-glob@^3.2.9: + version "3.3.2" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" + integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + +fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== + +fastq@^1.6.0: + version "1.17.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" + integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== + dependencies: + reusify "^1.0.4" + +figlet@^1.1.1: + version "1.7.0" + resolved "https://registry.yarnpkg.com/figlet/-/figlet-1.7.0.tgz#46903a04603fd19c3e380358418bb2703587a72e" + integrity sha512-gO8l3wvqo0V7wEFLXPbkX83b7MVjRrk1oRLfYlZXol8nEpb/ON9pcKLI4qpBv5YtOTfrINtqb7b40iYY2FTWFg== + +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +finalhandler@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" + integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== + dependencies: + debug "2.6.9" + encodeurl "~1.0.2" + escape-html "~1.0.3" + on-finished "2.4.1" + parseurl "~1.3.3" + statuses "2.0.1" + unpipe "~1.0.0" + +find-up@5.0.0, find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +flat-cache@^3.0.4: + version "3.2.0" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee" + integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== + dependencies: + flatted "^3.2.9" + keyv "^4.5.3" + rimraf "^3.0.2" + +flat@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== + +flatted@^3.2.9: + version "3.3.1" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" + integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== + +follow-redirects@^1.0.0: + version "1.15.5" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.5.tgz#54d4d6d062c0fa7d9d17feb008461550e3ba8020" + integrity sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw== + +for-each@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" + integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== + dependencies: + is-callable "^1.1.3" + +forwarded@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== + +freeport-promise@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/freeport-promise/-/freeport-promise-2.0.0.tgz#11e4f81e24d680b88a20c15b2103551f4b6663d8" + integrity sha512-dwWpT1DdQcwrhmRwnDnPM/ZFny+FtzU+k50qF2eid3KxaQDsMiBrwo1i0G3qSugkN5db6Cb0zgfc68QeTOpEFg== + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== + +fs-extra@^10.0.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@~2.3.1: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +function.prototype.name@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd" + integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + functions-have-names "^1.2.3" + +functions-have-names@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== + +get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-func-name@^2.0.1, get-func-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" + integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== + +get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" + integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + has-proto "^1.0.1" + has-symbols "^1.0.3" + hasown "^2.0.0" + +get-iterator@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-iterator/-/get-iterator-1.0.2.tgz#cd747c02b4c084461fac14f48f6b45a80ed25c82" + integrity sha512-v+dm9bNVfOYsY1OrhaCrmyOcYoSeVvbt+hHZ0Au+T+p1y+0Uyj9aMaGIeUTT6xdpRbWzDeYKvfOslPhggQMcsg== + +get-iterator@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/get-iterator/-/get-iterator-2.0.1.tgz#a904829f61bace789e0d64bd1a504c511a015c3f" + integrity sha512-7HuY/hebu4gryTDT7O/XY/fvY9wRByEGdK6QOa4of8npTcv0+NS6frFKABcf6S9EBAsveTuKTsZQQBFMMNILIg== + +get-stream@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + +get-symbol-description@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" + integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg== + dependencies: + call-bind "^1.0.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + +get-value@^2.0.3: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== + +glob-parent@^5.1.2, glob-parent@~5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + +glob@7.1.6: + version "7.1.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^6.0.1: + version "6.0.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" + integrity sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A== + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^7.0.5, glob@^7.1.3, glob@^7.1.6: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.1.1" + once "^1.3.0" + path-is-absolute "^1.0.0" + +globals@^13.19.0: + version "13.24.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171" + integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== + dependencies: + type-fest "^0.20.2" + +globalthis@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" + integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== + dependencies: + define-properties "^1.1.3" + +globby@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" + +gopd@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== + dependencies: + get-intrinsic "^1.1.3" + +graceful-fs@^4.1.6, graceful-fs@^4.2.0: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +graphemer@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" + integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== + +graphql-request@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/graphql-request/-/graphql-request-6.1.0.tgz#f4eb2107967af3c7a5907eb3131c671eac89be4f" + integrity sha512-p+XPfS4q7aIpKVcgmnZKhMNqhltk20hfXtkaIkTfjjmiKMJ5xrt5c743cL03y/K7y1rg3WrIC49xGiEQ4mxdNw== + dependencies: + "@graphql-typed-document-node/core" "^3.2.0" + cross-fetch "^3.1.5" + +graphql-subscriptions@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/graphql-subscriptions/-/graphql-subscriptions-2.0.0.tgz#11ec181d475852d8aec879183e8e1eb94f2eb79a" + integrity sha512-s6k2b8mmt9gF9pEfkxsaO1lTxaySfKoEJzEfmwguBbQ//Oq23hIXCfR1hm4kdh5hnR20RdwB+s3BCb+0duHSZA== + dependencies: + iterall "^1.3.0" + +graphql-tag@^2.11.0, graphql-tag@^2.12.6: + version "2.12.6" + resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.12.6.tgz#d441a569c1d2537ef10ca3d1633b48725329b5f1" + integrity sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg== + dependencies: + tslib "^2.1.0" + +graphql-ws@^5.11.2: + version "5.15.0" + resolved "https://registry.yarnpkg.com/graphql-ws/-/graphql-ws-5.15.0.tgz#2db79e1b42468a8363bf5ca6168d076e2f8fdebc" + integrity sha512-xWGAtm3fig9TIhSaNsg0FaDZ8Pyn/3re3RFlP4rhQcmjRDIPpk1EhRuNB+YSJtLzttyuToaDiNhwT1OMoGnJnw== + +graphql@^15.5.0: + version "15.8.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.8.0.tgz#33410e96b012fa3bdb1091cc99a94769db212b38" + integrity sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw== + +growl@1.10.5: + version "1.10.5" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" + integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== + dependencies: + ansi-regex "^2.0.0" + +has-bigints@^1.0.1, has-bigints@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-proto@^1.0.1, has-proto@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" + integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== + +has-symbols@^1.0.2, has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== + +has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== + +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hashlru@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/hashlru/-/hashlru-2.3.0.tgz#5dc15928b3f6961a2056416bb3a4910216fdfb51" + integrity sha512-0cMsjjIC8I+D3M44pOQdsy0OHXGLVz6Z0beRuufhKa0KfaD2wGwAev6jILzXsd3/vpnNQJmWyZtIILqM1N+n5A== + +hasown@^2.0.0, hasown@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + +he@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + +"heap@>= 0.2.0", heap@^0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/heap/-/heap-0.2.7.tgz#1e6adf711d3f27ce35a81fe3b7bd576c2260a8fc" + integrity sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg== + +highlight.js@^10.7.1: + version "10.7.3" + resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.7.3.tgz#697272e3991356e40c3cac566a74eef681756531" + integrity sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A== + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hoist-non-react-statics@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== + dependencies: + react-is "^16.7.0" + +http-errors@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== + dependencies: + depd "2.0.0" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses "2.0.1" + toidentifier "1.0.1" + +http-proxy-middleware@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz#e1a4dd6979572c7ab5a4e4b55095d1f32a74963f" + integrity sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw== + dependencies: + "@types/http-proxy" "^1.17.8" + http-proxy "^1.18.1" + is-glob "^4.0.1" + is-plain-obj "^3.0.0" + micromatch "^4.0.2" + +http-proxy@^1.18.1: + version "1.18.1" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" + integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== + dependencies: + eventemitter3 "^4.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + +human-signals@^4.3.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-4.3.1.tgz#ab7f811e851fca97ffbd2c1fe9a958964de321b2" + integrity sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ== + +husky@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/husky/-/husky-7.0.4.tgz#242048245dc49c8fb1bf0cc7cfb98dd722531535" + integrity sha512-vbaCKN2QLtP/vD4yvs6iz6hBEo6wkSzs8HpRah1Z6aGmF2KW5PdYuAd7uX5a+OyBZHBhd+TFLqgjUgytQr4RvQ== + +iconv-lite@0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +iconv-lite@^0.6.2: + version "0.6.3" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== + dependencies: + safer-buffer ">= 2.1.2 < 3.0.0" + +ieee754@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +ignore@^5.1.1, ignore@^5.2.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" + integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== + +import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +interface-datastore@^6.0.2: + version "6.1.1" + resolved "https://registry.yarnpkg.com/interface-datastore/-/interface-datastore-6.1.1.tgz#5150a00de2e7513eaadba58bcafd059cb50004c1" + integrity sha512-AmCS+9CT34pp2u0QQVXjKztkuq3y5T+BIciuiHDDtDZucZD8VudosnSdUyXJV6IsRkN5jc4RFDhCk1O6Q3Gxjg== + dependencies: + interface-store "^2.0.2" + nanoid "^3.0.2" + uint8arrays "^3.0.0" + +interface-datastore@^7.0.0, interface-datastore@^7.0.3: + version "7.0.4" + resolved "https://registry.yarnpkg.com/interface-datastore/-/interface-datastore-7.0.4.tgz#f09ae4e2896f57f876d5d742a59e982fb3f42891" + integrity sha512-Q8LZS/jfFFHz6XyZazLTAc078SSCoa27ZPBOfobWdpDiFO7FqPA2yskitUJIhaCgxNK8C+/lMBUTBNfVIDvLiw== + dependencies: + interface-store "^3.0.0" + nanoid "^4.0.0" + uint8arrays "^4.0.2" + +interface-datastore@^8.2.0, interface-datastore@^8.2.11: + version "8.2.11" + resolved "https://registry.yarnpkg.com/interface-datastore/-/interface-datastore-8.2.11.tgz#1d555ce6218ab6cba6291fc361debe9713590207" + integrity sha512-9E0iXehfp/j0UbZ2mvlYB4K9pP7uQBCppfuy8WHs1EHF6wLQrM9+zwyX+8Qt6HnH4GKZRyXX/CNXm6oD4+QYgA== + dependencies: + interface-store "^5.0.0" + uint8arrays "^5.0.2" + +interface-store@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/interface-store/-/interface-store-2.0.2.tgz#83175fd2b0c501585ed96db54bb8ba9d55fce34c" + integrity sha512-rScRlhDcz6k199EkHqT8NpM87ebN89ICOzILoBHgaG36/WX50N32BnU/kpZgCGPLhARRAWUUX5/cyaIjt7Kipg== + +interface-store@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/interface-store/-/interface-store-3.0.4.tgz#670d95ef45f3b7061d154c3cbfaf39a538167ad7" + integrity sha512-OjHUuGXbH4eXSBx1TF1tTySvjLldPLzRSYYXJwrEQI+XfH5JWYZofr0gVMV4F8XTwC+4V7jomDYkvGRmDSRKqQ== + +interface-store@^5.0.0: + version "5.1.8" + resolved "https://registry.yarnpkg.com/interface-store/-/interface-store-5.1.8.tgz#94bf867d165b5c904cccf09adeba215a5b0f459e" + integrity sha512-7na81Uxkl0vqk0CBPO5PvyTkdaJBaezwUJGsMOz7riPOq0rJt+7W31iaopaMICWea/iykUsvNlPx/Tc+MxC3/w== + +internal-slot@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802" + integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g== + dependencies: + es-errors "^1.3.0" + hasown "^2.0.0" + side-channel "^1.0.4" + +ip-regex@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-4.3.0.tgz#687275ab0f57fa76978ff8f4dddc8a23d5990db5" + integrity sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q== + +ip-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-5.0.0.tgz#cd313b2ae9c80c07bd3851e12bf4fa4dc5480632" + integrity sha512-fOCG6lhoKKakwv+C6KdsOnGvgXnmgfmp0myi3bcNwj3qfwPAxRKWEuFhvEFF7ceYIz6+1jRZ+yguLFAmUNPEfw== + +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + +ipaddr.js@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.1.0.tgz#2119bc447ff8c257753b196fc5f1ce08a4cdf39f" + integrity sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ== + +ipfs-core-types@^0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/ipfs-core-types/-/ipfs-core-types-0.10.3.tgz#89ebe98199d4d829f2b20104bfa3299f808c80fe" + integrity sha512-GNid2lRBjR5qgScCglgk7w9Hk3TZAwPHQXxOLQx72wgyc0jF2U5NXRoKW0GRvX8NPbHmsrFszForIqxd23I1Gw== + dependencies: + "@ipld/dag-pb" "^2.1.3" + interface-datastore "^6.0.2" + ipfs-unixfs "^6.0.3" + multiaddr "^10.0.0" + multiformats "^9.5.1" + +ipfs-core-utils@^0.14.3: + version "0.14.3" + resolved "https://registry.yarnpkg.com/ipfs-core-utils/-/ipfs-core-utils-0.14.3.tgz#d04c631c472507bdefc58d4e8d1d9109efbb411c" + integrity sha512-aBkewVhgAj3NWXPwu6imj0wADGiGVZmJzqKzODOJsibDjkx6FGdMv8kvvqtLnK8LS/dvSk9yk32IDtuDyYoV7Q== + dependencies: + any-signal "^3.0.0" + blob-to-it "^1.0.1" + browser-readablestream-to-it "^1.0.1" + debug "^4.1.1" + err-code "^3.0.1" + ipfs-core-types "^0.10.3" + ipfs-unixfs "^6.0.3" + ipfs-utils "^9.0.6" + it-all "^1.0.4" + it-map "^1.0.4" + it-peekable "^1.0.2" + it-to-stream "^1.0.0" + merge-options "^3.0.4" + multiaddr "^10.0.0" + multiaddr-to-uri "^8.0.0" + multiformats "^9.5.1" + nanoid "^3.1.23" + parse-duration "^1.0.0" + timeout-abort-controller "^3.0.0" + uint8arrays "^3.0.0" + +ipfs-http-client@^56.0.3: + version "56.0.3" + resolved "https://registry.yarnpkg.com/ipfs-http-client/-/ipfs-http-client-56.0.3.tgz#45bbea55347ef13524769d5919cbed84d9d022d6" + integrity sha512-E3L5ylVl6BjyRUsNehvfuRBYp1hj8vQ8in4zskVPMNzXs6JiCFUbif5a6BtcAlSK4xPQyJCeLNNAWLUeFQTLNA== + dependencies: + "@ipld/dag-cbor" "^7.0.0" + "@ipld/dag-json" "^8.0.1" + "@ipld/dag-pb" "^2.1.3" + any-signal "^3.0.0" + dag-jose "^1.0.0" + debug "^4.1.1" + err-code "^3.0.1" + ipfs-core-types "^0.10.3" + ipfs-core-utils "^0.14.3" + ipfs-utils "^9.0.6" + it-first "^1.0.6" + it-last "^1.0.4" + merge-options "^3.0.4" + multiaddr "^10.0.0" + multiformats "^9.5.1" + parse-duration "^1.0.0" + stream-to-it "^0.2.2" + uint8arrays "^3.0.0" + +ipfs-unixfs@^6.0.3: + version "6.0.9" + resolved "https://registry.yarnpkg.com/ipfs-unixfs/-/ipfs-unixfs-6.0.9.tgz#f6613b8e081d83faa43ed96e016a694c615a9374" + integrity sha512-0DQ7p0/9dRB6XCb0mVCTli33GzIzSVx5udpJuVM47tGcD+W+Bl4LsnoLswd3ggNnNEakMv1FdoFITiEnchXDqQ== + dependencies: + err-code "^3.0.1" + protobufjs "^6.10.2" + +ipfs-utils@^9.0.6: + version "9.0.14" + resolved "https://registry.yarnpkg.com/ipfs-utils/-/ipfs-utils-9.0.14.tgz#24f5fda1f4567685eb32bca2543d518f95fd8704" + integrity sha512-zIaiEGX18QATxgaS0/EOQNoo33W0islREABAcxXE8n7y2MGAlB+hdsxXn4J0hGZge8IqVQhW8sWIb+oJz2yEvg== + dependencies: + any-signal "^3.0.0" + browser-readablestream-to-it "^1.0.0" + buffer "^6.0.1" + electron-fetch "^1.7.2" + err-code "^3.0.1" + is-electron "^2.2.0" + iso-url "^1.1.5" + it-all "^1.0.4" + it-glob "^1.0.1" + it-to-stream "^1.0.0" + merge-options "^3.0.4" + nanoid "^3.1.20" + native-fetch "^3.0.0" + node-fetch "^2.6.8" + react-native-fetch-api "^3.0.0" + stream-to-it "^0.2.2" + +is-arguments@^1.0.4: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" + integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-array-buffer@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" + integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.2.1" + +is-bigint@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-boolean-object@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-buffer@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + +is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== + +is-core-module@^2.13.0, is-core-module@^2.13.1: + version "2.13.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" + integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== + dependencies: + hasown "^2.0.0" + +is-date-object@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.0" + +is-electron@^2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/is-electron/-/is-electron-2.2.2.tgz#3778902a2044d76de98036f5dc58089ac4d80bb9" + integrity sha512-FO/Rhvz5tuw4MCWkpMzHFKWD2LsfHzIb7i6MdPYZ/KW7AlxawyLkqdy+jPZP1WubqEADE3O4FUENlJHDfQASRg== + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-function@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" + integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== + dependencies: + has-tostringtag "^1.0.0" + +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-ip@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-ip/-/is-ip-3.1.0.tgz#2ae5ddfafaf05cb8008a62093cf29734f657c5d8" + integrity sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q== + dependencies: + ip-regex "^4.0.0" + +is-loopback-addr@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-loopback-addr/-/is-loopback-addr-2.0.2.tgz#70a6668fa3555d47caebdcee045745ab80adf5e4" + integrity sha512-26POf2KRCno/KTNL5Q0b/9TYnL00xEsSaLfiFRmjM7m7Lw7ZMmFybzzuX4CcsLAluZGd+niLUiMRxEooVE3aqg== + +is-nan@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/is-nan/-/is-nan-1.3.2.tgz#043a54adea31748b55b6cd4e09aadafa69bd9e1d" + integrity sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + +is-negative-zero@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" + integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== + +is-number-object@^1.0.4: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" + integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== + dependencies: + has-tostringtag "^1.0.0" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-path-inside@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + +is-plain-obj@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== + +is-plain-obj@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" + integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== + +is-plain-object@^2.0.1: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + +is-regex@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-shared-array-buffer@^1.0.2, is-shared-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688" + integrity sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg== + dependencies: + call-bind "^1.0.7" + +is-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" + integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== + +is-string@^1.0.5, is-string@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== + dependencies: + has-tostringtag "^1.0.0" + +is-symbol@^1.0.2, is-symbol@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== + dependencies: + has-symbols "^1.0.2" + +is-typed-array@^1.1.13, is-typed-array@^1.1.3: + version "1.1.13" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229" + integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw== + dependencies: + which-typed-array "^1.1.14" + +is-weakref@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" + integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== + dependencies: + call-bind "^1.0.2" + +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== + +isarray@1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + +isarray@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" + integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +iso-random-stream@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/iso-random-stream/-/iso-random-stream-2.0.2.tgz#a24f77c34cfdad9d398707d522a6a0cc640ff27d" + integrity sha512-yJvs+Nnelic1L2vH2JzWvvPQFA4r7kSTnpST/+LkAQjSz0hos2oqLD+qIVi9Qk38Hoe7mNDt3j0S27R58MVjLQ== + dependencies: + events "^3.3.0" + readable-stream "^3.4.0" + +iso-url@^1.1.2, iso-url@^1.1.5: + version "1.2.1" + resolved "https://registry.yarnpkg.com/iso-url/-/iso-url-1.2.1.tgz#db96a49d8d9a64a1c889fc07cc525d093afb1811" + integrity sha512-9JPDgCN4B7QPkLtYAAOrEuAWvP9rWvR5offAr0/SeF046wIkglqH3VXgYYP6NcsKslH80UIVgmPqNe3j7tG2ng== + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== + +it-all@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/it-all/-/it-all-1.0.6.tgz#852557355367606295c4c3b7eff0136f07749335" + integrity sha512-3cmCc6Heqe3uWi3CVM/k51fa/XbMFpQVzFoDsV0IZNHSQDyAXl3c4MjHkFX5kF3922OGj7Myv1nSEUgRtcuM1A== + +it-all@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/it-all/-/it-all-2.0.1.tgz#45d530ecf6e13fb81d7ba583cdfd55ffdb376b05" + integrity sha512-9UuJcCRZsboz+HBQTNOau80Dw+ryGaHYFP/cPYzFBJBFcfDathMYnhHk4t52en9+fcyDGPTdLB+lFc1wzQIroA== + +it-batched-bytes@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/it-batched-bytes/-/it-batched-bytes-1.0.1.tgz#a3b12a10db24308c76a1126032af9184afc2dc63" + integrity sha512-ptBiZ0Mh3kJYySpG0pCS7JgvWhaAW1fGfKDVFtNIuNTA+bpSlXINvD5H3b14ZlJbnJFzFzRSCSZ10E1nH4z/WQ== + dependencies: + it-stream-types "^1.0.4" + p-defer "^4.0.0" + uint8arraylist "^2.4.1" + +it-drain@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/it-drain/-/it-drain-2.0.1.tgz#f50f6ce5cb8592a9d6337c9b5e780348877b152d" + integrity sha512-ESuHV6MLUNxuSy0vGZpKhSRjW0ixczN1FhbVy7eGJHjX6U2qiiXTyMvDc0z/w+nifOOwPyI5DT9Rc3o9IaGqEQ== + +it-filter@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/it-filter/-/it-filter-2.0.2.tgz#c849b3de4a12a2de3cc45be734ee55f69a0ed284" + integrity sha512-gocw1F3siqupegsOzZ78rAc9C+sYlQbI2af/TmzgdrR613MyEJHbvfwBf12XRekGG907kqXSOGKPlxzJa6XV1Q== + +it-first@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/it-first/-/it-first-1.0.7.tgz#a4bef40da8be21667f7d23e44dae652f5ccd7ab1" + integrity sha512-nvJKZoBpZD/6Rtde6FXqwDqDZGF1sCADmr2Zoc0hZsIvnE449gRFnGctxDf09Bzc/FWnHXAdaHVIetY6lrE0/g== + +it-first@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/it-first/-/it-first-2.0.1.tgz#75d66b254c385ae3a1906def060a69006a437cef" + integrity sha512-noC1oEQcWZZMUwq7VWxHNLML43dM+5bviZpfmkxkXlvBe60z7AFRqpZSga9uQBo792jKv9otnn1IjA4zwgNARw== + +it-first@^3.0.1: + version "3.0.4" + resolved "https://registry.yarnpkg.com/it-first/-/it-first-3.0.4.tgz#d68c8ae646ea402cd5e650c352da69988a310342" + integrity sha512-FtQl84iTNxN5EItP/JgL28V2rzNMkCzTUlNoj41eVdfix2z1DBuLnBqZ0hzYhGGa1rMpbQf0M7CQSA2adlrLJg== + +it-foreach@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/it-foreach/-/it-foreach-1.0.1.tgz#a4dab99c111457d1480bef6c4f9382076d9a6b81" + integrity sha512-eaVFhKxU+uwPs7+DKYxjuL6pj6c50/MBlAH+XPMgPWRRVIChVoyEIsdUQkkC0Ad6oTUmJbKRTnJxEY6o2aIs7A== + +it-glob@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/it-glob/-/it-glob-1.0.2.tgz#bab9b04d6aaac42884502f3a0bfee84c7a29e15e" + integrity sha512-Ch2Dzhw4URfB9L/0ZHyY+uqOnKvBNeS/SMcRiPmJfpHiM0TsUZn+GkpcZxAoF3dJVdPm/PuIk3A4wlV7SUo23Q== + dependencies: + "@types/minimatch" "^3.0.4" + minimatch "^3.0.4" + +it-handshake@^4.1.2, it-handshake@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/it-handshake/-/it-handshake-4.1.3.tgz#4e6650f8eff5cb3686c6861958645289fb3dc32a" + integrity sha512-V6Lt9A9usox9iduOX+edU1Vo94E6v9Lt9dOvg3ubFaw1qf5NCxXLi93Ao4fyCHWDYd8Y+DUhadwNtWVyn7qqLg== + dependencies: + it-pushable "^3.1.0" + it-reader "^6.0.1" + it-stream-types "^2.0.1" + p-defer "^4.0.0" + uint8arraylist "^2.0.0" + +it-last@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/it-last/-/it-last-1.0.6.tgz#4106232e5905ec11e16de15a0e9f7037eaecfc45" + integrity sha512-aFGeibeiX/lM4bX3JY0OkVCFkAw8+n9lkukkLNivbJRvNz8lI3YXv5xcqhFUV2lDJiraEK3OXRDbGuevnnR67Q== + +it-length-prefixed@^8.0.2, it-length-prefixed@^8.0.4: + version "8.0.4" + resolved "https://registry.yarnpkg.com/it-length-prefixed/-/it-length-prefixed-8.0.4.tgz#80bd356d93d77a8989a71200f8ca0860db040404" + integrity sha512-5OJ1lxH+IaqJB7lxe8IAIwt9UfSfsmjKJoAI/RO9djYoBDt1Jfy9PeVHUmOfqhqyu/4kJvWBFAJUaG1HhLQ12A== + dependencies: + err-code "^3.0.1" + it-stream-types "^1.0.4" + uint8-varint "^1.0.1" + uint8arraylist "^2.0.0" + uint8arrays "^4.0.2" + +it-length-prefixed@^9.0.0: + version "9.0.4" + resolved "https://registry.yarnpkg.com/it-length-prefixed/-/it-length-prefixed-9.0.4.tgz#8096c3270420fe8abaa920c7b4d5e5895144008e" + integrity sha512-lz28fykbG0jq7s5XtvlzGxO5BeSOw6ikymkRllxjL21V5VKLcvB4pHr9wPvEnsAJ2et1xpOk3BRTMq9XrhgKsg== + dependencies: + err-code "^3.0.1" + it-reader "^6.0.1" + it-stream-types "^2.0.1" + uint8-varint "^2.0.1" + uint8arraylist "^2.0.0" + uint8arrays "^5.0.1" + +it-map@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/it-map/-/it-map-1.0.6.tgz#6aa547e363eedcf8d4f69d8484b450bc13c9882c" + integrity sha512-XT4/RM6UHIFG9IobGlQPFQUrlEKkU4eBUFG3qhWhfAdh1JfF2x11ShCrKCdmZ0OiZppPfoLuzcfA4cey6q3UAQ== + +it-map@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/it-map/-/it-map-2.0.1.tgz#d5251fd6b222d6ee39293d406a3f8fce54fb9220" + integrity sha512-a2GcYDHiAh/eSU628xlvB56LA98luXZnniH2GlD0IdBzf15shEq9rBeb0Rg3o1SWtNILUAwqmQxEXcewGCdvmQ== + +it-merge@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/it-merge/-/it-merge-2.0.1.tgz#6137c63f0dbdcb3b8b74ec67549f2b3351c84da8" + integrity sha512-ItoBy3dPlNKnhjHR8e7nfabfZzH4Jy2OMPvayYH3XHy4YNqSVKmWTIxhz7KX4UMBsLChlIJZ+5j6csJgrYGQtw== + dependencies: + it-pushable "^3.1.0" + +it-merge@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/it-merge/-/it-merge-3.0.3.tgz#c7d407c8e0473accf7f9958ce2e0f60276002e84" + integrity sha512-FYVU15KC5pb/GQX1Ims+lee8d4pdqGVCpWr0lkNj8o4xuNo7jY71k6GuEiWdP+T7W1bJqewSxX5yoTy5yZpRVA== + dependencies: + it-pushable "^3.2.0" + +it-pair@^2.0.2: + version "2.0.6" + resolved "https://registry.yarnpkg.com/it-pair/-/it-pair-2.0.6.tgz#072defa6b96f611af34e0b0c84573107ddb9f28f" + integrity sha512-5M0t5RAcYEQYNG5BV7d7cqbdwbCAp5yLdzvkxsZmkuZsLbTdZzah6MQySYfaAQjNDCq6PUnDt0hqBZ4NwMfW6g== + dependencies: + it-stream-types "^2.0.1" + p-defer "^4.0.0" + +it-pb-stream@^3.2.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/it-pb-stream/-/it-pb-stream-3.2.1.tgz#58ad0b1268894d6eb05c17110e22326a33884a46" + integrity sha512-vKE04Zv5MUcwxPNE9bIEfYK3rd/Klj5ORGD1D8Bn5f0mbCLGfouSrqZP1Jntg2osqQg4BN5dKKS2BbfwyGUI3Q== + dependencies: + err-code "^3.0.1" + it-length-prefixed "^9.0.0" + it-pushable "^3.1.2" + it-stream-types "^1.0.4" + protons-runtime "^5.0.0" + uint8-varint "^1.0.6" + uint8arraylist "^2.0.0" + +it-peekable@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/it-peekable/-/it-peekable-1.0.3.tgz#8ebe933767d9c5aa0ae4ef8e9cb3a47389bced8c" + integrity sha512-5+8zemFS+wSfIkSZyf0Zh5kNN+iGyccN02914BY4w/Dj+uoFEoPSvj5vaWn8pNZJNSxzjW0zHRxC3LUb2KWJTQ== + +it-pipe@^2.0.3, it-pipe@^2.0.4, it-pipe@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/it-pipe/-/it-pipe-2.0.5.tgz#9caf7993dcbbc3824bc6ef64ee8b94574f65afa7" + integrity sha512-y85nW1N6zoiTnkidr2EAyC+ZVzc7Mwt2p+xt2a2ooG1ThFakSpNw1Kxm+7F13Aivru96brJhjQVRQNU+w0yozw== + dependencies: + it-merge "^2.0.0" + it-pushable "^3.1.0" + it-stream-types "^1.0.3" + +it-pipe@^3.0.0, it-pipe@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/it-pipe/-/it-pipe-3.0.1.tgz#b25720df82f4c558a8532602b5fbc37bbe4e7ba5" + integrity sha512-sIoNrQl1qSRg2seYSBH/3QxWhJFn9PKYvOf/bHdtCBF0bnghey44VyASsWzn5dAx0DCDDABq1hZIuzKmtBZmKA== + dependencies: + it-merge "^3.0.0" + it-pushable "^3.1.2" + it-stream-types "^2.0.1" + +it-pushable@^3.0.0, it-pushable@^3.1.0, it-pushable@^3.1.2, it-pushable@^3.1.3, it-pushable@^3.2.0, it-pushable@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/it-pushable/-/it-pushable-3.2.3.tgz#e2b80aed90cfbcd54b620c0a0785e546d4e5f334" + integrity sha512-gzYnXYK8Y5t5b/BnJUr7glfQLO4U5vyb05gPx/TyTw+4Bv1zM9gFk4YsOrnulWefMewlphCjKkakFvj1y99Tcg== + dependencies: + p-defer "^4.0.0" + +it-reader@^6.0.1: + version "6.0.4" + resolved "https://registry.yarnpkg.com/it-reader/-/it-reader-6.0.4.tgz#439cb88225dcd15116be0ffde9e846a928c3871a" + integrity sha512-XCWifEcNFFjjBHtor4Sfaj8rcpt+FkY0L6WdhD578SCDhV4VUm7fCkF3dv5a+fTcfQqvN9BsxBTvWbYO6iCjTg== + dependencies: + it-stream-types "^2.0.1" + uint8arraylist "^2.0.0" + +it-sort@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/it-sort/-/it-sort-2.0.1.tgz#37af025862f7adb30d7fc1f8520b3cd7ef219ef6" + integrity sha512-9f4jKOTHfxc/FJpg/wwuQ+j+88i+sfNGKsu2HukAKymm71/XDnBFtOAOzaimko3YIhmn/ERwnfEKrsYLykxw9A== + dependencies: + it-all "^2.0.0" + +it-stream-types@^1.0.2, it-stream-types@^1.0.3, it-stream-types@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/it-stream-types/-/it-stream-types-1.0.5.tgz#9c72e6adefdea9dac69d0a28fbea783deebd508d" + integrity sha512-I88Ka1nHgfX62e5mi5LLL+oueqz7Ltg0bUdtsUKDe9SoUqbQPf2Mp5kxDTe9pNhHQGs4pvYPAINwuZ1HAt42TA== + +it-stream-types@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/it-stream-types/-/it-stream-types-2.0.1.tgz#69cb4d7e79e707b8257a8997e02751ccb6c3af32" + integrity sha512-6DmOs5r7ERDbvS4q8yLKENcj6Yecr7QQTqWApbZdfAUTEC947d+PEha7PCqhm//9oxaLYL7TWRekwhoXl2s6fg== + +it-take@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/it-take/-/it-take-2.0.1.tgz#f9e5ddf0b73a18ba00e62fb532d9d3cde3fe4ce6" + integrity sha512-DL7kpZNjuoeSTnB9dMAJ0Z3m2T29LRRAU+HIgkiQM+1jH3m8l9e/1xpWs8JHTlbKivbqSFrQMTc8KVcaQNmsaA== + +it-to-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/it-to-stream/-/it-to-stream-1.0.0.tgz#6c47f91d5b5df28bda9334c52782ef8e97fe3a4a" + integrity sha512-pLULMZMAB/+vbdvbZtebC0nWBTbG581lk6w8P7DfIIIKUfa8FbY7Oi0FxZcFPbxvISs7A9E+cMpLDBc1XhpAOA== + dependencies: + buffer "^6.0.3" + fast-fifo "^1.0.0" + get-iterator "^1.0.2" + p-defer "^3.0.0" + p-fifo "^1.0.0" + readable-stream "^3.6.0" + +it-ws@^5.0.6: + version "5.0.6" + resolved "https://registry.yarnpkg.com/it-ws/-/it-ws-5.0.6.tgz#9b69ff2ef9d08fda18ef2db604acf972d0fedded" + integrity sha512-TEEJQaGtkxgP/nGVq8dq48nPT85Afu8kwwvtDFLj4rQLWRhZcb26RWdXLdn9qhXkWPiWbK5H7JWBW1Bebj/SuQ== + dependencies: + event-iterator "^2.0.0" + iso-url "^1.1.2" + it-stream-types "^1.0.2" + uint8arrays "^4.0.2" + ws "^8.4.0" + +iterall@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" + integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== + +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +"js-tokens@^3.0.0 || ^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.0.0.tgz#f426bc0ff4b4051926cd588c71113183409a121f" + integrity sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q== + dependencies: + argparse "^2.0.1" + +js-yaml@^4.0.0, js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + +jsbn@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040" + integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A== + +json-bigint@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-bigint/-/json-bigint-1.0.0.tgz#ae547823ac0cad8398667f8cd9ef4730f5b01ff1" + integrity sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ== + dependencies: + bignumber.js "^9.0.0" + +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + +json-diff@^0.5.4: + version "0.5.5" + resolved "https://registry.yarnpkg.com/json-diff/-/json-diff-0.5.5.tgz#24658ad200dbdd64ae8a56baf4d87b2b33d7196e" + integrity sha512-B2RSfPv8Y5iqm6/9aKC3cOhXPzjYupKDpGuqT5py9NRulL8J0UoB/zKXUo70xBsuxPcIFgtsGgEdXLrNp0GL7w== + dependencies: + cli-color "~0.1.6" + difflib "~0.2.1" + dreamopt "~0.6.0" + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== + +json5@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== + dependencies: + minimist "^1.2.0" + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +keyv@^4.5.3: + version "4.5.4" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + +left-pad@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" + integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== + +level-codec@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-10.0.0.tgz#f9e892770532c6cdcc83529546730791b0c62c12" + integrity sha512-QW3VteVNAp6c/LuV6nDjg7XDXx9XHK4abmQarxZmlRSDyXYk20UdaJTSX6yzVvQ4i0JyWSB7jert0DsyD/kk6g== + dependencies: + buffer "^6.0.3" + +level-concat-iterator@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-3.1.0.tgz#5235b1f744bc34847ed65a50548aa88d22e881cf" + integrity sha512-BWRCMHBxbIqPxJ8vHOvKUsaO0v1sLYZtjN3K2iZJsRBYtp+ONsY6Jfi6hy9K3+zolgQRryhIn2NRZjZnWJ9NmQ== + dependencies: + catering "^2.1.0" + +level-errors@^3.0.0, level-errors@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/level-errors/-/level-errors-3.0.1.tgz#4bed48a33108cd83b0e39fdf9bbd84e96fbbef9f" + integrity sha512-tqTL2DxzPDzpwl0iV5+rBCv65HWbHp6eutluHNcVIftKZlQN//b6GEnZDM2CvGZvzGYMwyPtYppYnydBQd2SMQ== + +level-iterator-stream@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-5.0.0.tgz#85b3438e1b4c54ce5aa8c0eb973cfb628117df9e" + integrity sha512-wnb1+o+CVFUDdiSMR/ZymE2prPs3cjVLlXuDeSq9Zb8o032XrabGEXcTCsBxprAtseO3qvFeGzh6406z9sOTRA== + dependencies: + inherits "^2.0.4" + readable-stream "^3.4.0" + +level-js@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/level-js/-/level-js-6.1.0.tgz#982ee9e583fca801aa75689c041995d0e7aab4ef" + integrity sha512-i7mPtkZm68aewfv0FnIUWvFUFfoyzIvVKnUmuQGrelEkP72vSPTaA1SGneWWoCV5KZJG4wlzbJLp1WxVNGuc6A== + dependencies: + abstract-leveldown "^7.2.0" + buffer "^6.0.3" + inherits "^2.0.3" + ltgt "^2.1.2" + run-parallel-limit "^1.1.0" + +level-packager@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-6.0.1.tgz#46b521e63df7f9728543f6792c0a8fe967e679a0" + integrity sha512-8Ezr0XM6hmAwqX9uu8IGzGNkWz/9doyPA8Oo9/D7qcMI6meJC+XhIbNYHukJhIn8OGdlzQs/JPcL9B8lA2F6EQ== + dependencies: + encoding-down "^7.1.0" + levelup "^5.1.1" + +level-supports@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-2.1.0.tgz#9af908d853597ecd592293b2fad124375be79c5f" + integrity sha512-E486g1NCjW5cF78KGPrMDRBYzPuueMZ6VBXHT6gC7A8UYWGiM14fGgp+s/L1oFfDWSPV/+SFkYCmZ0SiESkRKA== + +level-supports@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-4.0.1.tgz#431546f9d81f10ff0fea0e74533a0e875c08c66a" + integrity sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA== + +level-transcoder@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/level-transcoder/-/level-transcoder-1.0.1.tgz#f8cef5990c4f1283d4c86d949e73631b0bc8ba9c" + integrity sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w== + dependencies: + buffer "^6.0.3" + module-error "^1.0.1" + +level@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/level/-/level-7.0.1.tgz#05121748d95a4ff7355860d56eb5d0aa36faef2a" + integrity sha512-w3E64+ALx2eZf8RV5JL4kIcE0BFAvQscRYd1yU4YVqZN9RGTQxXSvH202xvK15yZwFFxRXe60f13LJjcJ//I4Q== + dependencies: + level-js "^6.1.0" + level-packager "^6.0.1" + leveldown "^6.1.0" + +level@^8.0.0: + version "8.0.1" + resolved "https://registry.yarnpkg.com/level/-/level-8.0.1.tgz#737161db1bc317193aca4e7b6f436e7e1df64379" + integrity sha512-oPBGkheysuw7DmzFQYyFe8NAia5jFLAgEnkgWnK3OXAuJr8qFT+xBQIwokAZPME2bhPFzS8hlYcL16m8UZrtwQ== + dependencies: + abstract-level "^1.0.4" + browser-level "^1.0.1" + classic-level "^1.2.0" + +leveldown@^6.1.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/leveldown/-/leveldown-6.1.1.tgz#0f0e480fa88fd807abf94c33cb7e40966ea4b5ce" + integrity sha512-88c+E+Eizn4CkQOBHwqlCJaTNEjGpaEIikn1S+cINc5E9HEvJ77bqY4JY/HxT5u0caWqsc3P3DcFIKBI1vHt+A== + dependencies: + abstract-leveldown "^7.2.0" + napi-macros "~2.0.0" + node-gyp-build "^4.3.0" + +levelup@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/levelup/-/levelup-5.1.1.tgz#9f99699f414ac084a3f8a28fc262a1f49cd7a52c" + integrity sha512-0mFCcHcEebOwsQuk00WJwjLI6oCjbBuEYdh/RaRqhjnyVlzqf41T1NnDtCedumZ56qyIh8euLFDqV1KfzTAVhg== + dependencies: + catering "^2.0.0" + deferred-leveldown "^7.0.0" + level-errors "^3.0.1" + level-iterator-stream "^5.0.0" + level-supports "^2.0.1" + queue-microtask "^1.2.3" + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + +lodash.debounce@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.sortby@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" + integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA== + +lodash@^4.17.15, lodash@^4.17.21, lodash@^4.17.4: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +log-symbols@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" + integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== + dependencies: + chalk "^4.0.0" + +loglevel@^1.6.8: + version "1.9.1" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.9.1.tgz#d63976ac9bcd03c7c873116d41c2a85bafff1be7" + integrity sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg== + +long@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" + integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== + +long@^5.0.0: + version "5.2.3" + resolved "https://registry.yarnpkg.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1" + integrity sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q== + +longbits@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/longbits/-/longbits-1.1.0.tgz#d6a7b2411dead1cf4b79ee4586816e65c7356ab9" + integrity sha512-22U2exkkYy7sr7nuQJYx2NEZ2kEMsC69+BxM5h8auLvkVIJa+LwAB5mFIExnuW2dFuYXFOWsFMKXjaWiq/htYQ== + dependencies: + byte-access "^1.0.1" + uint8arraylist "^2.0.0" + +loose-envify@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +loupe@^2.3.6: + version "2.3.7" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.7.tgz#6e69b7d4db7d3ab436328013d37d1c8c3540c697" + integrity sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA== + dependencies: + get-func-name "^2.0.1" + +"lru-cache@7.10.1 - 7.13.1": + version "7.13.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.13.1.tgz#267a81fbd0881327c46a81c5922606a2cfe336c4" + integrity sha512-CHqbAq7NFlW3RSnoWXLJBxCWaZVBrfa9UEHId2M3AW8iEBurbqduNexEUCGc3SHc6iCYXNJCDi903LajSVAEPQ== + +lru-cache@^10.0.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3" + integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q== + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +ltgt@^2.1.2: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5" + integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA== + +luxon@^3.2.1: + version "3.4.4" + resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.4.4.tgz#cf20dc27dc532ba41a169c43fdcc0063601577af" + integrity sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA== + +make-error@^1.1.1: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== + +merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== + +merge-options@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/merge-options/-/merge-options-3.0.4.tgz#84709c2aa2a4b24c1981f66c179fe5565cc6dbb7" + integrity sha512-2Sug1+knBjkaMsMgf1ctR1Ujx+Ayku4EdJN4Z+C2+JzoeF7A3OZ9KM2GY0CpQS51NR61LTurMJrRKPhSs3ZRTQ== + dependencies: + is-plain-obj "^2.1.0" + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +merge2@^1.3.0, merge2@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== + +micromatch@^4.0.2, micromatch@^4.0.4: + version "4.0.5" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== + dependencies: + braces "^3.0.2" + picomatch "^2.3.1" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@~2.1.24, mime-types@~2.1.34: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +mimic-fn@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" + integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== + +mini-queue@0.0.14: + version "0.0.14" + resolved "https://registry.yarnpkg.com/mini-queue/-/mini-queue-0.0.14.tgz#83d2f3f908e3cac5390bd986d1e6fbbfa0d95b93" + integrity sha512-DNh9Wn8U1jrmn1yVfpviwClyER/Y4ltgGbG+LF/KIdKJ8BEo2Q9jDDPG7tEhz6F/DTZ/ohv5D7AAXFVSFyP05Q== + dependencies: + debug "^3.1.0" + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +"minimatch@2 || 3", minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.2.0, minimist@^1.2.6: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +mkdirp@~0.5.1: + version "0.5.6" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== + dependencies: + minimist "^1.2.6" + +mocha@^8.4.0: + version "8.4.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.4.0.tgz#677be88bf15980a3cae03a73e10a0fc3997f0cff" + integrity sha512-hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ== + dependencies: + "@ungap/promise-all-settled" "1.1.2" + ansi-colors "4.1.1" + browser-stdout "1.3.1" + chokidar "3.5.1" + debug "4.3.1" + diff "5.0.0" + escape-string-regexp "4.0.0" + find-up "5.0.0" + glob "7.1.6" + growl "1.10.5" + he "1.2.0" + js-yaml "4.0.0" + log-symbols "4.0.0" + minimatch "3.0.4" + ms "2.1.3" + nanoid "3.1.20" + serialize-javascript "5.0.1" + strip-json-comments "3.1.1" + supports-color "8.1.1" + which "2.0.2" + wide-align "1.1.3" + workerpool "6.1.0" + yargs "16.2.0" + yargs-parser "20.2.4" + yargs-unparser "2.0.0" + +module-error@^1.0.1, module-error@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/module-error/-/module-error-1.0.2.tgz#8d1a48897ca883f47a45816d4fb3e3c6ba404d86" + integrity sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA== + +mokka@^1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/mokka/-/mokka-1.4.2.tgz#b0d7117e216672ff2deda6ef2212bcfa0edb8114" + integrity sha512-Vgki/Fr9fqUMZzChGC1yH64AQg+qkMdZZe3xKrTwYBVGEuq8j2GdnDg8voYXwWl+MLfNzWBnNiejq2xZ8PmojA== + dependencies: + bn.js "^5.2.0" + elliptic "^6.5.4" + +moment@^2.19.3: + version "2.30.1" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.30.1.tgz#f8c91c07b7a786e30c59926df530b4eac96974ae" + integrity sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how== + +mortice@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/mortice/-/mortice-3.0.4.tgz#34aadef768161e9dc49a7f73637b7858bcb7c6fa" + integrity sha512-MUHRCAztSl4v/dAmK8vbYi5u1n9NZtQu4H3FsqS7qgMFQIAFw9lTpHiErd9kJpapqmvEdD1L3dUmiikifAvLsQ== + dependencies: + observable-webworkers "^2.0.1" + p-queue "^8.0.1" + p-timeout "^6.0.0" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +ms@2.1.3, ms@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +multiaddr-to-uri@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/multiaddr-to-uri/-/multiaddr-to-uri-8.0.0.tgz#65efe4b1f9de5f6b681aa42ff36a7c8db7625e58" + integrity sha512-dq4p/vsOOUdVEd1J1gl+R2GFrXJQH8yjLtz4hodqdVbieg39LvBOdMQRdQnfbg5LSM/q1BYNVf5CBbwZFFqBgA== + dependencies: + multiaddr "^10.0.0" + +multiaddr@^10.0.0: + version "10.0.1" + resolved "https://registry.yarnpkg.com/multiaddr/-/multiaddr-10.0.1.tgz#0d15848871370860a4d266bb44d93b3dac5d90ef" + integrity sha512-G5upNcGzEGuTHkzxezPrrD6CaIHR9uo+7MwqhNVcXTs33IInon4y7nMiGxl2CY5hG7chvYQUQhz5V52/Qe3cbg== + dependencies: + dns-over-http-resolver "^1.2.3" + err-code "^3.0.1" + is-ip "^3.1.0" + multiformats "^9.4.5" + uint8arrays "^3.0.0" + varint "^6.0.0" + +multiformats@^11.0.0, multiformats@^11.0.2: + version "11.0.2" + resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-11.0.2.tgz#b14735efc42cd8581e73895e66bebb9752151b60" + integrity sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg== + +multiformats@^12.0.1: + version "12.1.3" + resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-12.1.3.tgz#cbf7a9861e11e74f8228b21376088cb43ba8754e" + integrity sha512-eajQ/ZH7qXZQR2AgtfpmSMizQzmyYVmCql7pdhldPuYQi4atACekbJaQplk6dWyIi10jCaFnd6pqvcEFXjbaJw== + +multiformats@^13.0.0, multiformats@^13.1.0: + version "13.1.0" + resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-13.1.0.tgz#5aa9d2175108a448fc3bdb54ba8a3d0b6cab3ac3" + integrity sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ== + +multiformats@^9.0.2, multiformats@^9.4.2, multiformats@^9.4.5, multiformats@^9.4.8, multiformats@^9.5.1, multiformats@^9.5.4: + version "9.9.0" + resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-9.9.0.tgz#c68354e7d21037a8f1f8833c8ccd68618e8f1d37" + integrity sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg== + +mv@~2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2" + integrity sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg== + dependencies: + mkdirp "~0.5.1" + ncp "~2.0.0" + rimraf "~2.4.0" + +mz@^2.4.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" + integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== + dependencies: + any-promise "^1.0.0" + object-assign "^4.0.1" + thenify-all "^1.0.0" + +nan@^2.14.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.19.0.tgz#bb58122ad55a6c5bc973303908d5b16cfdd5a8c0" + integrity sha512-nO1xXxfh/RWNxfd/XPfbIfFk5vgLsAxUR9y5O0cHMJu/AW9U95JLXqthYHjEp+8gQ5p96K9jUp8nbVOxCdRbtw== + +nanoid@3.1.20: + version "3.1.20" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.20.tgz#badc263c6b1dcf14b71efaa85f6ab4c1d6cfc788" + integrity sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw== + +nanoid@^3.0.2, nanoid@^3.1.20, nanoid@^3.1.23: + version "3.3.7" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" + integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== + +nanoid@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-4.0.2.tgz#140b3c5003959adbebf521c170f282c5e7f9fb9e" + integrity sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw== + +napi-macros@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.2.2.tgz#817fef20c3e0e40a963fbf7b37d1600bd0201044" + integrity sha512-hmEVtAGYzVQpCKdbQea4skABsdXW4RUh5t5mJ2zzqowJS2OyXZTU1KhDVFhx+NlWZ4ap9mqR9TcDO3LTTttd+g== + +napi-macros@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.0.0.tgz#2b6bae421e7b96eb687aa6c77a7858640670001b" + integrity sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg== + +native-fetch@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/native-fetch/-/native-fetch-3.0.0.tgz#06ccdd70e79e171c365c75117959cf4fe14a09bb" + integrity sha512-G3Z7vx0IFb/FQ4JxvtqGABsOTIqRWvgQz6e+erkB+JJD6LrszQtMozEHI4EkmgZQvnGHrpLVzUWk7t4sJCIkVw== + +native-fetch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/native-fetch/-/native-fetch-4.0.2.tgz#75c8a44c5f3bb021713e5e24f2846750883e49af" + integrity sha512-4QcVlKFtv2EYVS5MBgsGX5+NWKtbDbIECdUXDBGDMAZXq3Jkv9zf+y8iS7Ub8fEdga3GpYeazp9gauNqXHJOCg== + +natural-compare-lite@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" + integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== + +ncp@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" + integrity sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA== + +negotiator@0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== + +netmask@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" + integrity sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg== + +node-abort-controller@^3.0.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.1.1.tgz#a94377e964a9a37ac3976d848cb5c765833b8548" + integrity sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ== + +node-fetch@^2.6.12, node-fetch@^2.6.7, node-fetch@^2.6.8: + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + dependencies: + whatwg-url "^5.0.0" + +node-forge@^1.1.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" + integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== + +node-gyp-build@^4.3.0: + version "4.8.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.0.tgz#3fee9c1731df4581a3f9ead74664369ff00d26dd" + integrity sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og== + +noms@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/noms/-/noms-0.0.0.tgz#da8ebd9f3af9d6760919b27d9cdc8092a7332859" + integrity sha512-lNDU9VJaOPxUmXcLb+HQFeUgQQPtMI24Gt6hgfuMHRJgMRHMF/qZ4HJD3GDru4sSw9IQl2jPjAYnQrdIeLbwow== + dependencies: + inherits "^2.0.1" + readable-stream "~1.0.31" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^5.1.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.3.0.tgz#e23353d0ebb9317f174e93417e4a4d82d0249e9f" + integrity sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ== + dependencies: + path-key "^4.0.0" + +object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +object-inspect@^1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" + integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== + +object-is@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.6.tgz#1a6a53aed2dd8f7e6775ff870bea58545956ab07" + integrity sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + +object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@^4.1.4, object.assign@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" + integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== + dependencies: + call-bind "^1.0.5" + define-properties "^1.2.1" + has-symbols "^1.0.3" + object-keys "^1.1.1" + +object.fromentries@^2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.7.tgz#71e95f441e9a0ea6baf682ecaaf37fa2a8d7e616" + integrity sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +object.groupby@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.2.tgz#494800ff5bab78fd0eff2835ec859066e00192ec" + integrity sha512-bzBq58S+x+uo0VjurFT0UktpKHOZmv4/xePiOA1nbB9pMqpGK7rUPNgf+1YC+7mE+0HzhTMqNUuCqvKhj6FnBw== + dependencies: + array.prototype.filter "^1.0.3" + call-bind "^1.0.5" + define-properties "^1.2.1" + es-abstract "^1.22.3" + es-errors "^1.0.0" + +object.values@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.7.tgz#617ed13272e7e1071b43973aa1655d9291b8442a" + integrity sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +observable-webworkers@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/observable-webworkers/-/observable-webworkers-2.0.1.tgz#7d9086ebc567bd318b46ba0506b10cedf3813878" + integrity sha512-JI1vB0u3pZjoQKOK1ROWzp0ygxSi7Yb0iR+7UNsw4/Zn4cQ0P3R7XL38zac/Dy2tEA7Lg88/wIJTjF8vYXZ0uw== + +omit-deep@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/omit-deep/-/omit-deep-0.3.0.tgz#21c8af3499bcadd29651a232cbcacbc52445ebec" + integrity sha512-Lbl/Ma59sss2b15DpnWnGmECBRL8cRl/PjPbPMVW+Y8zIQzRrwMaI65Oy6HvxyhYeILVKBJb2LWeG81bj5zbMg== + dependencies: + is-plain-object "^2.0.1" + unset-value "^0.1.1" + +on-finished@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== + dependencies: + ee-first "1.1.1" + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +onetime@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" + integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== + dependencies: + mimic-fn "^4.0.0" + +optimism@^0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/optimism/-/optimism-0.18.0.tgz#e7bb38b24715f3fdad8a9a7fc18e999144bbfa63" + integrity sha512-tGn8+REwLRNFnb9WmcY5IfpOqeX2kpaYJ1s6Ae3mn12AeydLkR3j+jSCmVQFoXqU8D41PAJ1RG1rCRNWmNZVmQ== + dependencies: + "@wry/caches" "^1.0.0" + "@wry/context" "^0.7.0" + "@wry/trie" "^0.4.3" + tslib "^2.3.0" + +optionator@^0.9.3: + version "0.9.3" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" + integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== + dependencies: + "@aashutoshrathi/word-wrap" "^1.2.3" + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + +p-defer@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-3.0.0.tgz#d1dceb4ee9b2b604b1d94ffec83760175d4e6f83" + integrity sha512-ugZxsxmtTln604yeYd29EGrNhazN2lywetzpKhfmQjW/VJmhpDmWbiX+h0zL8V91R0UXkhb3KtPmyq9PZw3aYw== + +p-defer@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-4.0.0.tgz#8082770aeeb10eb6b408abe91866738741ddd5d2" + integrity sha512-Vb3QRvQ0Y5XnF40ZUWW7JfLogicVh/EnA5gBIvKDJoYpeI82+1E3AlB9yOcKFS0AhHrWVnAQO39fbR0G99IVEQ== + +p-event@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/p-event/-/p-event-5.0.1.tgz#614624ec02ae7f4f13d09a721c90586184af5b0c" + integrity sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ== + dependencies: + p-timeout "^5.0.2" + +p-fifo@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-fifo/-/p-fifo-1.0.0.tgz#e29d5cf17c239ba87f51dde98c1d26a9cfe20a63" + integrity sha512-IjoCxXW48tqdtDFz6fqo5q1UfFVjjVZe8TC1QRflvNUJtNfCUhxOUw6MOVZhDPjqhSzc26xKdugsO17gmzd5+A== + dependencies: + fast-fifo "^1.0.0" + p-defer "^3.0.0" + +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + +p-limit@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" + integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== + dependencies: + yocto-queue "^1.0.0" + +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + +p-queue@^7.2.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-7.4.1.tgz#7f86f853048beca8272abdbb7cec1ed2afc0f265" + integrity sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA== + dependencies: + eventemitter3 "^5.0.1" + p-timeout "^5.0.2" + +p-queue@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-8.0.1.tgz#718b7f83836922ef213ddec263ff4223ce70bef8" + integrity sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA== + dependencies: + eventemitter3 "^5.0.1" + p-timeout "^6.1.2" + +p-reflect@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-reflect/-/p-reflect-3.1.0.tgz#bba22747439b5fc50a7f626e8e909dc9b888218d" + integrity sha512-3sG3UlpisPSaX+o7u2q01hIQmrpkvdl5GSO1ZwL7pfc5kHB2bPF0eFNCfYTrW1/LTUdgmPwBAvmT0Zr8eSmaAQ== + +p-settle@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/p-settle/-/p-settle-5.1.1.tgz#9300778f896d5c01e4361b8ab45d003548574c3e" + integrity sha512-VLgSBpA71aMncPVP5Es4nhQYxcxN0lit8hGlobJke8YTAhtwdRDu/s4KePP5gCT5LFfZty3qosBFYMgD5rFpCg== + dependencies: + p-limit "^4.0.0" + p-reflect "^3.1.0" + +p-timeout@^5.0.2: + version "5.1.0" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-5.1.0.tgz#b3c691cf4415138ce2d9cfe071dba11f0fee085b" + integrity sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew== + +p-timeout@^6.0.0, p-timeout@^6.1.1, p-timeout@^6.1.2: + version "6.1.2" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-6.1.2.tgz#22b8d8a78abf5e103030211c5fc6dee1166a6aa5" + integrity sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ== + +packet-reader@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/packet-reader/-/packet-reader-1.0.0.tgz#9238e5480dedabacfe1fe3f2771063f164157d74" + integrity sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ== + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parent-require@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parent-require/-/parent-require-1.0.0.tgz#746a167638083a860b0eef6732cb27ed46c32977" + integrity sha512-2MXDNZC4aXdkkap+rBBMv0lUsfJqvX5/2FiYYnfCnorZt3Pk06/IOR5KeaoghgS2w07MLWgjbsnyaq6PdHn2LQ== + +parse-duration@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/parse-duration/-/parse-duration-1.1.0.tgz#5192084c5d8f2a3fd676d04a451dbd2e05a1819c" + integrity sha512-z6t9dvSJYaPoQq7quMzdEagSFtpGu+utzHqqxmpVWNNZRIXnvqyCvn9XsTdh7c/w0Bqmdz3RB3YnRaKtpRtEXQ== + +parse5-htmlparser2-tree-adapter@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz#2cdf9ad823321140370d4dbf5d3e92c7c8ddc6e6" + integrity sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA== + dependencies: + parse5 "^6.0.1" + +parse5@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" + integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug== + +parse5@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== + +parseurl@^1.3.3, parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +path-browserify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" + integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-key@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" + integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +pathval@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== + +pg-boss@^6.1.0: + version "6.2.2" + resolved "https://registry.yarnpkg.com/pg-boss/-/pg-boss-6.2.2.tgz#b33b6c99e53bcec201cc36bbaac69ebb6c09adf1" + integrity sha512-WA4cHCmN4RTOS7uCrGQ8n+Cc88tsgZXrp4U/iGUehgl2XcawSo2L5rm5bFvqX8YFcmrdsl8sh7ZDeKPWAAvOIQ== + dependencies: + cron-parser "^4.0.0" + delay "^5.0.0" + lodash.debounce "^4.0.8" + p-map "^4.0.0" + pg "^8.5.1" + uuid "^8.3.2" + +pg-cloudflare@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pg-cloudflare/-/pg-cloudflare-1.1.1.tgz#e6d5833015b170e23ae819e8c5d7eaedb472ca98" + integrity sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q== + +pg-connection-string@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.6.2.tgz#713d82053de4e2bd166fab70cd4f26ad36aab475" + integrity sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA== + +pg-int8@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c" + integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw== + +pg-pool@^3.6.1: + version "3.6.1" + resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.6.1.tgz#5a902eda79a8d7e3c928b77abf776b3cb7d351f7" + integrity sha512-jizsIzhkIitxCGfPRzJn1ZdcosIt3pz9Sh3V01fm1vZnbnCMgmGl5wvGGdNN2EL9Rmb0EcFoCkixH4Pu+sP9Og== + +pg-protocol@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.6.0.tgz#4c91613c0315349363af2084608db843502f8833" + integrity sha512-M+PDm637OY5WM307051+bsDia5Xej6d9IR4GwJse1qA1DIhiKlksvrneZOYQq42OM+spubpcNYEo2FcKQrDk+Q== + +pg-types@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-2.2.0.tgz#2d0250d636454f7cfa3b6ae0382fdfa8063254a3" + integrity sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA== + dependencies: + pg-int8 "1.0.1" + postgres-array "~2.0.0" + postgres-bytea "~1.0.0" + postgres-date "~1.0.4" + postgres-interval "^1.1.0" + +pg@^8.5.1: + version "8.11.3" + resolved "https://registry.yarnpkg.com/pg/-/pg-8.11.3.tgz#d7db6e3fe268fcedd65b8e4599cda0b8b4bf76cb" + integrity sha512-+9iuvG8QfaaUrrph+kpF24cXkH1YOOUeArRNYIxq1viYHZagBxrTno7cecY1Fa44tJeZvaoG+Djpkc3JwehN5g== + dependencies: + buffer-writer "2.0.0" + packet-reader "1.0.0" + pg-connection-string "^2.6.2" + pg-pool "^3.6.1" + pg-protocol "^1.6.0" + pg-types "^2.1.0" + pgpass "1.x" + optionalDependencies: + pg-cloudflare "^1.1.1" + +pgpass@1.x: + version "1.0.5" + resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.5.tgz#9b873e4a564bb10fa7a7dbd55312728d422a223d" + integrity sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug== + dependencies: + split2 "^4.1.0" + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +platform@^1.3.3: + version "1.3.6" + resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.6.tgz#48b4ce983164b209c2d45a107adb31f473a6e7a7" + integrity sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg== + +pluralize@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" + integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== + +possible-typed-array-names@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f" + integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q== + +postgres-array@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e" + integrity sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA== + +postgres-bytea@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz#027b533c0aa890e26d172d47cf9ccecc521acd35" + integrity sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w== + +postgres-date@~1.0.4: + version "1.0.7" + resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.7.tgz#51bc086006005e5061c591cee727f2531bf641a8" + integrity sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q== + +postgres-interval@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.2.0.tgz#b460c82cb1587507788819a06aa0fffdb3544695" + integrity sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ== + dependencies: + xtend "^4.0.0" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +private-ip@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/private-ip/-/private-ip-3.0.2.tgz#1daf6052ee5cee53238616a377d6be180e9490ef" + integrity sha512-2pkOVPGYD/4QyAg95c6E/4bLYXPthT5Xw4ocXYzIIsMBhskOMn6IwkWXmg6ZiA6K58+O6VD/n02r1hDhk7vDPw== + dependencies: + "@chainsafe/is-ip" "^2.0.1" + ip-regex "^5.0.0" + ipaddr.js "^2.1.0" + netmask "^2.0.2" + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +progress-events@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/progress-events/-/progress-events-1.0.0.tgz#34f5e8fdb5dae3561837b22672d1e02277bb2109" + integrity sha512-zIB6QDrSbPfRg+33FZalluFIowkbV5Xh1xSuetjG+rlC5he6u2dc6VQJ0TbMdlN3R1RHdpOqxEFMKTnQ+itUwA== + +prom-client@^14.0.1: + version "14.2.0" + resolved "https://registry.yarnpkg.com/prom-client/-/prom-client-14.2.0.tgz#ca94504e64156f6506574c25fb1c34df7812cf11" + integrity sha512-sF308EhTenb/pDRPakm+WgiN+VdM/T1RaHj1x+MvAuT8UiQP8JmOEbxVqtkbfR4LrvOg5n7ic01kRBDGXjYikA== + dependencies: + tdigest "^0.1.1" + +promjs@^0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/promjs/-/promjs-0.4.2.tgz#9c2b4a60e00c1a0ecb69a3c1c322d1cfb47a300d" + integrity sha512-qvHcTU9xwEieFOf2Qnf5JYPKkdJU2lRbJfJvJspw6XpnoH7VPmNfnJJnOLPfN8ODJMBLRt8wEPVjxyyn0Or6RQ== + +prop-types@^15.7.2: + version "15.8.1" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" + integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.13.1" + +protobufjs@^6.10.2, protobufjs@^6.11.2: + version "6.11.4" + resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.11.4.tgz#29a412c38bf70d89e537b6d02d904a6f448173aa" + integrity sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw== + dependencies: + "@protobufjs/aspromise" "^1.1.2" + "@protobufjs/base64" "^1.1.2" + "@protobufjs/codegen" "^2.0.4" + "@protobufjs/eventemitter" "^1.1.0" + "@protobufjs/fetch" "^1.1.0" + "@protobufjs/float" "^1.0.2" + "@protobufjs/inquire" "^1.1.0" + "@protobufjs/path" "^1.1.2" + "@protobufjs/pool" "^1.1.0" + "@protobufjs/utf8" "^1.1.0" + "@types/long" "^4.0.1" + "@types/node" ">=13.7.0" + long "^4.0.0" + +protobufjs@^7.0.0: + version "7.2.6" + resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-7.2.6.tgz#4a0ccd79eb292717aacf07530a07e0ed20278215" + integrity sha512-dgJaEDDL6x8ASUZ1YqWciTRrdOuYNzoOf27oHNfdyvKqHr5i0FV7FSLU+aIeFjyFgVxrpTOtQUi0BLLBymZaBw== + dependencies: + "@protobufjs/aspromise" "^1.1.2" + "@protobufjs/base64" "^1.1.2" + "@protobufjs/codegen" "^2.0.4" + "@protobufjs/eventemitter" "^1.1.0" + "@protobufjs/fetch" "^1.1.0" + "@protobufjs/float" "^1.0.2" + "@protobufjs/inquire" "^1.1.0" + "@protobufjs/path" "^1.1.2" + "@protobufjs/pool" "^1.1.0" + "@protobufjs/utf8" "^1.1.0" + "@types/node" ">=13.7.0" + long "^5.0.0" + +protons-runtime@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/protons-runtime/-/protons-runtime-4.0.2.tgz#a5670e703a5389dccb3700b583532e3316efcb94" + integrity sha512-R4N6qKHgz8T2Gl45CTcZfITzXPQY9ym8lbLb4VyFMS4ag1KusCRZwkQXTBRhxQ+93ck3K3aDhK1wIk98AMtNyw== + dependencies: + protobufjs "^7.0.0" + uint8arraylist "^2.4.3" + +protons-runtime@^5.0.0: + version "5.4.0" + resolved "https://registry.yarnpkg.com/protons-runtime/-/protons-runtime-5.4.0.tgz#2751ce22cae6c35eebba89acfd9d783419ae3726" + integrity sha512-XfA++W/WlQOSyjUyuF5lgYBfXZUEMP01Oh1C2dSwZAlF2e/ZrMRPfWonXj6BGM+o8Xciv7w0tsRMKYwYEuQvaw== + dependencies: + uint8-varint "^2.0.2" + uint8arraylist "^2.4.3" + uint8arrays "^5.0.1" + +proxy-addr@~2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== + dependencies: + forwarded "0.2.0" + ipaddr.js "1.9.1" + +punycode@^2.1.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== + +qs@6.11.0: + version "6.11.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" + integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== + dependencies: + side-channel "^1.0.4" + +queue-microtask@^1.2.2, queue-microtask@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +race-signal@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/race-signal/-/race-signal-1.0.2.tgz#e42379fba0cec4ee8dab7c9bbbd4aa6e0d14c25f" + integrity sha512-o3xNv0iTcIDQCXFlF6fPAMEBRjFxssgGoRqLbg06m+AdzEXXLUmoNOoUHTVz2NoBI8hHwKFKoC6IqyNtWr2bww== + +randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +rate-limiter-flexible@^2.3.11, rate-limiter-flexible@^2.3.9: + version "2.4.2" + resolved "https://registry.yarnpkg.com/rate-limiter-flexible/-/rate-limiter-flexible-2.4.2.tgz#2a219cc473f015142fd8fb599371223d730decbd" + integrity sha512-rMATGGOdO1suFyf/mI5LYhts71g1sbdhmd6YvdiXO2gJnd42Tt6QS4JUKJKSWVVkMtBacm6l40FR7Trjo6Iruw== + +raw-body@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" + integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== + dependencies: + bytes "3.1.2" + http-errors "2.0.0" + iconv-lite "0.4.24" + unpipe "1.0.0" + +react-is@^16.13.1, react-is@^16.7.0: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-native-fetch-api@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/react-native-fetch-api/-/react-native-fetch-api-3.0.0.tgz#81e1bb6562c292521bc4eca52fe1097f4c1ebab5" + integrity sha512-g2rtqPjdroaboDKTsJCTlcmtw54E25OjyaunUP0anOZn4Fuo2IKs8BVfe02zVggA/UysbmfSnRJIqtNkAgggNA== + dependencies: + p-defer "^3.0.0" + +readable-stream@^3.4.0, readable-stream@^3.6.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readable-stream@~1.0.31: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + integrity sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + +readdirp@~3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== + dependencies: + picomatch "^2.2.1" + +receptacle@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/receptacle/-/receptacle-1.3.2.tgz#a7994c7efafc7a01d0e2041839dab6c4951360d2" + integrity sha512-HrsFvqZZheusncQRiEE7GatOAETrARKV/lnfYicIm8lbvp/JQOdADOfhjBd2DajvoszEyxSM6RlAAIZgEoeu/A== + dependencies: + ms "^2.1.1" + +reflect-metadata@^0.1.13: + version "0.1.14" + resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.14.tgz#24cf721fe60677146bb77eeb0e1f9dece3d65859" + integrity sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A== + +regexp.prototype.flags@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" + integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== + dependencies: + call-bind "^1.0.6" + define-properties "^1.2.1" + es-errors "^1.3.0" + set-function-name "^2.0.1" + +regexpp@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + +rehackt@0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/rehackt/-/rehackt-0.0.6.tgz#7a0a2247f2295e7548915417e44fbbf03bf004f4" + integrity sha512-l3WEzkt4ntlEc/IB3/mF6SRgNHA6zfQR7BlGOgBTOmx7IJJXojDASav+NsgXHFjHn+6RmwqsGPFgZpabWpeOdw== + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve@^1.10.1, resolve@^1.22.4: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +response-iterator@^0.2.6: + version "0.2.6" + resolved "https://registry.yarnpkg.com/response-iterator/-/response-iterator-0.2.6.tgz#249005fb14d2e4eeb478a3f735a28fd8b4c9f3da" + integrity sha512-pVzEEzrsg23Sh053rmDUvLSkGXluZio0qu8VT6ukrYuvtjVfCbDZH9d6PGXb8HZfzdNZt8feXv/jvUzlhRgLnw== + +retimer@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/retimer/-/retimer-3.0.0.tgz#98b751b1feaf1af13eb0228f8ea68b8f9da530df" + integrity sha512-WKE0j11Pa0ZJI5YIk0nflGI7SQsfl2ljihVy7ogh7DeQSeYAUi0ubZ/yEueGtDfUPk6GH5LRw1hBdLq4IwUBWA== + +retry@0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" + integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== + +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +rimraf@~2.4.0: + version "2.4.5" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" + integrity sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ== + dependencies: + glob "^6.0.1" + +run-parallel-limit@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/run-parallel-limit/-/run-parallel-limit-1.1.0.tgz#be80e936f5768623a38a963262d6bef8ff11e7ba" + integrity sha512-jJA7irRNM91jaKc3Hcl1npHsFLOXOoTkPCUL1JEa1R82O2miplXXRaGdjW/KM/98YQWDhJLiSs793CnXfblJUw== + dependencies: + queue-microtask "^1.2.2" + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +safe-array-concat@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb" + integrity sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q== + dependencies: + call-bind "^1.0.7" + get-intrinsic "^1.2.4" + has-symbols "^1.0.3" + isarray "^2.0.5" + +safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-json-stringify@~1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd" + integrity sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg== + +safe-regex-test@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" + integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + is-regex "^1.1.4" + +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sanitize-filename@^1.6.3: + version "1.6.3" + resolved "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378" + integrity sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg== + dependencies: + truncate-utf8-bytes "^1.0.0" + +sax@>=0.6.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.3.0.tgz#a5dbe77db3be05c9d1ee7785dbd3ea9de51593d0" + integrity sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA== + +scrypt-js@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +semver@^6.1.0, semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +semver@^7.3.7: + version "7.6.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" + integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== + dependencies: + lru-cache "^6.0.0" + +send@0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== + dependencies: + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "2.0.0" + mime "1.6.0" + ms "2.1.3" + on-finished "2.4.1" + range-parser "~1.2.1" + statuses "2.0.1" + +serialize-javascript@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" + integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== + dependencies: + randombytes "^2.1.0" + +serve-static@1.15.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" + integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.18.0" + +set-delayed-interval@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/set-delayed-interval/-/set-delayed-interval-1.0.0.tgz#1f7c065780a365f10250f8a80e2be10175ea0388" + integrity sha512-29fhAwuZlLcuBnW/EwxvLcg2D3ELX+VBDNhnavs3YYkab72qmrcSeQNVdzl8EcPPahGQXhBM6MKdPLCQGMDakw== + +set-function-length@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + +set-function-name@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + functions-have-names "^1.2.3" + has-property-descriptors "^1.0.2" + +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +sha.js@^2.4.11: + version "2.4.11" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +side-channel@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" + integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + object-inspect "^1.13.1" + +signal-exit@^3.0.7: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +split2@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" + integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg== + +sprintf-js@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673" + integrity sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug== + +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== + +stream-to-it@^0.2.2: + version "0.2.4" + resolved "https://registry.yarnpkg.com/stream-to-it/-/stream-to-it-0.2.4.tgz#d2fd7bfbd4a899b4c0d6a7e6a533723af5749bd0" + integrity sha512-4vEbkSs83OahpmBybNJXlJd7d6/RxzkkSdT3I0mnGt79Xd2Kk+e1JqbvAvsQfCeKj3aKb0QIWkyK3/n0j506vQ== + dependencies: + get-iterator "^1.0.2" + +"string-width@^1.0.2 || 2": + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string.prototype.trim@^1.2.8: + version "1.2.8" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd" + integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +string.prototype.trimend@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz#1bb3afc5008661d73e2dc015cd4853732d6c471e" + integrity sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +string.prototype.trimstart@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz#d4cdb44b83a4737ffbac2d406e405d43d0184298" + integrity sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow== + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== + +strip-final-newline@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" + integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== + +strip-json-comments@3.1.1, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +supports-color@8.1.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +symbol-observable@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-4.0.0.tgz#5b425f192279e87f2f9b937ac8540d1984b39205" + integrity sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ== + +tdigest@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/tdigest/-/tdigest-0.1.2.tgz#96c64bac4ff10746b910b0e23b515794e12faced" + integrity sha512-+G0LLgjjo9BZX2MfdvPfH+MKLCrxlXSYec5DaPYP1fe6Iyhf0/fSmJ0bFiZ1F8BT6cGXl2LpltQptzjXKWEkKA== + dependencies: + bintrees "1.0.2" + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== + +thenify-all@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" + integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA== + dependencies: + thenify ">= 3.1.0 < 4" + +"thenify@>= 3.1.0 < 4": + version "3.3.1" + resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f" + integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw== + dependencies: + any-promise "^1.0.0" + +through2@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +timeout-abort-controller@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/timeout-abort-controller/-/timeout-abort-controller-3.0.0.tgz#dd57ffca041652c03769904f8d95afd93fb95595" + integrity sha512-O3e+2B8BKrQxU2YRyEjC/2yFdb33slI22WRdUaDx6rvysfi9anloNZyR2q0l6LnePo5qH7gSM7uZtvvwZbc2yA== + dependencies: + retimer "^3.0.0" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +toidentifier@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== + +toml@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" + integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== + +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== + +truncate-utf8-bytes@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b" + integrity sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ== + dependencies: + utf8-byte-length "^1.0.1" + +ts-essentials@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-7.0.3.tgz#686fd155a02133eedcc5362dc8b5056cde3e5a38" + integrity sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ== + +ts-invariant@^0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/ts-invariant/-/ts-invariant-0.10.3.tgz#3e048ff96e91459ffca01304dbc7f61c1f642f6c" + integrity sha512-uivwYcQaxAucv1CzRp2n/QdYPo4ILf9VXgH19zEIjFx2EJufV16P0JtJVpYHy89DItG6Kwj2oIUjrcK5au+4tQ== + dependencies: + tslib "^2.1.0" + +ts-node@^10.2.1: + version "10.9.2" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.2.tgz#70f021c9e185bccdca820e26dc413805c101c71f" + integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== + dependencies: + "@cspotcode/source-map-support" "^0.8.0" + "@tsconfig/node10" "^1.0.7" + "@tsconfig/node12" "^1.0.7" + "@tsconfig/node14" "^1.0.0" + "@tsconfig/node16" "^1.0.2" + acorn "^8.4.1" + acorn-walk "^8.1.1" + arg "^4.1.0" + create-require "^1.1.0" + diff "^4.0.1" + make-error "^1.1.1" + v8-compile-cache-lib "^3.0.1" + yn "3.1.1" + +tsconfig-paths@^3.15.0: + version "3.15.0" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4" + integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.2" + minimist "^1.2.6" + strip-bom "^3.0.0" + +tslib@^1.8.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-detect@^4.0.0, type-detect@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + +type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typed-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz#1867c5d83b20fcb5ccf32649e5e2fc7424474ff3" + integrity sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + is-typed-array "^1.1.13" + +typed-array-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz#d92972d3cff99a3fa2e765a28fcdc0f1d89dec67" + integrity sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + +typed-array-byte-offset@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz#f9ec1acb9259f395093e4567eb3c28a580d02063" + integrity sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + +typed-array-length@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.5.tgz#57d44da160296d8663fd63180a1802ebf25905d5" + integrity sha512-yMi0PlwuznKHxKmcpoOdeLwxBoVPkqZxd7q2FgMkmD3bNwvF5VW0+UlUQ1k1vmktTu4Yu13Q0RIxEP8+B+wloA== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" + +typeorm-naming-strategies@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/typeorm-naming-strategies/-/typeorm-naming-strategies-2.0.0.tgz#c7c10bc768ddce2592ef9ad4d2dca55fd5fa6ad6" + integrity sha512-nsJ5jDjhBBEG6olFmxojkO4yrW7hEv38sH7ZXWWx9wnDoo9uaoH/mo2mBYAh/VKgwoFHBLu+CYxGmzXz2GUMcA== + +typeorm@0.2.37: + version "0.2.37" + resolved "https://registry.yarnpkg.com/typeorm/-/typeorm-0.2.37.tgz#1a5e59216077640694d27c04c99ed3f968d15dc8" + integrity sha512-7rkW0yCgFC24I5T0f3S/twmLSuccPh1SQmxET/oDWn2sSDVzbyWdnItSdKy27CdJGTlKHYtUVeOcMYw5LRsXVw== + dependencies: + "@sqltools/formatter" "^1.2.2" + app-root-path "^3.0.0" + buffer "^6.0.3" + chalk "^4.1.0" + cli-highlight "^2.1.11" + debug "^4.3.1" + dotenv "^8.2.0" + glob "^7.1.6" + js-yaml "^4.0.0" + mkdirp "^1.0.4" + reflect-metadata "^0.1.13" + sha.js "^2.4.11" + tslib "^2.1.0" + xml2js "^0.4.23" + yargonaut "^1.1.4" + yargs "^17.0.1" + zen-observable-ts "^1.0.0" + +typescript@^5.0.2: + version "5.4.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.2.tgz#0ae9cebcfae970718474fe0da2c090cad6577372" + integrity sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ== + +uint8-varint@^1.0.1, uint8-varint@^1.0.2, uint8-varint@^1.0.6: + version "1.0.8" + resolved "https://registry.yarnpkg.com/uint8-varint/-/uint8-varint-1.0.8.tgz#3f6c268e4c1a1ece232f660ec37729faca7cc7d0" + integrity sha512-QS03THS87Wlc0fBCC3xP5sqScDwfvVZLUrTCeMAQbQxQUWJosPC7C8uTNhpVUEgpTbV1Ut2Fer9Se3kI1KbnlQ== + dependencies: + byte-access "^1.0.0" + longbits "^1.1.0" + uint8arraylist "^2.0.0" + uint8arrays "^4.0.2" + +uint8-varint@^2.0.1, uint8-varint@^2.0.2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/uint8-varint/-/uint8-varint-2.0.4.tgz#85be52b3849eb30f2c3640a2df8a14364180affb" + integrity sha512-FwpTa7ZGA/f/EssWAb5/YV6pHgVF1fViKdW8cWaEarjB8t7NyofSWBdOTyFPaGuUG4gx3v1O3PQ8etsiOs3lcw== + dependencies: + uint8arraylist "^2.0.0" + uint8arrays "^5.0.0" + +uint8arraylist@^2.0.0, uint8arraylist@^2.1.0, uint8arraylist@^2.1.1, uint8arraylist@^2.1.2, uint8arraylist@^2.3.1, uint8arraylist@^2.3.2, uint8arraylist@^2.4.1, uint8arraylist@^2.4.3, uint8arraylist@^2.4.8: + version "2.4.8" + resolved "https://registry.yarnpkg.com/uint8arraylist/-/uint8arraylist-2.4.8.tgz#5a4d17f4defd77799cb38e93fd5db0f0dceddc12" + integrity sha512-vc1PlGOzglLF0eae1M8mLRTBivsvrGsdmJ5RbK3e+QRvRLOZfZhQROTwH/OfyF3+ZVUg9/8hE8bmKP2CvP9quQ== + dependencies: + uint8arrays "^5.0.1" + +uint8arrays@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/uint8arrays/-/uint8arrays-3.1.1.tgz#2d8762acce159ccd9936057572dade9459f65ae0" + integrity sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg== + dependencies: + multiformats "^9.4.2" + +uint8arrays@^4.0.2, uint8arrays@^4.0.3, uint8arrays@^4.0.6: + version "4.0.10" + resolved "https://registry.yarnpkg.com/uint8arrays/-/uint8arrays-4.0.10.tgz#3ec5cde3348903c140e87532fc53f46b8f2e921f" + integrity sha512-AnJNUGGDJAgFw/eWu/Xb9zrVKEGlwJJCaeInlf3BkecE/zcTobk5YXYIPNQJO1q5Hh1QZrQQHf0JvcHqz2hqoA== + dependencies: + multiformats "^12.0.1" + +uint8arrays@^5.0.0, uint8arrays@^5.0.1, uint8arrays@^5.0.2: + version "5.0.3" + resolved "https://registry.yarnpkg.com/uint8arrays/-/uint8arrays-5.0.3.tgz#92b894d9c4269ba97c51544d6e1f279fe6f80d1f" + integrity sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ== + dependencies: + multiformats "^13.0.0" + +unbox-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" + integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== + dependencies: + call-bind "^1.0.2" + has-bigints "^1.0.2" + has-symbols "^1.0.3" + which-boxed-primitive "^1.0.2" + +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== + +undici@^5.12.0: + version "5.28.3" + resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.3.tgz#a731e0eff2c3fcfd41c1169a869062be222d1e5b" + integrity sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA== + dependencies: + "@fastify/busboy" "^2.0.0" + +unique-names-generator@^4.7.1: + version "4.7.1" + resolved "https://registry.yarnpkg.com/unique-names-generator/-/unique-names-generator-4.7.1.tgz#966407b12ba97f618928f77322cfac8c80df5597" + integrity sha512-lMx9dX+KRmG8sq6gulYYpKWZc9RlGsgBR6aoO8Qsm3qvkSJ+3rAymr+TnV8EDMrIrwuFJ4kruzMWM/OpYzPoow== + +universalify@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" + integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== + +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== + +unset-value@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-0.1.2.tgz#506810b867f27c2a5a6e9b04833631f6de58d310" + integrity sha512-yhv5I4TsldLdE3UcVQn0hD2T5sNCPv4+qm/CTUpRKIpwthYRIipsAPdsrNpOI79hPQa0rTTeW22Fq6JWRcTgNg== + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +utf8-byte-length@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61" + integrity sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA== + +util-deprecate@^1.0.1, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +util@^0.12.5: + version "0.12.5" + resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" + integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA== + dependencies: + inherits "^2.0.3" + is-arguments "^1.0.4" + is-generator-function "^1.0.7" + is-typed-array "^1.1.3" + which-typed-array "^1.1.2" + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== + +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +uuid@^9.0.0: + version "9.0.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" + integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== + +v8-compile-cache-lib@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== + +value-or-promise@1.0.11: + version "1.0.11" + resolved "https://registry.yarnpkg.com/value-or-promise/-/value-or-promise-1.0.11.tgz#3e90299af31dd014fe843fe309cefa7c1d94b140" + integrity sha512-41BrgH+dIbCFXClcSapVs5M6GkENd3gQOJpEfPDNa71LsUGMXDL0jMWpI/Rh7WhX+Aalfz2TTS3Zt5pUsbnhLg== + +value-or-promise@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/value-or-promise/-/value-or-promise-1.0.12.tgz#0e5abfeec70148c78460a849f6b003ea7986f15c" + integrity sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q== + +varint@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/varint/-/varint-6.0.0.tgz#9881eb0ce8feaea6512439d19ddf84bf551661d0" + integrity sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg== + +vary@^1, vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== + +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== + +whatwg-mimetype@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz#5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7" + integrity sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q== + +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + +wherearewe@^2.0.0, wherearewe@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/wherearewe/-/wherearewe-2.0.1.tgz#37c97a7bf112dca8db34bfefb2f6c997af312bb8" + integrity sha512-XUguZbDxCA2wBn2LoFtcEhXL6AXo+hVjGonwhSTTTU9SzbWG8Xu3onNIpzf9j/mYUcJQ0f+m37SzG77G851uFw== + dependencies: + is-electron "^2.2.0" + +which-boxed-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== + dependencies: + is-bigint "^1.0.1" + is-boolean-object "^1.1.0" + is-number-object "^1.0.4" + is-string "^1.0.5" + is-symbol "^1.0.3" + +which-typed-array@^1.1.14, which-typed-array@^1.1.2: + version "1.1.15" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d" + integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-tostringtag "^1.0.2" + +which@2.0.2, which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wide-align@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== + dependencies: + string-width "^1.0.2 || 2" + +wordwrap@>=0.0.2: + version "1.0.0" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== + +workerpool@6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.1.0.tgz#a8e038b4c94569596852de7a8ea4228eefdeb37b" + integrity sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg== + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + +ws@^8.11.0, ws@^8.12.1, ws@^8.4.0: + version "8.16.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.16.0.tgz#d1cd774f36fbc07165066a60e40323eab6446fd4" + integrity sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ== + +xml2js@^0.4.23: + version "0.4.23" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" + integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug== + dependencies: + sax ">=0.6.0" + xmlbuilder "~11.0.0" + +xml2js@^0.6.0, xml2js@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.6.2.tgz#dd0b630083aa09c161e25a4d0901e2b2a929b499" + integrity sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA== + dependencies: + sax ">=0.6.0" + xmlbuilder "~11.0.0" + +xmlbuilder@~11.0.0: + version "11.0.1" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" + integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== + +xsalsa20@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/xsalsa20/-/xsalsa20-1.2.0.tgz#e5a05cb26f8cef723f94a559102ed50c1b44c25c" + integrity sha512-FIr/DEeoHfj7ftfylnoFt3rAIRoWXpx2AoDfrT2qD2wtp7Dp+COajvs/Icb7uHqRW9m60f5iXZwdsJJO3kvb7w== + +xss@^1.0.8: + version "1.0.15" + resolved "https://registry.yarnpkg.com/xss/-/xss-1.0.15.tgz#96a0e13886f0661063028b410ed1b18670f4e59a" + integrity sha512-FVdlVVC67WOIPvfOwhoMETV72f6GbW7aOabBC3WxN/oUdoEMDyLz4OgRv5/gck2ZeNqEQu+Tb0kloovXOfpYVg== + dependencies: + commander "^2.20.3" + cssfilter "0.0.10" + +xtend@^4.0.0, xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yargonaut@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/yargonaut/-/yargonaut-1.1.4.tgz#c64f56432c7465271221f53f5cc517890c3d6e0c" + integrity sha512-rHgFmbgXAAzl+1nngqOcwEljqHGG9uUZoPjsdZEs1w5JW9RXYzrSvH/u70C1JE5qFi0qjsdhnUX/dJRpWqitSA== + dependencies: + chalk "^1.1.1" + figlet "^1.1.1" + parent-require "^1.0.0" + +yargs-parser@20.2.4: + version "20.2.4" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" + integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== + +yargs-parser@^20.2.2: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== + +yargs-unparser@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" + integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== + dependencies: + camelcase "^6.0.0" + decamelize "^4.0.0" + flat "^5.0.2" + is-plain-obj "^2.1.0" + +yargs@16.2.0, yargs@^16.0.0, yargs@^16.1.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yargs@^17.0.1: + version "17.7.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== + dependencies: + cliui "^8.0.1" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.3" + y18n "^5.0.5" + yargs-parser "^21.1.1" + +yn@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" + integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== + +yocto-queue@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.0.0.tgz#7f816433fb2cbc511ec8bf7d263c3b58a1a3c251" + integrity sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g== + +zen-observable-ts@^1.0.0, zen-observable-ts@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/zen-observable-ts/-/zen-observable-ts-1.1.0.tgz#2d1aa9d79b87058e9b75698b92791c1838551f83" + integrity sha512-1h4zlLSqI2cRLPJUHJFL8bCWHhkpuXkF+dbGkRaWjgDIG26DmzyshUMrdV/rL3UnR+mhaX4fRq8LPouq0MYYIA== + dependencies: + "@types/zen-observable" "0.8.3" + zen-observable "0.8.15" + +zen-observable-ts@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/zen-observable-ts/-/zen-observable-ts-1.2.5.tgz#6c6d9ea3d3a842812c6e9519209365a122ba8b58" + integrity sha512-QZWQekv6iB72Naeake9hS1KxHlotfRpe+WGNbNx5/ta+R3DNjVO2bswf63gXlWDcs+EMd7XY8HfVQyP1X6T4Zg== + dependencies: + zen-observable "0.8.15" + +zen-observable@0.8.15: + version "0.8.15" + resolved "https://registry.yarnpkg.com/zen-observable/-/zen-observable-0.8.15.tgz#96415c512d8e3ffd920afd3889604e30b9eaac15" + integrity sha512-PQ2PC7R9rslx84ndNBZB/Dkv8V8fZEpk83RLgXtYd0fwUgEjseMn1Dgajh2x6S8QbZAFa9p2qVCEuYZNgve0dQ==